Шейдеры, совместимые с OpenGL ES и OpenGL

Я хочу иметь один и тот же исходный код шейдера для 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

Как вы думаете, что лучше? У вас есть другие решения этой проблемы?

5
задан Chris says Reinstate Monica 7 May 2013 в 08:59
поделиться