Posted August 6, 201411 yr As in the topic, I want to change the appearance of a vanilla block, let's say, a door. But when I register a new block type renderer, of an id 7 (that is the render id of a door), it doesn't actually override what is in the vanilla. I also tried to override the RenderBlocks class, with my custom changed one, but it wouldn't work unless I also overrided the RenderGlobal and WorldRenderer classes. Is there a Forge hook of some sort that does change the rendering of a vanilla block? Or is there an another solution? Thanks in advance.
August 7, 201411 yr Hi I don't think there is any any such suitable hook. However you can probably change the texture by overwriting the texture taken from the resource pack. Vanilla "stitches" the icon images together into a single texture. You might be able to overwrite the vanilla block texture by messing with that process. I'm not sure exactly how it works, but it's probably worth looking in TextureMap.loadTextureAtlas - the ForgeHooksClient.onTextureStitchedPre(this); looks very promising. Perhaps you can alter mapRegisteredSprites in that event. Or alternatively in ForgeHooksClient.onTextureStitchedPost(this); you might be able to modify the OpenGL texture sheet directly. -TGG
August 8, 201411 yr Author I don't really want to change the texture at all, I just want to change ther way it is rendered. Somehow, get into the RenderBlocks.class and change the renderDoor function ;(.
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.