JannisX11 / blockbench

Blockbench - A low poly 3D model editor
https://www.blockbench.net
GNU General Public License v3.0
3.13k stars 277 forks source link

[Suggestion] Sprite Sheet based on layers #2143

Open Raiguri opened 7 months ago

Raiguri commented 7 months ago

Detailed description of your suggestion

Function

Create a function that exports a sprite sheet using layers.

Sprite Sheet is an image that consists of several smaller images. Combining small images(frames/sprites) into one big image "grid"(sprite sheet).

Explanation

For example we have an image where character parts (Also it can be used for sprite sheet animation of character) are on separate layers. image

When we use a sprite sheet function we can see the dialog where we can adjust settings for your sprite sheet. image

We can change this settings (Also it would nice to preview what we are changing):

Layout:

Sheet types: Horizontal strip(Each frame side by side); Vertical strip(Each frame one below the other); by Rows(create one row for each layer); by Columns(create one column for each layer) and Packed(try to fit all frames in the best possible way) (How sheet is created) Constraints: none; fixed width; fixed height; fixed size. (Special constraints for the sprite sheet. E.g. fixed number of rows/columns or fixed number of pixels width/height)

Flags:

Borders:

Border Padding (Space between each frame and the edge of the sprite sheet) Spacing (Space between each frame in the sprite sheet) Inner Padding (Extra space inside frame edges)

Flags:

Result

When we press the export button blockbench will open another project with the ready sprite sheet image. Based on your settings you will have an result, for example: image