Render.js

Quick rating

Community listing page, reviews here may not be monitored by the author.

Render.js

No reviews yet

Allow to use Kubejs customize the world rendering.

Mod Loaders
Minecraft

About

Description

Due to the simplicity of painter API, I have developed this mod that allows you to customize world rendering.

How to use

// Similar to the painter API, register a RenderObject before rendering.
ClientEvents.loggedIn(event => {
    RenderObjectManager.register({
        example_triangle: {
            type: "triangles",
            r: 128,
            g: 255,
            b: 29,
            a: 150,
            vertices: [
                -0.120, 0.00, 0.001,
                0.0000, 0.20, 0.001,
                0.1200, 0.00, 0.001,
                -0.064, 0.03, 0.000,
                0.0000, 0.14, 0.000,
                0.0640, 0.03, 0.000
            ],
            options: {
                blend: true,
                depth_test: true,
                cull: false,
                billboard: "center"
            }
        }
    })
})

// And then, you can render it on event.

RenderEntityEvents.afterRender(event => {
    let h = event.getEntity().getBbHeight(); // entity's height
    event.renderWithOffset("example_triangle", [0.0, h + 0.2, 0.0]); // render it with offset
});

// Now, you can see that each entity has a triangle on its head!

Currently supported events:

  1. After World Render Event:
RenderLevelEvents.afterSolidBlockRender(event => {
    // do something
});
  1. After/Before Living Entity Render Event:
RenderEntityEvents.beforeRender(event => {
    // do something
});

RenderEntityEvents.afterRender(event => {
    // do something
});

You can give me suggestions in Githu Issues or the comment!

Due to the simplicity of painter API, I have developed this mod that allows you to customize world rendering.

How to use

// Similar to the painter API, register a RenderObject before rendering.
ClientEvents.loggedIn(event => {
    RenderObjectManager.register({
        example_triangle: {
            type: "triangles",
            r: 128,
            g: 255,
            b: 29,
            a: 150,
            vertices: [
                -0.120, 0.00, 0.001,
                0.0000, 0.20, 0.001,
                0.1200, 0.00, 0.001,
                -0.064, 0.03, 0.000,
                0.0000, 0.14, 0.000,
                0.0640, 0.03, 0.000
            ],
            options: {
                blend: true,
                depth_test: true,
                cull: false,
                billboard: "center"
            }
        }
    })
})

// And then, you can render it on event.

RenderEntityEvents.afterRender(event => {
    let h = event.getEntity().getBbHeight(); // entity's height
    event.renderWithOffset("example_triangle", [0.0, h + 0.2, 0.0]); // render it with offset
});

// Now, you can see that each entity has a triangle on its head!

Currently supported events:

  1. After World Render Event:
RenderLevelEvents.afterSolidBlockRender(event => {
    // do something
});
  1. After/Before Living Entity Render Event:
RenderEntityEvents.beforeRender(event => {
    // do something
});

RenderEntityEvents.afterRender(event => {
    // do something
});

You can give me suggestions in Github Issues or the comment!