Есть ли способ использовать ваши собственные шейдеры GLSL с JavaFX? В настоящее время я использую Java 8 162 и обнаружил серьезную нехватку документации по JavaFX 3D.
Можно ли использовать шейдеры GLSL с JavaFX 3D?
Ответы (1)
Есть ли способ использовать ваши собственные шейдеры GLSL с JavaFX?
Нет. Шейдеры GLSL компилируются во время выполнения и привязываются к графическому конвейеру OpenGL, который является внутренним. В прошлом был запрос на это, но никто не приложил усилия для этого.
Возможно, вы сможете что-то взломать, если соберете JavaFX локально. Это зависит от того, насколько масштабны изменения, которые вы хотите внести. Вы можете добавить шейдеры, как в modules/javafx.graphics/src/main/resources/com/sun/prism/es2/glsl/main1Light.frag
(и main2Lights
, и main3Lights
). Затем вам нужно будет изменить com.sun.prism.es2.ES2PhongShader
соответственно, по крайней мере.
Какой шейдер вы пытаетесь сделать? Возможно, его можно будет встроить в JavaFX, если это разумно.
существует серьезная нехватка документации JavaFX 3D
Да. Многие внутренние классы также имеют комментарии «TODO: 3D — нужна документация». Предлагаю вам написать в рассылку запрос, какую именно документацию вы хотели бы видеть.