![]() |
Ответ: Clear Engine (Понятный движок)
Цитата:
|
Ответ: Clear Engine (Понятный движок)
Цитата:
загрузка изображения1 в атлас - получение текстурной координаты загрузка изображения2 в атлас - получение текстурной координаты билд атласа (создает текстуру внутри себя) создание изображение1, передав в атлас текстурные координаты1 создание изображение2, передав в атлас текстурные координаты2 |
Ответ: Clear Engine (Понятный движок)
Цитата:
Опытом проверится... на самом деле хз. |
Ответ: Clear Engine (Понятный движок)
Цитата:
|
Ответ: Clear Engine (Понятный движок)
добавил доки, правда их там мало не все успел написать
https://bitbucket.org/pozitiffcat/sl...oc/?at=default реализовал кучу функционала, которым можно воспроизвести работу Clear Engine. И даже более, единственное ограничение, это формат вершины, 96 байт positions, normal, texcoord, texcoord2, joint, weight, binormal, tangent. |
Ответ: Clear Engine (Понятный движок)
Цитата:
|
Ответ: Clear Engine (Понятный движок)
Цитата:
хотя как вариант хранить в поверхности еще и формат описывающий ее... --- хоят не не вариант. Я не могу для всех шейдеров хранить attribute location в поверхности |
Ответ: Clear Engine (Понятный движок)
ни одной модели не нужны все эти данные, большинство моделей не имеют скининга, а те кто имеют - редко требуют вторые UV.
тангент и бинормал ужимаются в один vec4. -- со страницы 19 можно почитать как жестоко ужимали вертексы в just cause 2: http://www.humus.name/Articles/Perss...GameWorlds.pdf вообще тут нет идеального варианта, в одном проекте могут юзаться разные структуры. |
Ответ: Clear Engine (Понятный движок)
запилил атрибуты
PHP код:
|
Ответ: Clear Engine (Понятный движок)
столько лишних слов...
это нифига не slim. |
Ответ: Clear Engine (Понятный движок)
Цитата:
Slim не в плане простоты, а в плане того, что движок не жирный. |
Ответ: Clear Engine (Понятный движок)
Кстати вот в d3dx есть такая штука id3dxeffect, которая позволяет более менее структурировать большое кол-во шейдеров, хотя конечно имхо от большого кол-ва шейдеров нужно по возможности избавляться. Можешь попробовать в opengl что-то подобное сам сделать.
Насчет Slim: с таким подходом он может превратиться либо в обертку вокруг opengl, которая не прибавляет функционала, но становится ненужным оверхедом, либо урезает функционал, что-то обобщает, но ничего полезного не добавляет, либо просто явлется контейнером всего что в нем лежит и опять же никакого толку - все компоненты можно использовать напрямую с тем же успехом без лишних заморочек. По моему убеждению движок должен не добавлять/обобщать/урезать функционал тех компонентов с которыми он работает, а интерпретировать высокоуровневую работу с абстрактными сущностями через эти низкоуровневые компоненты. Что ты понимаешь под простотой движка? Например кодить небольшие игры довольно просто на unity3d или blitz3d, однако их нельзя назвать оптимизированными по производительности. С другой стороны оптимизированный код обычно больше по размеру чем универсальный, потому что в нем может быть много частных случаев и ассемблерных вставок, он сложней для понимания и отладки. Так что имхо упрощать нужно архитектуру, убирать ненужный функционал, а также упрощать структуру и семантику кода пока это совпадает с повышением его производительности, и улучшением читабельности. Управление сложностью является решающим фактором успешного развития движка в будущем. Поэтому я бы еще раз обратил внимание на пост товарища jimon'а где то в начале темы - там он расписывал о driven data. Это удачное решение потому что позволяет четко распределить обязанности между движком и редакторами. Задача движка воспроизводить контент на разных платформах, с минимальным вмешательством программиста. Задача редакторов предоставить функционал движка разработчикам игр в наиболее подходящей для данного проекта форме. Тем самым подход становится более декларативным - мы даем движку контент и говорим что делать, а не как делать. Движок становится проще, а редакторы гибче, к тому же я могу на каждый проект сделать свой набор редакторов, и делать их по мере необходимости. |
Ответ: Clear Engine (Понятный движок)
|
Ответ: Clear Engine (Понятный движок)
|
Ответ: Clear Engine (Понятный движок)
|
Часовой пояс GMT +4, время: 14:55. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot