gliscowo / isometric-renders

Creates high-resolution isometric screenshots of Minecraft's game objects
https://modrinth.com/mod/isometric-renders
MIT License
109 stars 13 forks source link

[Feature Request] The "Inventory View" render task argument for the batch render #85

Closed AsseyGithub closed 9 months ago

AsseyGithub commented 9 months ago

(Note: This suggestion was written by a translator, so some semantics may be imprecise.)

I suggest adding "batch inventory_view" to the render task arguments for batch render. (e.g. /isorender creative_tab minecraft:building_blocks batch inventory_view) This method allows you to batch output individual items the way they are rendered in your inventory.

There are currently three render job arguments for batch rendering: Block Batch, Item Batch, and Atlas. 2023-11-22_22 14 33

Block Batch renders only the blocks in the given list of items in block form.

Item Batch will render 2D items in 2D and other items in 3D modeling. This is quite similar to how they look when rendered within the Inventory, but not identical. (e.g. Dispensers face to the right within the Inventory, but face to the left in the Item Batch render) 2023-11-22_22 15 12

And finally, the Atlas renders items exactly the same way they are rendered in the Inventory. The problem is, however, that the Atlas way is not intended to render individual items. Atlas can't generate individual images in the same way as batch controls, it can only output an overview of one image. 2023-11-22_22 15 27

The "batch inventory_view" argument exports images for each items separately like other Batch arguments, and renders them in the way Atlas does. Currently, you have to manually crop the atlas image to get individual inventory view item images, which is very cumbersome. The addition of "batch inventory_view" will make this process very simple.

gliscowo commented 9 months ago

I've now changed behavior in the latest build, 0.4.6, to simply always use the inventory transform - that should've been the way it worked from the beginning. I had simply not properly implemented this before as there are some subtleties to how Minecraft handles this, but it should now deal with far more items properly than was previously the case

Cheers