|
05.05.2009, 20:45
|
#61
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Enesea
Ну да какбы.. Но сам факт потдержки рендера в текстуру на дх есть, а на огл нету может там всёже есть какой-то способ?
|
(Offline)
|
|
20.05.2009, 22:40
|
#62
|
|
Ответ: Enesea
у меня тут пока учёба очень много времени отбирает, медленно но уверено движок портируется под линукс, сейчас все подсистемы движка работают (но пока не работают боковые кнопки мышки, не работает vsync и установка частоты монитора, не работает msaa, не работает изменение размера окна в fullscreen, не работает showcursor) и двиг уже сейчас держит много-оконный рендер ^_^
очень большой неожиданостью оказалось что wchar_t под линуксом имеет размер 32 бита (для справки - wchar_t это wide character тип, используется для unicode-строк, под windows он занимает 16 бит) пришлось жостко ограничить его размер в движке до 16 бит для всех платформ (у меня от его 16-битности очень-очень многое зависит)
таскать с собой зависимости под линуксом намного удобнее ^_^
после окончания портирования займусь за полное переписование системы материалов, система cgfx оказалось жудко тормозной, думаю писать свой run-time код управления шейдерами, но для компиляции использовать CG, таким образом избегаем зависимости от рендера
ps. если будет время и не будет таких "неожиданостей", то вполне возможно портировать двиг под mac os x (внутри двига всего на всего надо добавить два класса и добавить мелкое изменение в еще два)
ps2. squall есть только под виндой, думаю использовать fmod
Последний раз редактировалось jimon, 20.05.2009 в 22:53.
|
|
|
Эти 4 пользователя(ей) сказали Спасибо за это полезное сообщение:
|
|
26.05.2009, 18:36
|
#63
|
|
Ответ: Enesea
провожу сферические тесты в вакууме, рендер сильно ускорил по-сравнению со старым кодом (раз в 8-12, ибо некоторые вещи безбожно тормозили)
а теперь интересные картинки :
http://dump.jimon.org/enesea_revision6.jpg
http://dump.jimon.org/enesea_revision7.jpg
одинаковая сцена, одинаковый код (почти, версии отличаются только парой вещей которые не влияют на рендер) и что мы тут видим ?
скорость батчей разная - под линуксом это 0.5 мс, под виндой это 0.15 мс
драйвера почти одинаковые (может в этом проблема)
ps. фрустума и сортировки по-материалам нету, альфа сортировка включена, в сцене 441 куб и одна b3d модель (ну плюс линии дебага которых не видно и квад)
|
|
|
Сообщение было полезно следующим пользователям:
|
|
02.07.2009, 01:06
|
#64
|
|
Ответ: Enesea
работа понемногу начинает идти, почти закончил deferred shading, но для качественого внедрения его, необходимо еще много чего написать
и так разметка G-Buffer'а
в подальшем думаю изменить R32F для глубины на R24_G8 чтобы добавить stencil
из плюсов реализации вижу то что позиция востанавливается из экранной глубины, те DS использует один Z-Buffer
|
|
|
Эти 3 пользователя(ей) сказали Спасибо за это полезное сообщение:
|
|
31.07.2009, 19:25
|
#65
|
|
Ответ: Enesea
базовый deferred shading готов и уже лежит в ядре
разметка G-Buffer'а не менялась, разве что вместо RG16F может использоватся RGBA8 в ущерб качеству
но нужна оптимизация, 100 источников света на одной сфере дают 30 фпс без оптимизации, и 180 фпс с читерским костылём
сейчас в движке полное соответствие форвард контексту OpenGL 3.1, в прочем планируется 4 режима :
1) Legacy OpenGL (1.1), запустится даже если драйвера не установлены, но без всяких эффектов, освещения и тд
2) OpenGL 1.4, работа на ARB шейдерах, вполне должно хватить для форвард освещения
3) OpenGL 2.1, в общем тут полный функционал, используется GLSL 1.20
4) OpenGL 3.1, от 2.1 слабо чем отличается, используется GLSL 1.40
готов normal mapping, в ядро его вставлять смысла нету, ибо такой эффект уже делается только прибегая к изменению базы данных
ps. тут нету спекуляра, ибо он для этой модели как-то хитро считается
|
|
|
31.07.2009, 20:06
|
#66
|
Бывалый
Регистрация: 04.01.2008
Адрес: Казахстан \ Талдыкорган
Сообщений: 659
Написано 170 полезных сообщений (для 509 пользователей)
|
Ответ: Enesea
jimon
Что насчет OpenGL ES ?
__________________
Жизнь как говориться игра- делать игры моя профессия(с)
Программирование, это религия! Её нужно исповедовать.
|
(Offline)
|
|
31.07.2009, 20:11
|
#67
|
|
Ответ: Enesea
FDsagizi
в принципе заставить работать можно но у меня нету устройств чтобы тестить
|
|
|
05.08.2009, 13:58
|
#68
|
Бывалый
Регистрация: 04.01.2008
Адрес: Казахстан \ Талдыкорган
Сообщений: 659
Написано 170 полезных сообщений (для 509 пользователей)
|
Ответ: Enesea
Сообщение от jimon
FDsagizi
в принципе заставить работать можно но у меня нету устройств чтобы тестить
|
В пакете с iPhone SDK идет имулятор.
__________________
Жизнь как говориться игра- делать игры моя профессия(с)
Программирование, это религия! Её нужно исповедовать.
|
(Offline)
|
|
16.08.2009, 21:25
|
#69
|
|
Ответ: Enesea
потихоньку вожусь :
1) востановил фрустум куллинг (он вырезан был )
2) привязал к деферреду MSAA рендер буферы, но они дают некоторую погрешность, в принципе движок уже умеет рисовать с MSAA текстурами, но я не понял как с ними сделать рендер деферреда в другую MSAA текстуру
3) добавил глобальные шейдерные техники, в движке каждый шейдер должен иметь пару макросов, которые потом изменяются и шейдер перекомпилируется, нужно это для многопроходного рендера, к примеру ставим технику в рендер нормалей и делаем проход нормалей, ставим технику в рендер цвета - рендерим цвет и тд и всё это без изменения начальных шейдеров
4) добавил режимы совместимости, работают OpenGL 1.1,2.1,3.0,3.1,3.2
5) внедрил шрифты, написал ресурс шрифтов, подключил FreeType2, дописал битмап шрифты в Enesea Data Format, разбирался с типографикой
и вот результат разбирательства :
может я упустил что-то ?
конечно это самый простой рендер битмап шрифтов, нету поддержки под и надстрочных надписей и прочих извращений
ps. вот тут более очевидный пример кернинга
как видим буква 'e' немного заежает в область буквы 'T'
Последний раз редактировалось jimon, 16.08.2009 в 21:35.
|
|
|
Эти 3 пользователя(ей) сказали Спасибо за это полезное сообщение:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:24.
|