Как я могу найти отсутствующий glPopMatrix () в Visual Studio - PullRequest
1 голос
/ 02 декабря 2010

У меня есть теория, согласно которой ошибки, с которыми я сталкиваюсь, связаны с использованием beign glPushMatrix (), который используется без соответствующего glPopMatrix (). Мой проект довольно большой, поэтому я хотел бы иметь возможность легко найти эти недостающие glPopMatrix (). Я думал об использовании поиска с использованием регулярных выражений, но я не могу понять, как найти то, что я хочу (плюс, регулярное выражение в Visual Studio не совсем то, что я привык (php), поэтому Я немного потерян. В любом случае, есть идеи, как это сделать?

1 Ответ

1 голос
/ 03 декабря 2010

Вы можете проверить свою теорию, проверив, возвращает ли glGetError() GL_STACK_OVERFLOW в какой-то момент.

Чтобы найти пропущенные ссылки, я не могу придумать ничего лучше, чем запустить полнотекстовый поиск в вашем проекте для glPushMatrix и попытаться найти соответствующие glPopMatrix для каждого из них. .

Или есть еще одно решение:

Вы можете использовать отладчик OpenGL, такой как GLIntercept (который представлен в виде измененного файла opengl32.dll и выдает много полезной информации, включая все команды OpenGL, которые были выполнены (могут быть плоский журнал или однокадровый журнал). Это может дать вам хорошее представление о том, что пошло не так и когда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...