プログラムを float または double 型でコンパイルするオプションを提供していますが、問題があります: GL_FLOAT または GL_DOUBLE のいずれかを手動で設定する必要があります。次のことを行う方法がわからないためです。
typedef float MYTYPE;
#if MYTYPE == float
#define GL_MYTYPE GL_FLOAT // used for vertex array parameters.
#else
#define GL_MYTYPE GL_DOUBLE
#endif
注:私はC++ 11などを持っていません。古き良きC ++だけです。