Совместимость стороннего GL рендера с шейдерами

Версия Minecraft
1.16.5
API
Forge
Всем привет!

Накидал самостоятельную рендерилку для блоков на opengl, работает независимо от рендера основных лейеров.
В IDE все круто, Optifine на реальном майне почти ничего не ломает... Но, как водится, есть один нюанс: с шейдерами все очень плохо.

1) Текстуры блоков буквально черные или очень темные. Пробовал рендерить и майновым тесселлятором (который уже буфер), и сликовским VaoGLRenderer'ом - одна сатана.
Сдамил WorldRenderer, нашел как там подрубаются шейдеры. Выключил их на время рендера (выставил ProgramNone) и блоки стали белыми =) Однако текстуру все еще видно.

2) Тени такие блоки не отбрасывают. Только если вернуть родной рендер, и то по майновой модели блока.

Возможно, был у кого опыт интеграции подобных велосипедов? Или, может, где-то можно почитать про саму конструкцию шейдеров, дабы ее расковырять.
Буду рад любой помощи и советам! Заранее спасибо!
 

Вложения

  • 2022-02-01_07.21.39.png
    2022-02-01_07.21.39.png
    569.1 KB · Просмотры: 29
  • 2022-02-01_07.22.10.png
    2022-02-01_07.22.10.png
    483.8 KB · Просмотры: 29
  • Screenshot_2.png
    Screenshot_2.png
    1.1 MB · Просмотры: 29
Решение
Всем, кому будет интересно. В итоге решил сделать миксин в WorldRenderer#renderLayer на SOLID слой. Шейдеры для рендера теней приходят туда второй раз, чтобы собрать карту теней. Точкой иньекции выбрал BEFORE startDrawing у теселлятора (он же буффер) в методе. Работает безотказно.

На скринах снизу для руд ни разу не использован ни атлас блоков майна (который теперь что ли один для предметов и для блоков?), ни BufferBuilder. Рендер OBJ модели с катомной яркостью (кристаллы красные) поверх куба с текстурой камня майна.
Всем, кому будет интересно. В итоге решил сделать миксин в WorldRenderer#renderLayer на SOLID слой. Шейдеры для рендера теней приходят туда второй раз, чтобы собрать карту теней. Точкой иньекции выбрал BEFORE startDrawing у теселлятора (он же буффер) в методе. Работает безотказно.

На скринах снизу для руд ни разу не использован ни атлас блоков майна (который теперь что ли один для предметов и для блоков?), ни BufferBuilder. Рендер OBJ модели с катомной яркостью (кристаллы красные) поверх куба с текстурой камня майна.
 

Вложения

  • 2022-02-12_20.57.54.png
    2022-02-12_20.57.54.png
    935.9 KB · Просмотры: 22
  • 2022-02-12_21.03.53.png
    2022-02-12_21.03.53.png
    2.4 MB · Просмотры: 23
  • 2022-02-12_21.04.07.png
    2022-02-12_21.04.07.png
    2.2 MB · Просмотры: 23
Сверху