Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Отсечение невидимой геометрии (11 стр)

Отсечение невидимой геометрии (11 стр)

Страницы: 110 11 12 1316 Следующая »
barnesПостоялецwww29 сен. 20179:47#150
Daniil Petrov
> А что такое BPS?
Это шутка юмора такая?)
innuendoПостоялецwww29 сен. 20179:49#151
barnes
> > А что такое BPS?
> Это шутка юмора такая?)

Он будет очень долго выяснять что такое BPS :)

Daniil PetrovПостоялецwww29 сен. 20179:52#152
Фу ты :))) BSP - это что?

MrShoor
> Если нормаль плоскости не единичная, то проверять надо вот так:
Тоже неправильно работает :) даже если убрать glm::normalize плоскостей.

g-contПостоялецwww29 сен. 201710:47#153
BPS - Bytes Per Second
0xc0deПостоялецwww29 сен. 201710:58#154
Daniil Petrov
> Фу ты :))) BSP - это что?

http://www.letmegooglethat.com/?q=bsp

Daniil PetrovПостоялецwww29 сен. 201711:03#155
0xc0de
> http://www.letmegooglethat.com/?q=bsp
А там хотя бы одна ссылка есть по существу?
0xc0deПостоялецwww29 сен. 201711:29#156
Daniil Petrov
> А там хотя бы одна ссылка есть по существу?

Есть

mingwПостоялецwww29 сен. 201711:39#157
Ребята.... вы все тут такие умные - прям вах! Однако забыли самый базовый принцип оптимизации рендеринга - это сортировка полигонов и рисование их от ближнего к дальнему, благодаря этому, полигон (а точнее пиксель), который перекрыт не пройдет проверку на глубину при растеризации и будет отброшен. Только с прозрачными полигонами так не выйдет - их нужно рисовать от дальнего к ближнему.
0xc0deПостоялецwww29 сен. 201711:40#158
0xc0de
> Daniil Petrov

Рассказываю, как пользоваться интернетом :)
1. Переходишь по той ссылке
2. Сразу же в первых рядах вылезает википедия https://ru.wikipedia.org/wiki/BSP
3. Заходишь в раздел "В информатике":
    Bulk synchronous parallel[en] — абстрактная модель параллельных вычислений
    Business System Planning — методология разработки информационных систем.
    Binary Space Partitioning — структура данных; используется, например, для отображения трёхмерной графики.
    Business Server Pages - технология SAP для динамической генерации HTML.
    Board Support Package — в операционных системах: код для поддержки конкретной аппаратной платформы.
4. Находишь слова "трехмерная графика"

barnesПостоялецwww29 сен. 201711:42#159
Парни, вы его запутаете только) Короче BSP это формат уровней квейка. Просто и понятно.
0xc0deПостоялецwww29 сен. 201711:42#160
mingw
> сортировка полигонов и рисование их от ближнего к дальнему

Полигоны сейчас никто не сортирует. Модели хранятся в памяти буферами и рисуются часто инстансингом. Для целей early-z test делают дополнительный проход в буфер глубины перед основной отрисовкой.

zavod3DПостоялецwww29 сен. 201712:35#161
> Модели хранятся в памяти буферами
Как лучше хранить меши с небольшим (до 200) числом полигонов - каждому по буферу вершин и индексов или как-то можно объединять?
Вот такие размышлизмы:
Если запихивать модели с одним материалом в один вершинный буфер насколько там их уместится, то сократится число переключений вершинного буфера - не знаю насколько это повысит производительность движка. Тут возникает другая проблема - модели в одном буфере вершин могут быть расположены далеко друг от друга на сцене и часть моделей может быть не видна в камеру (причем видимые и невидимые меши могут чередоваться в буфере, что снижает пользу их нахождения в одном буфере).
zavod3DПостоялецwww29 сен. 201712:38#162
Кто-нить слышал об adaptive BSP?
0xc0deПостоялецwww29 сен. 201713:11#163
zavod3D
> Как лучше хранить меши с небольшим (до 200) числом полигонов - каждому по
> буферу вершин и индексов или как-то можно объединять?

Зависит от ситуации.

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

Необязательно объекты могут иметь один материал, чтобы лежать в одном буфере. Ты можешь хоть все меши запелить в один буфер, а потом рисовать их с заданными оффсетами внутри буфера индексов.

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

Зачем рисовать сразу весь буфер, рисуй только те чанки буфера, которые видны.

zavod3DПостоялецwww29 сен. 201713:19#164
0xc0de
>Зависит от ситуации.
Я, поэтому, и подумываю сделать в конвертере моделей возможность указания ID вершинного и индексного буфера. в которые нужно грузить меш.

> Необязательно объекты могут иметь один материал, чтобы лежать в одном буфере.
Ты про разные части одной модели, которым назначен разный материал (сабсеты в ID3DXMesh)?
Да, логично, напрмер, меши металлического кузова, резинового колеса и кожетканевой обшивки держать в одном месте (буфере), так как автомобиль обычно тестирую на видимость/невидимость целиком.
> Зачем рисовать сразу весь буфер
Хотел сократить число вызовов  DrawIndexedPrimitive
> Ты можешь хоть все меши запелить в один буфер
Ну это вряд ли, емкость буфера ограничена 16 битным беззнаковым целым

Страницы: 110 11 12 1316 Следующая »

/ Форум / Программирование игр / Графика

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

2001—2018 © GameDev.ru — Разработка игр