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

Все об устройстве и отрисовке сцены (5 стр)

Страницы: 14 5 6 711 Следующая »
#60
21:57, 30 апр. 2016

innuendo
> ECS это уровень gamelogic
Почему? Entity+Component это наполнение сцены, System это логика сцены.
Так что это очень даже уровень сцены.

Это база, на основе которой значительная часть вещей делается намного проще.

Пока единственным недостатком ECS является то, что я узнал о ней всего полгода назад.


#61
23:36, 30 апр. 2016

А есть какие-нибудь книжки описывающие устройство игровой сцены? Желательно на русском, но так как на русском 99% таких книжек нет, то можно и на английском.

#62
1:38, 1 мая 2016

Vlad2001_MFS
книжки людьми пишутся, и игры тоже. А как известно, сколько людей, столько и мнений. Зачем тебе это все? просто делай игру и набирайся опыта. Сколько бы ты ни прочел книг, пока ты сам что-то не сделаешь, у тебя не будет опыта.

#63
9:19, 1 мая 2016

-Eugene-
> Почему? Entity+Component это наполнение сцены, System это логика сцены.
> Так что это очень даже уровень сцены.

Мы говорим про World или про RenderScene (есть ещё AudioScene/PhysicScene)?

#64
10:34, 1 мая 2016

innuendo
> Мы говорим про World или про RenderScene (есть ещё AudioScene/PhysicScene)?
Т.к. в треде нет явного указания типа сцены, я посчитал, что речь идет о сцене в целом. Т.е. world.

#65
12:11, 1 мая 2016

-Eugene-
Ну так я же задал вопрос про RenderScene

#66
12:23, 1 мая 2016

innuendo
А я отвечал ТСу. И не понял, к чему ты вообще упомянул RenderScene в #52. Окей, я понял твой вопрос...

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

Ну вот например BVH-дерево сцены с нодами-объектами.
Как организовать это дерево так, чтобы в сцене была возможность рендерить модели (с инстансингом), свет (DS) и hm-террейн?
Пусть ноды виртуальные, что не очень круто по производительности.
Hardcore: организовать то же самое без виртуальных нод.

#67
12:28, 1 мая 2016

-Eugene-
> сли ты определяешь RenderScene как все то, что относится к рендерингу.

Вот и вопрос - зачем такая компонентная гибкость в RenderScene, где всё чётко направленно на рендеринг ?

> Ну вот например BVH-дерево сцены с нодами-объектами.

Зачем дерево в RenderScene ?

#68
12:47, 1 мая 2016

innuendo
> Вот и вопрос - зачем такая компонентная гибкость в RenderScene, где всё чётко
> направленно на рендеринг ?
Окей. Твои предложения, как это организовать иначе?

> Зачем дерево в RenderScene ?
Куллить объекты линейным перебором будешь?

#69
12:51, 1 мая 2016

-Eugene-
> Окей. Твои предложения, как это организовать иначе?

Никаких ESC. Элементы renderScene это mesh/partiсles/light и тд

> Куллить объекты линейным перебором будешь?

Да. Можно сделать зоны

#70
12:56, 1 мая 2016

innuendo
> Никаких ESC. Элементы renderScene это mesh/partiсles/light и тд
Да. И? Как ты предлагаешь хранить и обрабатывать все это?

> Да. Можно сделать зоны
Это и есть дерево, только вырожденное в два уровня - root:regions:objects. Зачем? И как определить оптимальный размер этих зон?

#71
13:01, 1 мая 2016

-Eugene-
> Как организовать это дерево так, чтобы в сцене была возможность рендерить
> модели (с инстансингом), свет (DS) и hm-террейн?
Подсунуть шаблонный класс с реализацией сбора списка видимых объектов, объектов для инстансинга, списка источников света, другие списки объектов(к примеру для рендеринга отражений в воде) и т.д.
Узел дерева будет вызывать  метод класса и говорить ему еще дополнительную удобную информацию, например узел дерева виден полностью или нет. 
Но щас программист кубиков-диванный теоретик щас расскажет как организовано в готовых движках.

#72
13:10, 1 мая 2016

Andrey
> Но щас программист кубиков-диванный теоретик щас расскажет как организовано в
> готовых движках.

В каких игровых проектах есть твой движок-код ?


-Eugene-
> Да. И? Как ты предлагаешь хранить и обрабатывать все это?

std::vector<RendeSceneObject*> для начала


> Это и есть дерево, только вырожденное в два уровня - root:regions:objects.
> Зачем? И как определить оптимальный размер этих зон?

Нету иерархии. Например по terrainSector

#73
13:15, 1 мая 2016

innuendo
> В каких игровых проектах есть твой движок-код ?
а это тут причем?
> std::vector<RendeSceneObject*> для начала
о да. сразу чувствуется опыт.

#74
13:20, 1 мая 2016

Andrey
> > В каких игровых проектах есть твой движок-код ?
> а это тут причем?

Вопрос закрыт ?

> > std::vector<RendeSceneObject*> для начала
> о да. сразу чувствуется опыт.

Да, могу много рассказать за опыт

Страницы: 14 5 6 711 Следующая »
ПрограммированиеФорумГрафика

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