Войти
ПрограммированиеФорумГрафика

Пару вопросов по ОпенГЛ (2 стр)

Страницы: 1 2 3 422 Следующая »
#15
19:48, 21 авг. 2013

asvp, русская спецификация не очень полная ,англ. версия намного лучше


#16
22:40, 21 авг. 2013

Спасибо за ответы)

#17
18:36, 24 авг. 2013
И снова я)

1. Есть что-нибудь быстрее glDrawElements?
2. Правильно ли я понимаю, что при использовании glDrawElements данные нужно держать в таком виде: (X Y Z) (U V) (NX NY NZ)?
Получается, что для одной вершины могут быть разные координаты нормалей и поэтому в памяти будут дублироваться координаты вершины.
Можно ли этого как-то избежать?

#18
18:50, 24 авг. 2013

> 1. Есть что-нибудь быстрее glDrawElements?
В специфических ситуациях glDrawRangeElements может быть быстрее, если того захотят дрова.

> 2. Правильно ли я понимаю, что при использовании glDrawElements данные нужно держать в таком виде: (X Y Z) (U V) (NX NY NZ)?
Да. Но не обязательно строго так.
Данные также могут лежать в разных буферах - [(x y z), (x y z),(x y z)], [(u v),(u v),(u v)], [(nx ny nz),(nx ny nz),(nx ny nz)]. Но это несколько хуже для кеша, поэтому интерливнутый вариант производительнее.

> Получается, что для одной вершины могут быть разные координаты нормалей и поэтому в памяти будут дублироваться координаты вершины.
Да. Поэтому не надо называть позицию вершиной. Т.е. в редакторе оно вершина, но в терминах видухи - нет.

>Можно ли этого как-то избежать?
Любые альтернативы будут стоить потерь в производительности, причем иногда очень значительно.

#19
18:56, 24 авг. 2013

RPGman, спасибо

#20
14:54, 19 окт. 2013

1. Какая техника для вычисления динамических теней от точечных источников света наиболее быстрая? Какая наиболее легкая в реализации? Какие могут быть подводные камни?

2. Стоит ли использовать точечные источники света повсеместно?

3. Как правильно ограничить fps? например max 60 fps.

3. Есть треугольник на весь экран. на него накладывается текстура, заведомо меньшая размеров треугольника. Текстура растягивается на весь треугольник. Можно ли сделать, чтобы она повторялась по треугольнику, а не растягивалась?

#21
15:08, 19 окт. 2013
3. Есть треугольник на весь экран. на него накладывается текстура, заведомо меньшая размеров треугольника. Текстура растягивается на весь треугольник. Можно ли сделать, чтобы она повторялась по треугольнику, а не растягивалась?

указывать текстурные координаты не 0-1,а 0-2(для двойного повторения),0-3 для тройного и тд
#22
15:11, 19 окт. 2013

Nerevar
> указывать текстурные координаты не 0-1,а 0-2(для двойного повторения),0-3 для
> тройного и тд

А если заранее не известен размер треугольника?

#23
15:31, 19 окт. 2013

ialexbr
1. Cube SM достаточно прост. Есть трапециоидальные варианты, но они сложнее.
2. Один точечный источник = шесть направленных (для куб-шмапа)
3. VSyns
3. Как это не известен? А что ты на рендер посылаешь?

#24
16:06, 19 окт. 2013

-Eugene-

1. Думаю, что его и реализую. Есть какие-нибудь толковые статьи на русском и желательно Си/C++?

2. Да да, тоже так думал и читал.. Но мне кажется это расточительно..

3. Может VSync? А то Google не знает Vsyns :)

4. Я к тому, что меня есть модель комнаты, большая. На стены накладывается текстура, маленькая, но она растягивается. Хотелось бы не проверять для каждой модели ее размеры по сравнению с текстурой и вручную не изменять текстурные координаты, чтоб текстура повторялась. Хотелось бы, чтобы OpenGL сам повторял. Например задать какой-нибудь параметр glTexParameteri(...)
Тут появилась идея.. Может быть Blender'ом можно это сделать.. Т.е. чтобы он выдавал нужные текстурные координаты, не увеличивая количества полигонов в модели

#25
19:50, 20 окт. 2013

Есть шейдер. В него передается текстура:

sampler2D texture;
Накладывается текстура так:
gl_FragColor *= texture(material.texture, fragment.texcoord);

У разных моделей текстура либо есть, либо ее нет. Как сделать так, чтобы на те модели, у которых нет текстуры, не накладывалась текстура от предыдущей обработанной модели? (модели рисуются в цикле)

#26
19:59, 20 окт. 2013

ialexbr
> Как сделать так, чтобы на те модели, у которых нет текстуры, не накладывалась
> текстура от предыдущей обработанной модели?
Либо заменить шейдер, либо использовать белую текстуру.

#27
22:35, 20 окт. 2013

gammaker
> Либо заменить шейдер, либо использовать белую текстуру.
Печально..

#28
2:24, 27 окт. 2013

Есть геометрия из 450 000 треугольников и все находятся в кадре. Использую VBO, VAO, шейдеры, в шейдере считаю свет по Фонгу, на сцене один динамический точечный источник света, тени не рассчитываются, у каждой модели есть свой материал и на модели накладывается текстуры. Видеокарта: GeForce 410M/PCIe/SSE2.
Прога выдает 49-50 fps, это нормально или у меня руки кривые?

#29
3:51, 27 окт. 2013

ialexbr
> Печально..
Текстура 1x1, это веселее, чем менять шейдер.

Страницы: 1 2 3 422 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.