@Override
    public void renderBlock(BlockState state, BlockPos pos, BlockAndTintGetter world, PoseStack mStack, VertexConsumer builder, RandomSource random, ModelData data, @Nullable RenderType renderType) {
        CCRenderState ccrs = CCRenderState.instance();
        ccrs.reset();
        ccrs.bind(new TransformingVertexConsumer(builder, mStack), DefaultVertexFormat.BLOCK);
        ccrs.lightMatrix.locate(world, pos);

        render(ccrs, renderType, getBlockRenderData(state, pos, world));
    }
Needs to exist because Vanilla's default {@link ConfiguredModel} only supports a single x rotation and y rotation,
making it very difficult to render blocks that can not only be oriented to all 6 sides, but also rotated about those
sides. With only x/y rotations, we would have to use UV-mapping to rotate the textures themselves rather than the model.
core/src/main/java/mrtjp/projectred/core/client/FullyOrientableBlockRenderer.java