Добрый день. Вот решил портнуть свой графический движок под IPhone и столкнулся со следующей бедой. Благополучно пересобрал свою либу под айфон приладил ее к тестовому проекту все скомпилялось без ошибок и благополучно запустилось однако стоит вывзать любую функцию из либы внутри которой юзаются вызовы OpenGL как происходит ошибка.
к примеру:
void ARender::begin() { .... glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glMatrixMode( GL_MODELVIEW); }
А что за ошибка?
exc_bad_access
*mute
инициализацию OGLES под что делали 1.1 или 2.0?
под 2.0 взято из генерируемого семпла xcode по дебагеру видно что 2.0 удачно проходит
Ну вот в 2.0 нету glMatrixMode. Матрицу надо передвать в шейдер, предварительно получив ее локацию:
modelviewUniform = glGetUniformLocation(shaderProgram, "modelview")
и передаем:
glUniformMatrix4fv(modelviewUniform, 1, 0, modelview->Pointer());
Либо инициализировать под 1.1
но там вроде шейдеров нет =( значит так и придется все перетачивать под 2.0 стандарт
*mute
Можешь и перетачивать, а можешь... см пост #6
там только 1 строчку подправить
боюсь показаться невежей но есть ли в 1.1 глсл ?
нет нету.
ну тогда вывод очевиден. переточка неизбежна
Тема в архиве.