У меня есть эта строка кода:
renderableObject.renderObject(gl, glu);
Это приводит к большому списку объектов, отображаемых openGL, однако он работает только при использовании следующим образом:
@Override
public void display(GLAutoDrawable drawable)
{
renderableObject.renderObject(gl, glu);
}
Если я вызываю строку вне переопределенного метода отображения, я получаю Исключение, говорящее, что в текущем потоке нет glContext, фактически, если я вызываю любые команды gl draw вне этого метода, я получаю то же исключение
теперь в идеале я хочу создать множество списков отображения один раз, а затем визуализировать их каждый кадр с нечетным списком отображения для периодического воссоздания. Однако я должен пройти через этот единственный метод display (), что означает, что мне придется проверять каждый кадр, если список отображения был создан или нуждается в изменении и т. Д. ... 60 раз в секунду! какая трата вычислительной мощности, когда я мог бы обрабатывать их по отдельности, когда это необходимо.
Итак, что бы ни вызывал метод display (), я бы хотел иметь возможность его тиражировать, что позволило бы мне создавать множество собственных пользовательских методов отображения, не проходя этот единственный метод для всего!
Так есть ли простой вызов GL, который я могу сделать сам?