Posted November 1, 20169 yr I have a block with a model which is supposed to look like a water block (partially transparent) with a crop (opaque) inside it. But I can't get it to render how I want it to. When I use the CUTOUT BlockRenderLayer , it looks as expected with the water element fully opaque, obviously: When I use the TRANSPARENT layer, some weird things happen with the different faces of the opaque and transparent elements. The crop is glitched so it doesn't look like it's sticking out of the water the correct amount (which you can see in the opaque render above). The glitch varies depending on what angle you view the block from. Here is the json file for the model in case that's useful: { "textures": { "rice": "jjmod:blocks/plants/rice", "water": "jjmod:blocks/plants/water", "particle": "jjmod:blocks/plants/rice" }, "elements": [ { "from": [ 4, 0, 0 ], "to": [ 4, 16, 16 ], "faces": { "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 12, 0, 0 ], "to": [ 12, 16, 16 ], "faces": { "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 0, 0, 4 ], "to": [ 16, 16, 4 ], "faces": { "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 0, 0, 12 ], "to": [ 16, 16, 12 ], "faces": { "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 0, 0, 0 ], "to": [ 16, 14, 16 ], "faces": { "down": { "texture": "#water" }, "up": { "texture": "#water" }, "north": { "texture": "#water" }, "south": { "texture": "#water" }, "west": { "texture": "#water" }, "east": { "texture": "#water" } } } ] } Is there anything I can do to fix this, or is it just a limitation of Minecraft's rendering process? Edit: Solved using a forge:multi-layer model as Choonster suggested. In case it helps anyone else, my blockstates file: { "forge_marker": 1, "defaults": { "model": "forge:multi-layer", "transform": "forge:default-block" }, "variants": { "normal": [{ "custom": { "base": "jjmod:test#base", "Mipped Cutout": "jjmod:test#base", "Translucent": "jjmod:test#trans" } }], "base": [{ "model": "jjmod:testRice" }], "trans": [{ "model": "jjmod:testTranslucent" }] } } And the two model files, the crop (rendered on the mipped cutout layer): { "textures": { "rice": "jjmod:blocks/plants/rice", "particle": "jjmod:blocks/plants/rice" }, "elements": [ { "from": [ 4, 0, 0 ], "to": [ 4, 16, 16 ], "faces": { "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 12, 0, 0 ], "to": [ 12, 16, 16 ], "faces": { "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 0, 0, 4 ], "to": [ 16, 16, 4 ], "faces": { "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } }, { "from": [ 0, 0, 12 ], "to": [ 16, 16, 12 ], "faces": { "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" }, "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#rice" } } } ] } The water (rendered on the translucent layer): { "textures": { "water": "jjmod:blocks/plants/water", "particle": "jjmod:blocks/plants/water" }, "elements": [ { "from": [ 0, 0, 0 ], "to": [ 16, 14, 16 ], "faces": { "down": { "texture": "#water" }, "up": { "texture": "#water" }, "north": { "texture": "#water" }, "south": { "texture": "#water" }, "west": { "texture": "#water" }, "east": { "texture": "#water" } } } ] }
November 2, 20169 yr You can use the forge:multi-layer model to combine other models that are rendered in different layers. I explain this in more detail here. Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.