Я хочу иметь один и тот же исходный код шейдера для OpenGL ES и OpenGL (Windows ). Для этого я хочу определить пользовательские типы данных и использовать только функции OpenGL ES.
Один из подходов заключается в определении:
#define highp
#define mediump
#define lowp
для шейдера Windows и напишите шейдер, как для OpenGL ES.
Другой подход заключается в определении пользовательских типов данных, подобных этому, для OpenGL ES :
#define hvec2 highp vec2
. и так для Windows
#define hvec2 vec2
Как вы думаете, что лучше? У вас есть другие решения этой проблемы?