Jump to content

Recommended Posts

Posted (edited)

Hi! I'm trying to get my block entity rederer working, which in fact already works. When I set the RenderType to ENTITYBLOCK_ANIMATED then BER doesn't render anything. When I don't set it, then minecraft reders my block and BER redner's it again. If I change my BER's rotation or translation I wish to not see the original block model. So I set RenderType to ENTITYBLOCK_ANIMATED. The model isn't loaded by default, so I force the model to load myself using ModelEvent$RegisterAdditional event on the mod bus, but it's not doing anything. Subscribing works and the event fires noramally. Thanks for any help.

@SubscribeEvent
public static void registerBlockEntityModels(ModelEvent.RegisterAdditional event) {
    event.register(new ResourceLocation(MyMod.MOD_ID, "models/block/rail.json"));
}
Edited by RInventor7
Posted

ENTITYBLOCK_ANIMATED is not a RenderType (unless you created one with that name? - it would need to be lowercase if you did)

It is an enum value returned from your Block's getRenderShape() method.

Manually registering models won't do anything if you don't use them. It just forces minecraft/forge to prebake the model ready for use.

Boilerplate:

If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one.

If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install

Large files should be posted to a file sharing site like https://gist.github.com  You should also read the support forum sticky post.

Posted (edited)
  On 8/29/2023 at 2:44 PM, warjort said:

ENTITYBLOCK_ANIMATED is not a RenderType

Expand  

That was my mistake, I had remebered it incorrectly. 

  On 8/29/2023 at 2:44 PM, warjort said:

Manually registering models won't do anything if you don't use them.

Expand  

That's a good point. I understand I need to specify my model location in my BER render method by changing the ModelData argument, right?

blockRenderer.renderSingleBlock(bs, poseStack, bufferSource, combinedLight, OverlayTexture.NO_OVERLAY, ModelData.EMPTY, RenderType.cutout());

The problem is can't seem to find a way to specify my model's resource location anyhow...

ModelData modelData = ModelData.builder().with(somePropertySomething???).build();

Is this even the correct way or is it done differently?

ModelData modelData = ModelData.builder().with(new ModelProperty<>(), new ResourceLocation(MyMod.MOD_ID, "models/block/rail.json")).build();

This also doesn't seem to do anything... I'm probably doing it wrong? 

Are there any examples somewhere (I couldn't seem to find any)?

Edited by RInventor7
Posted

No you get the model from the ModelManager via the BlockEntityRenderProvider.Context.

e.g. https://github.com/AppliedEnergistics/Applied-Energistics-2/blob/43afa73c3aa8f291fc085ee70459aa85711e408a/src/main/java/appeng/client/render/tesr/CrankRenderer.java#L53

 

ModelData is something you can attach to individual BlockEntities and use in rendering.

https://github.com/MinecraftForge/MinecraftForge/blob/ab70bde1d648125acee073a93a25d4b8f08985c9/src/main/java/net/minecraftforge/common/extensions/IForgeBlockEntity.java#L167

I don't think it is that useful unless you using custom models?

If you are already doing dynamic rendering, you can just look directly at the block entity data.

 

Boilerplate:

If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one.

If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install

Large files should be posted to a file sharing site like https://gist.github.com  You should also read the support forum sticky post.

  • RInventor7 changed the title to Block entity renderer model forcing not working [1.19.2][SOLVED]

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • That is incorrect. Use the run.bat or run.sh to run the server.
    • Hello, I have been trying for days to create my server with forge-1.20.1-47.4.1-installer, which installs the server, but the forge-1.20.1-47.4.1.jar file, which is necessary to create the server, does not appear. I no longer know what to do. Help. hola buenas, llevo dias intentando poder hacer mi servidor con forge-1.20.1-47.4.1-installer el cual instalo el server, pero no aparece el archivo forge-1.20.1-47.4.1.jar , el cual es necesario para poder crear el server, ya no se que hacer ayuda.
    • Does this happen if you use the regular vanilla minecraft launcher? Also, unsure if TLauncher ever has a legit usage, as I have always seen it associated with software piracy, but if it has a legit mode, make sure it is using online mode so that it can authenticate your MS account to login. Aside from that, more information is likely needed. Post logs, as well as the paths you are placing files in (screenshots of your file explorer can be helpful as well).
    • I am using a third-party launcher that has pre-installed forge versions of Minecraft.  When I insert mods from CurseForge, I extract the files and as expected put them in the .mods folder. I am guessing that there is an error with the file transfer but I don't know for sure and sometimes I use Forge to test mods that I created before releasing previously on a different pc, so I don't know if it is the if it an extraction error but if are any tips or knowledge reply and I will read it. This is also will be kept on the forum for others that have the issues.
    • I make wires and i need connection 2 wires block. I have BooleanPropertys registered, but in mod loading it show Unknown the property in assets/wuntare/blockState. public static final BooleanProperty CONNECTED_NORTH = BooleanProperty.create("connected_north"); public static final BooleanProperty CONNECTED_SOUTH = BooleanProperty.create("connected_south"); public static final BooleanProperty CONNECTED_WEST = BooleanProperty.create("connected_west"); public static final BooleanProperty CONNECTED_EAST = BooleanProperty.create("connected_east"); public static final BooleanProperty CONNECTED_UP = BooleanProperty.create("connected_up"); public static final BooleanProperty CONNECTED_DOWN = BooleanProperty.create("connected_down"); public CopperWireWithoutInsulation0(Properties properties) { super(properties); this.registerDefaultState(this.stateDefinition.any() .setValue(CONNECTED_NORTH, false) .setValue(CONNECTED_SOUTH, false) .setValue(CONNECTED_WEST, false) .setValue(CONNECTED_EAST, false) .setValue(CONNECTED_UP, false) .setValue(CONNECTED_DOWN, false)); } @Override protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) { builder.add(CONNECTED_NORTH, CONNECTED_SOUTH, CONNECTED_WEST, CONNECTED_EAST, CONNECTED_UP, CONNECTED_DOWN); } In this part blockState have problem "multipart": [ { "apply": { "model": "wuntare:block/copper_wire_without_insulation0" } }, { "when": { "connected_north": true }, "apply": { "model": "wuntare:block/copper_wire_without_insulation0_north" } },  
  • Topics

×
×
  • Create New...

Important Information

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