Форум программистов, компьютерный форум, киберфорум
OpenGL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1824 / 732 / 99
Регистрация: 01.10.2012
Сообщений: 3,746
1

Какие атрибуты вертексов нужны рендеру?

13.02.2016, 17:02. Показов 885. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте

Я знаю что модель имеет/хранит: позиции вертексов, их нормали, цвет и UV координаты (возможно неск наборов). Это все, уже можно рендерить? Или рендеру могут понадобиться еще данные для каждого вертекса? Если да то какие?

С уважением
Игорь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.02.2016, 17:02
Ответы с готовыми решениями:

Выбор вертексов
Добрый день Когда-то делал через gluUnproject но сейчас уже помню только что скоростью эта...

SDL 2.0: какие библиотеки нужны для запуска приложении
Написал мелкую игру, но на других компьютерах не запускается: они ругаются на какие-либо...

Нужны атрибуты bootfiles_x86, скиньте пожалуйста
Слетел загрузчик с вин 7, когда устанавливал убунти. Сижу с убунти и ищу bootfiles_x86, не как не...

Зачем нужны кастомные атрибуты в сборках
В проекте используются подключаемые DLL. использую рефлексию и позднее связывание. Изначально...

9
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
13.02.2016, 17:52 2
Igor3D
Я не эксперт, так что не судите строго =) Я видел, к примеру для Specular Mapping кроме позиции, UV координат и нормалей используют еще tangent и binormal. А что такое неск наборы?)
0
1824 / 732 / 99
Регистрация: 01.10.2012
Сообщений: 3,746
14.02.2016, 09:00  [ТС] 3
Цитата Сообщение от Helldrg Посмотреть сообщение
Я видел, к примеру для Specular Mapping кроме позиции, UV координат и нормалей используют еще tangent и binormal.
Только наверное для Bump Mapping. Согласен, тоже видел. Еще какие?

Цитата Сообщение от Helldrg Посмотреть сообщение
А что такое неск наборы?)
Несколько массивов/контейнеров UV, напр одна текстура использует первый, другая второй
1
85 / 31 / 3
Регистрация: 26.01.2016
Сообщений: 82
14.02.2016, 11:06 4
1. Атрибуты нужны не для рендера, атрибуты нужны для тебя (твоего шейдере), если вообще они тебе нужны
2. Атрибуты это не вершины, нормали, цвет и т.д., это просто бинарные данные, которые могут означать все что угодно.
3. Ты определяешь скольку надо доставить атрибутов в шейдер и тип данных каждого из них, а в шейдере делаешь с этими данными что тебе вздумается.
4. Для рендера (конструктора примитива) нужно в шейдере указать определенные данные, к примеру координаты (gl_Position на GLSL), но это совершенно не означает, что их нужно брать из атрибутов или что они имеют хоть какое то к ним отношение.
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
29.02.2016, 14:04 5
Цитата Сообщение от Igor3D Посмотреть сообщение
Еще какие?
Еще видел массы смешивания и индексы костей. Это для скелетной анимации.
0
1824 / 732 / 99
Регистрация: 01.10.2012
Сообщений: 3,746
01.03.2016, 10:59  [ТС] 6
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Еще видел массы смешивания и индексы костей. Это для скелетной анимации.
Строго говоря это (еще) не рендер, а подготовка геометрии к нему

Есть еще один атрибут также хранимый в вертексах и передаваемый рендеру, т.к. сам рендер его знать/вычислить не может. Иногда этот атрибут легко посчитать, иногда весьма сложно. Насколько мне известно, в OpenGL такого атрибута нет.
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
01.03.2016, 11:16 7
Цитата Сообщение от Igor3D Посмотреть сообщение
Насколько мне известно, в OpenGL такого атрибута нет.
C того момента как появились шейдеры в структуру вертекса каждый может ложить кто во что горазд. А споявлением геометрического/тасселяционного так вообще. К примеру вертекс может содержать координаты xy, вектор направления xy и индекс типа к примеру дома. А геометрический и тасселяционный шейдеры строят сам дом в нужном LOD по информации о типе хранимой в константном буфере или текстуре, и размещая его по z в соответствии с картой высот ландшафта.

Добавлено через 4 минуты
Цитата Сообщение от Igor3D Посмотреть сообщение
Есть еще один атрибут также хранимый в вертексах и передаваемый рендеру, т.к. сам рендер его знать/вычислить не может.
Могут передовать к примеру ID полигона. Могут передавать амплитуду и/или фазу/смещение фазы колебаний, для анимации в вертексном шейдере.

Добавлено через 3 минуты
Цитата Сообщение от Igor3D Посмотреть сообщение
Строго говоря это (еще) не рендер, а подготовка геометрии к нему
В том же солиде есть такая фишка что информация меша присутствует исключительно для видимых объектов (т.е. видимых в фрустуме). Как понимаю она в шейдере генерится, поэтому и присутствует только для отображаемых мешей и только тогда когда окно редактирования видимо.
0
3420 / 1607 / 236
Регистрация: 26.02.2009
Сообщений: 7,856
Записей в блоге: 5
01.03.2016, 11:37 8
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Могут передавать амплитуду и/или фазу/смещение фазы колебаний, для анимации в вертексном шейдере.
Это не атрибуты, а скорее - юниформы.
Igor3D, Я так понял вы хотите заранее написать "жёсткий код" для всех возможных атрибут? Но может стоит подумать о том как бы упростить добавление нового доселе неизвестного вам атрибута в рендер?
0
1824 / 732 / 99
Регистрация: 01.10.2012
Сообщений: 3,746
01.03.2016, 12:08  [ТС] 9
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
..в структуру вертекса каждый может ложить кто во что горазд.
Это само собой, но речь о стандартном атрибуте который работает без всяких шейдеров

Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
К примеру вертекс может содержать координаты xy, вектор направления xy и индекс типа к примеру дома. А геометрический и тасселяционный шейдеры строят сам дом в нужном LOD по информации о типе хранимой в константном буфере или текстуре, и размещая его по z в соответствии с картой высот ландшафта.
Я понимаю что это "к примеру". Если я хочу строить дома - почему бы это не сделать спокойно (и со всеми удобствами) до рендера? Народная примета: если обещаются "безграничные возможности" - то вещь спланирована из рук вон плохо. Шейдеры OpenGL - тот самый случай

Добавлено через 3 минуты
Цитата Сообщение от snake32 Посмотреть сообщение
Я так понял вы хотите заранее написать "жёсткий код" для всех возможных атрибут?
Нет, слава богу сейчас нет работы с OpenGL. Просто хотелось узнать как здесь обстоят с этим дела. Наверное в OpenGL этой техники нет, делают через glAccum
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
01.03.2016, 15:02 10
Цитата Сообщение от Igor3D Посмотреть сообщение
Просто хотелось узнать как здесь обстоят с этим дела.
Вот тут список атрибутов которые понимает Fixed Pipeline OpenGL
0
01.03.2016, 15:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2016, 15:02
Помогаю со студенческими работами здесь

Какие значения нужны нужны циклу while?
#include <algorithm> #include <iostream> #include <vector> using namespace std; int...

Что такое атрибуты и зачем они нужны?
Нужен человек, который может объяснить, что такое атрибуты и зачем они нужны, на как можно более...

Что такое атрибуты (dir) и зачем они нужны ?
может быть кто нибутъ объяснит что такое атрибуты и зачем они нужны ? a=1 a Out: 1 dir(a)...

Объясните понятным языком для чего нужны атрибуты сборки
Добрый день, Объясните понятным языком для чего нужны атрибуты сборки (SecurityCriticalAttribute,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru