User Tools

Site Tools


tutorial:blockentityrenderers

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
tutorial:blockentityrenderers [2019/08/13 12:46] fudgetutorial:blockentityrenderers [2019/08/13 15:43] – added more information for client entrypoint fudge
Line 22: Line 22:
 } }
 </code> </code>
-And register it:+We're going to need to register our ''BlockEntityRenderer'', but only for the client.  
 +This wouldn't matter in a single-player setting, since the server runs in the same process as the client.  
 +However, in a multiplayer setting, where the server runs in a different process than the client, the server code 
 +has no concept of a "BlockEntityRenderer", and as a result would not accept registering one.  
 +To run initialization code only for the client, we need to setup a ''client'' entrypoint.   
 + 
 +Create a new class next to your main class that implements ''ClientModInitializer'':
 <code java> <code java>
-@Override +public class ExampleModClient implements ClientModInitializer { 
-public void onInitialize() {+    @Override 
 +    public void onInitializeClient() 
 +        // Here we will put client-only registration code 
 +    } 
 +
 +</code> 
 + 
 +Set this class as the ''client'' entrypoint in your ''fabric.mod.json'' (modify the path as needed): 
 +<code javascript "fabric.mod.json"> 
 +"entrypoints": {
     [...]     [...]
 +    "client": [
 +      {
 +        "value": "tutorial.path.to.ExampleModClient"
 +      }
 +    ]
 +}    
 +</code>
 +
 +And register the ''BlockEntityRenderer'' in our ClientModInitializer:
 +<code java>
 +@Override
 +public void onInitializeClient() {
     BlockEntityRendererRegistry.INSTANCE.register(DemoBlockEntity.class, new MyBlockEntityRenderer());     BlockEntityRendererRegistry.INSTANCE.register(DemoBlockEntity.class, new MyBlockEntityRenderer());
 } }
tutorial/blockentityrenderers.txt · Last modified: 2023/02/09 13:14 by mschae23