Есть ли хороший способ для модульного тестирования функции или класса с помощью команд OpenGL?
Для c ++ я знаю, что мог бы сделать класс шаблоном и передать класс с помощью прямых вызовов opengl:
namespace myNamespace
{
struct RealOpenglCall
{
static inline void glVertex2fv( const GLfloat * v)
{ ::glVertex2fv( v ); }
};
template< typename T >
class SomeRendering
{
public:
SomeRendering() : v()
{
// set v
}
void Draw()
{
T::glVertex2fv(v);
}
GLfloat v[4];
};
}
В C и C ++ я мог бы передавать указатели на функции, вызывающие функции opengl (затем для модульного тестирования, передавая указатели на фиктивные функции).
Я также мог бы связываться с другой библиотекой (вместо opengl), но это звучит как большое осложнение.
Итак, каковы другие методы для модульного тестирования кода, вызывающего функции opengl?