Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Niroque

Members
  • Joined

  • Last visited

  1. After weeding out chaff leftover from debugging... For anyone running into this, if you use: public class YourBlockClass extends Block { public BlockRenderLayer getBlockLayer() { return BlockRenderLayer.CUTOUT_MIPPED; } ... } You also need to include: public boolean isOpaqueCube(IBlockState state) { return false; } In the end though, (for my block purposes anyhow) I was able to omit the usage of BlockRenderLayer getBlockLayer() and now only use isOpaqueCube(IBlockState state) in my block class. The reason it wasn't working before is because I didn't include the passed variable "IBlockState state" in my early debugging (see my initial post). I was having a hard time finding a working example since it took a while for me to find a way to see minecraft source code that wasn't obfuscated (mc modding newb). Hope this helps someone!
  2. Wow! That was it, CUTOUT_MIPPED! I knew it was something trivial! Thanks desht!
  3. Here's my firstblock.json: { "__comment": "Model generated using MrCrayfish's Model Creator (https://mrcrayfish.com/tools?id=mc)", "textures": { "0": "tm:blocks/firstblock", "1": "tm:blocks/firstblock" }, "display": { "head": { "rotation": [ 0, 180, 0 ], "translation": [ 0, 0, 0 ], "scale": [ 1, 1, 1 ] }, "firstperson_righthand": { "rotation": [ 0, 315, 0 ], "translation": [ 0, 2.5, 0 ], "scale": [ 0.4, 0.4, 0.4 ] }, "thirdperson_lefthand": { "rotation": [ 75, 45, 0 ], "translation": [ 0, 2.5, 0 ], "scale": [ 0.375, 0.375, 0.375 ] }, "firstperson_lefthand": { "rotation": [ 0, 0, 45 ], "translation": [ 0, 2.5, 0 ], "scale": [ 0.4, 0.4, 0.4 ] }, "gui": { "rotation": [ 30, 45, 0 ], "translation": [ 0, 0, 0 ], "scale": [ 0.625, 0.625, 0.625 ] }, "ground": { "rotation": [ 0, 0, 0 ], "translation": [ 0, 3, 0 ], "scale": [ 0.25, 0.25, 0.25 ] }, "fixed": { "rotation": [ 0, 180, 0 ], "translation": [ 0, 0, 0 ], "scale": [ 1, 1, 1 ] }, "thirdperson_righthand": { "rotation": [ 75, 315, 0 ], "translation": [ 0, 2.5, 0 ], "scale": [ 0.375, 0.375, 0.375 ] } }, "elements": [ { "name": "Cube", "from": [ 2, 1, 4 ], "to": [ 4, 10, 6 ], "faces": { "north": { "texture": "#0", "uv": [ 0, 0, 2, 9 ] }, "east": { "texture": "#0", "uv": [ 0, 0, 2, 9 ] }, "south": { "texture": "#0", "uv": [ 0, 0, 2, 9 ] }, "west": { "texture": "#0", "uv": [ 0, 0, 2, 9 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 11, 1, 4 ], "to": [ 13, 10, 6 ], "faces": { "north": { "texture": "#0", "uv": [ 1, 7, 3, 16 ] }, "east": { "texture": "#0", "uv": [ 9, 7, 11, 16 ] }, "south": { "texture": "#0", "uv": [ 5, 0, 7, 9 ] }, "west": { "texture": "#0", "uv": [ 0, 7, 2, 16 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 11, 1, 14 ], "to": [ 13, 10, 16 ], "faces": { "north": { "texture": "#0", "uv": [ 8, 5, 10, 14 ] }, "east": { "texture": "#0", "uv": [ 0, 3, 2, 12 ] }, "south": { "texture": "#0", "uv": [ 4, 4, 6, 13 ] }, "west": { "texture": "#0", "uv": [ 13, 0, 15, 9 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 2, 1, 14 ], "to": [ 4, 10, 16 ], "faces": { "north": { "texture": "#0", "uv": [ 4, 7, 6, 16 ] }, "east": { "texture": "#0", "uv": [ 13, 3, 15, 12 ] }, "south": { "texture": "#0", "uv": [ 8, 5, 10, 14 ] }, "west": { "texture": "#0", "uv": [ 9, 0, 11, 9 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 2, 9, 4 ], "to": [ 13, 10, 16 ], "faces": { "north": { "texture": "#1", "uv": [ 0, 0, 11, 1 ] }, "east": { "texture": "#1", "uv": [ 0, 0, 12, 1 ] }, "south": { "texture": "#1", "uv": [ 0, 0, 11, 1 ] }, "west": { "texture": "#1", "uv": [ 0, 0, 12, 1 ] }, "up": { "texture": "#1", "uv": [ 0, 0, 11, 12 ] }, "down": { "texture": "#1", "uv": [ 0, 0, 11, 12 ] } } }, { "name": "Cube", "from": [ 2, 9, 5 ], "to": [ 4, 21, 7 ], "rotation": { "origin": [ 8.0, 8.0, 5.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#0", "uv": [ 1, 0, 3, 12 ] }, "east": { "texture": "#0", "uv": [ 0, 4, 2, 16 ] }, "south": { "texture": "#0", "uv": [ 9, 4, 11, 16 ] }, "west": { "texture": "#0", "uv": [ 5, 4, 7, 16 ] }, "up": { "texture": "#0", "uv": [ 1, 2, 3, 4 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 11, 9, 5 ], "to": [ 13, 21, 7 ], "rotation": { "origin": [ 8.0, 8.0, 5.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#0", "uv": [ 0, 0, 2, 12 ] }, "east": { "texture": "#0", "uv": [ 5, 4, 7, 16 ] }, "south": { "texture": "#0", "uv": [ 0, 0, 2, 12 ] }, "west": { "texture": "#0", "uv": [ 0, 0, 2, 12 ] }, "up": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 2, 2 ] } } }, { "name": "Cube", "from": [ 4, 12, 6 ], "to": [ 11, 13, 7 ], "rotation": { "origin": [ 8.0, 8.0, 8.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "east": { "texture": "#1", "uv": [ 0, 0, 1, 1 ] }, "south": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "west": { "texture": "#1", "uv": [ 0, 0, 1, 1 ] }, "up": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "down": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] } } }, { "name": "Cube", "from": [ 4, 20, 6 ], "to": [ 11, 21, 7 ], "rotation": { "origin": [ 8.0, 8.0, 8.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "east": { "texture": "#1", "uv": [ 0, 0, 1, 1 ] }, "south": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "west": { "texture": "#1", "uv": [ 0, 0, 1, 1 ] }, "up": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] }, "down": { "texture": "#1", "uv": [ 0, 0, 7, 1 ] } } }, { "name": "Cube", "from": [ 9, 11, 6 ], "to": [ 10, 20, 7 ], "rotation": { "origin": [ 8.0, 8.0, 5.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#0", "uv": [ 10, 7, 11, 16 ] }, "east": { "texture": "#0", "uv": [ 5, 4, 6, 13 ] }, "south": { "texture": "#0", "uv": [ 14, 4, 15, 13 ] }, "west": { "texture": "#0", "uv": [ 5, 4, 6, 13 ] }, "up": { "texture": "#0", "uv": [ 2, 7, 3, 8 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 1, 1 ] } } }, { "name": "Cube", "from": [ 7, 11, 6 ], "to": [ 8, 20, 7 ], "rotation": { "origin": [ 8.0, 8.0, 5.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#0", "uv": [ 2, 7, 3, 16 ] }, "east": { "texture": "#0", "uv": [ 0, 0, 1, 9 ] }, "south": { "texture": "#0", "uv": [ 6, 6, 7, 15 ] }, "west": { "texture": "#0", "uv": [ 0, 0, 1, 9 ] }, "up": { "texture": "#0", "uv": [ 2, 7, 3, 8 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 1, 1 ] } } }, { "name": "Cube", "from": [ 5, 11, 6 ], "to": [ 6, 20, 7 ], "rotation": { "origin": [ 8.0, 8.0, 5.0 ], "axis": "x", "angle": -22.5 }, "faces": { "north": { "texture": "#0", "uv": [ 0, 3, 1, 12 ] }, "east": { "texture": "#0", "uv": [ 1, 3, 2, 12 ] }, "south": { "texture": "#0", "uv": [ 0, 6, 1, 15 ] }, "west": { "texture": "#0", "uv": [ 2, 7, 3, 16 ] }, "up": { "texture": "#0", "uv": [ 2, 7, 3, 8 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 1, 1 ] } } }, { "name": "Cube", "from": [ 2, 3, 6 ], "to": [ 3, 4, 14 ], "faces": { "east": { "texture": "#1", "uv": [ 0, 0, 8, 1 ] }, "west": { "texture": "#1", "uv": [ 0, 0, 8, 1 ] }, "up": { "texture": "#0", "uv": [ 0, 0, 1, 8 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 1, 8 ] } } }, { "name": "Cube", "from": [ 12, 3, 6 ], "to": [ 13, 4, 14 ], "faces": { "east": { "texture": "#1", "uv": [ 0, 0, 8, 1 ] }, "west": { "texture": "#1", "uv": [ 0, 0, 8, 1 ] }, "up": { "texture": "#0", "uv": [ 0, 0, 1, 8 ] }, "down": { "texture": "#0", "uv": [ 0, 0, 1, 8 ] } } }, { "name": "Cube", "from": [ 3, 3, 9 ], "to": [ 12, 4, 11 ], "faces": { "north": { "texture": "#1", "uv": [ 0, 0, 9, 1 ] }, "south": { "texture": "#1", "uv": [ 0, 0, 9, 1 ] }, "up": { "texture": "#1", "uv": [ 0, 0, 9, 2 ] }, "down": { "texture": "#1", "uv": [ 0, 0, 9, 2 ] } } } ] }
  4. I already have this to override, is there another way to override them that's more reliable? public BlockRenderLayer getBlockLayer() { return BlockRenderLayer.TRANSLUCENT; } public boolean isNormalCube(IBlockState state) { return false; } public boolean isFullCube(IBlockState state) { return false; } public boolean isOpaqueCube(IBlockState state) { return false; } public boolean isVisuallyOpaque() { return false; }
  5. Ah I had forgotten to add that back in. I tried many variants as I went down the code rabbit hole. It still shows the same though.
  6. Niroque changed their profile photo
  7. Hi there, My goal is to have this block look kind of like a lone fence post (minus attaching to adjacent blocks) where the object is cutout and the surfaces of the blocks around it are rendered. I've tried duplicating a fence post but that became overly complicated and I got a bit lost. Sadly this is what my block is doing so far (see attached). Using Eclipse and modding MC 1.12.2. Here's my block class and definition: package com.testmod.mod.blocks; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.util.BlockRenderLayer; public class BlockBasic extends Block { public BlockBasic(String name, Material material) { super(material); setUnlocalizedName(name); setRegistryName(name); } public BlockRenderLayer getBlockLayer() { return BlockRenderLayer.TRANSLUCENT; } public boolean isFullCube(IBlockState state) { return false; } public boolean isOpaqueCube() { return false; } public boolean isVisuallyOpaque() { return false; } } package com.testmod.mod.init; import com.testmod.mod.Reference; import com.testmod.mod.blocks.BlockBasic; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; import net.minecraftforge.client.event.ModelRegistryEvent; import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @Mod.EventBusSubscriber(modid=Reference.MODID) public class ModBlocks { static Block firstBlock; static Block fenceDupe; public static void init() { firstBlock = new BlockBasic("firstBlock", Material.WOOD); } public boolean isOpaqueCube(IBlockState state) { return false; } public boolean isFullCube(IBlockState state) { return false; } @SubscribeEvent public static void registerBlocks(RegistryEvent.Register<Block> event) { event.getRegistry().registerAll(firstBlock); } @SubscribeEvent public static void registerItemBlocks(RegistryEvent.Register<Item> event) { event.getRegistry().registerAll(new ItemBlock(firstBlock).setRegistryName(firstBlock.getRegistryName())); } @SubscribeEvent public static void registerRenders(ModelRegistryEvent event) { registerRender(Item.getItemFromBlock(firstBlock)); } public static void registerRender(Item item) { ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation( item.getRegistryName(), "inventory")); } } I've added what I *think should be working, but no joy. Anyone point me in the right direction? BTW; new to Minecraft modding so forgive me if I've missed something obvious. Thanks!

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.