Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.04.2013, 21:03   #11
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
По умолчанию

Цитата:
Ну и общая последовательность: сначала все непрозрачные (желательно от ближних к дальним), затем все (полу-)прозрачные (строго от дальних к ближним).
Ага. Значит.

Сначала рисуем не прозрачное от ближайших до дальних.
0. Очистка
1. Руки
2. Домики
3. Фон - небо

Затем рисуем прозрачные от дальних к ближним.
4. частицы битого стекла.

Каким-то диким солнечным эффектом.
Затем проходим постэффектом блюр.

Вот кстати оно же не все сразу рисуется, а теми частями что видно игроку.
Оптимизации какие-то должны быть.
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума Ответить с цитированием
Старый 01.05.2013, 00:42   #12
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

[offtop]А че за игра?[/offtop]
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 01.05.2013, 01:12   #13
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

[offtop]
ACE Valery, Bioshock Infinite (так и думал, да и гугл подтвердил).
[/offtop]
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 01.05.2013, 11:00   #14
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от intmain Посмотреть сообщение
Вот кстати оно же не все сразу рисуется, а теми частями что видно игроку.
Оптимизации какие-то должны быть.
Порядок отрисовки - и есть один из элементов оптимизации.
Только с этим элементом оптимизацией не нужно перебарщивать - сортировка может занять больше времени, чем выигрыш от вывода в оптимальном порядке. Поэтому я и написал, что для непрозрачных объектов это лишь желательно. Если, скажем, мы находимся в кабине, то и без сортировки понятно, что элементы кабины будут к нам ближе, чем любой предмет за пределами кабины.

Или речь об отсечении невидимых объектов?
Тогда это отдельный и достаточно объемный вопрос.
s-andriano вне форума Ответить с цитированием
Старый 01.05.2013, 18:12   #15
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
По умолчанию

Цитата:
Или речь об отсечении невидимых объектов?
да вот об этом.
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума Ответить с цитированием
Старый 01.05.2013, 19:33   #16
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от intmain Посмотреть сообщение
да вот об этом.
Это достаточно сложный вопрос и решается он совместными усилиями дизайнера уровней и программиста.
s-andriano вне форума Ответить с цитированием
Старый 01.05.2013, 19:53   #17
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
Лампочка

Цитата:
Это достаточно сложный вопрос и решается он совместными усилиями дизайнера уровней и программиста.
Да уж, придется мне с собой договариваться и решать.

В общем виде теперь имеем такую картину:
- Обновление игровых объектов (Всех объектов, они могут постепенно попасть в поле зрения)
- Отсечение невидимых объектов (Простейший метод проверки, расстояние до камеры ).
- Прорисовка видимых (постами ранее описано ).
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума Ответить с цитированием
Старый 02.05.2013, 14:20   #18
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от intmain Посмотреть сообщение
- Отсечение невидимых объектов (Простейший метод проверки, расстояние до камеры ).
Простейший - это попадание в пирамиду видимости. Т.е. кроме дальней плоскости проверка еще 4-х плоскостей. Ну не нужно пытаться рисовать то, что у тебя за спиной!

Но перед этим крайне желательно провести отсечение объектов, которые не могут быть видны в соответствии с имеющейся геометрией уровня. Например, находятся за стеной.
s-andriano вне форума Ответить с цитированием
Старый 02.05.2013, 16:08   #19
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
По умолчанию

Цитата:
Простейший - это попадание в пирамиду видимости.
Пирамида сложнее уже.
Туман + проверка радиуса до тумана. Еще по идее можно усложнить проверкой дот продукта нормалей взгляда камеры и нормалей от объектов к камере dot(normalize(Camera.look), normalize(Obj[i].pos – Camera.pos)), вроде в каком-то случае получим отрицательные значения, т.е. объект за спиной. а везде где положительные значения объект перед камерой. Мы как бы получается проверяем сначала радиус, а потом еще отсекаем плоскостью задние объекты. Я еще не пробовал этот метод, но мне кажется он чуть проще чем проверка на попадание во фрустум камеры.

Цитата:
Но перед этим крайне желательно провести отсечение объектов, которые не могут быть видны в соответствии с имеющейся геометрией уровня. Например, находятся за стеной.
а как это делают ?
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума Ответить с цитированием
Старый 02.05.2013, 16:54   #20
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от intmain Посмотреть сообщение
Туман + проверка радиуса до тумана.
Туман нужен далеко не всегда. А потому - неэффективно.
Цитата:
Еще по идее можно усложнить проверкой дот продукта
По-русски это называется векторным произведением.
Цитата:
Я еще не пробовал этот метод, но мне кажется он чуть проще чем проверка на попадание во фрустум камеры.
А я пробовал пирамидой видимости - ничего сложного в этом нет.
Цитата:
а как это делают ?
Как раз эта часть допускает огромное количество вариантов. Например, BSP.
s-andriano вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа для рендера goldteef Помощь студентам 1 19.12.2011 00:21
Реверс инжиниринг Поиск Фриланс 0 15.01.2011 12:38
Передача скриншота rust-02 Работа с сетью в Delphi 2 14.10.2010 11:50