Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [opengl] смена цвета для всех вершин одновременно 
:(
    Опции темы
drug007
Дата 7.12.2016, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 196
Регистрация: 3.11.2011

Репутация: нет
Всего: 1



Всем доброго времени суток.
Есть необходимость смены цвета для всех вершин одновременно. На ум приходит color index mode, но он вроде как уже устарел. Пробегаться по всему VBO меняя цвет вершин кажется избыточным. Может кто подсказать оптимальное решение задачи в современном opengl?
Заранее спасибо.
PM MAIL   Вверх
tzirechnoy
Дата 13.12.2016, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 1
Всего: 16



А зачем у вас цвета вершын хранятся во всём VBO? Массив цветов обычно отдельный. Или не массив, а параметр шэйдера/юниформ, вот это всё. Неважно. В любом случае, типичная организацыя данных -- это отдельный массив координат (один массив с дэкартовыми тройками), отдельный массив нормалей, отдельный массив цветов, отдельный массив параметров материала (для освещения).

Иногда ещё массив индэксов, чтобы можно было уменьшыть остальные массивы (координат и нормалей -- примерно втрое, цветов и материалов -- вообще во много раз, поскольку часто хватает нескольких цветов и одного-двух материалов на модэль из сотен треугольников), но это по факту не всегда выгодно по скорости.

Но, в любом случае, современный OpenGL -- понятие очень растяжымое. Вы всё-таки опишыте, примерно, какой сложности модэль рисуете, чем её задаёте, какими функцыями передаёт внутрь OpenGL, чем параметризуете, есть ли кости, используете ли шэйдэры (понимаю, что "современный OpenGL это подразумевает, но Вы не ленитесь, описывайте), и если да, то какие, как пихаете параметры в шэйдэры и между стадиями. После этого можно будет понять, что Вам непонятно.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.1103 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.