Iris with shader enabled breaks BlockEntity rendering
the following code works perfect without shader loaded, but with a iris shader loaded it does not render anything
12 Replies
is this a vanilla shader?
no, it is a slightly modified RENDERTYPE_ENTITY_TRANSLUCENT_SHADER copied from the minecraft shaders
to have lightmap coords as uniforms
so it's a vanilla shader.
they are not compatible with Iris
and they won't be for the foreseeable future
so what should i do?
Lightmap coord as it the light's intensity, or something else?
the ones you get in the BlockEntity render method
for optimization i pre-compute the mesh and only change the light dynamically
because i pre-compute the mesh i can not bake in the lightmap coordinates because it would not change in the daycycle
so I place them as uniform in the shader
this improves render time for the blockentity from 0.1-0.4ms to <0.005ms
and there can be a lot of blockentities
:Render_Thinking:
This is, probably something that @IMS can answer.
Or someone in the contributor team at least.
https://www.youtube.com/watch?v=HRoTLI7ZUdI
this is what my mod does if it helps to figure out an answer
@IMS pls help me
No need to ping him twice. I've already informed him of your issue report.
thank you
this code does render it (wrong vertex position because it is missing the transformation) but still, renders. but it is extremly slow because i create the mesh every frame and upload it to gpu.
in my above code i use almost exactly the same logic like the below code uses (I looked at the decompiled code) and the only big difference is that i store the data in a vertexbuffer now.
this does not render with iris shaders active, but does without
it works now