2013-06-11 3 views
0

Я новичок в OpenGL ES 2.0. Я узнал об этом несколько недель. Теперь я могу отображать несколько объектов. Однако у меня есть проблема. Мой вопрос: как я могу визуализировать 2 объекта: один вращается, а другой - нет. Когда я хочу повернуть объект, я использую функцию esRotate() с modelview_matrix. ThanksРендеринг нескольких объектов с разными характеристиками по OpenGL ES 2.0

ответ

0

Простым решением является вызов glDrawArrays() или glDrawElements() дважды. Первый вызов будет для модели, которую вы хотите повернуть, и второго вызова модели, которую вы не хотите вращать. Используйте только метод esRotate() для модели для первого вызова.

Обратите внимание, что вам также необходимо дважды вызвать glUniformMatrix4fv(), чтобы перезагрузить матрицу Model-View для каждой модели с применением и без применения поворота.

+0

спасибо за ваш ответ. Можете ли вы мне помочь по текстуре? Я хочу установить изображение в качестве фона. Тем не менее, я действительно не понимаю, как это работает. Можете ли вы поделиться с нами полным кодом примера об этой проблеме? Большое спасибо! –

+0

В Интернете есть много примеров отображения текстур. Найдите его для платформы, которую вы используете. Это одно общее: http: //nehe.gamedev.net/tutorial/lessons_06__10/17010/ – ClayMontgomery

+0

Когда я использую 2D-текстуру, мы определяем «gl_FragColor = texture2D (s_texture, v_texCoord)», я знаю, что v_texCoord - это 2D-координата {(0,0), (1,0), (0,1), (1,1)}. Однако, когда я работаю с текстурой cubemap «gl_FragColor = textureCube (s_texture, v_normal)», я не совсем понимаю, что такое v_normal. Можете ли вы объяснить это мне? Благодаря !!! –

Смежные вопросы