Есть ли способ использовать ваши собственные шейдеры 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 - нужна документация». Я предлагаю вам написать в список рассылки запрос о том, какую документацию вы бы хотели видеть.