Название: [SDK] второе дыхание Отправлено: Sqwer от 09 Января 2011, 17:13:32 Цитировать они доведут это дело до ума и будут продавать как виик. Смысла делать что-то для Квеста нет. ОН безбожно тупой и тормознутый. Покапался в СДК, примерно понял структуру этого движка. Как уже знаете, ядро определяет каналы. Каналы - объекты определённого класса. Базовый класс подовляющего числа каналов Aco_Chanel. От него наследуется функция CallChanel() или переопределяется в потомке И метод "вернуть указатель на потомка". Самое главное, что в каналах есть избыточная проверка типов, значений. (это сделано для художников, чтоб они случайно не подключили то, что нельзя подключать; идёт проверка на значения.. и тому подобное) всё это по чуть-чуть сжирает FPS :-\ Моглиб сделать что-то типа разделения редакций каналов: с проверками на исключительные ситуации , которые активны в режиме КвестЭдитора и без проверок в режиме ГотовыйСкомпилированныйПродукт (до конца не уверен, что такого нет... но икакой документации нам не дают)... И ещё однапроблема: чёрт с ними с этими стандартными каналами, всё можно свести к вызову 2ух каналов: StartChanel -> YouChanel ;D Я уже так и собирался сделать, НО!!! тут меня сильно обломали Кажется этот канал (StartChanel) перехватывает событие ДХ9 о потери устройства и автоматом реситит Д9 девайс. И все мои текстуры нужно перезагружать. Но как я пойму "когда это сделать?", если квест сам ресетит девайс. по сути есть в СДК класс "ПОЛЬЗОВАТЕЛЬ ДХ", у которого есть базовый метод "выполнить логику если ДХ9 ресетнули", которая по логике вещей должна вызываться автоматом ядром движка. Мои всевозможные опыты доказывают, что не работает этот метод. :'( На оффе молчат (http://forum.quest3d.com/index.php?topic=69752.0) , хотя проблему адресовали самому Ремке Якобсу. Все уповают на появление Квеста 5,0 , но чуда не будет. Квест останется таким же бажным медленным двигом. И на этом ЖИРНАЯ точка. Название: Differed Отправлено: Ruslan от 09 Января 2011, 18:27:08 Все знают, что редактор Квеста убогий!
Но это по сути мелочь. Мы написали свой экспортер из макса (то есть при построении сцены, полностью используем редактор макса) В самом максе на модели накидывается собственный шейдер, при экспорте учитываются все параметры и текстуры этого шейдера, также учитываются instans материалов и объектов. То есть объекты во вьюпорте макса выглядят так, как будут выгладить в движке (альбедо, нормал, спекуляр, отражения кубмапы) по нажатию кнопки экспорт, вся сцена сохраняется в собственном формате Замучили SDK, что бы грузить все ресурсы собственного формата.. все отлично, все работает! В планах было кроме канала загрузки ресурсов, написать канал собственного рендера, который работал бы очень быстро, в нем был бы зашит и фрустум.. можно было бы делать нормальный hardware instancing, на базе которого можно было бы делать свою траву, деревья, сетить много сотен источников света, и так далее.. НО столкнулись с проблемой, о которой выше написал Sqwer и эта неприятность, перечеркивает все благие начинания. Название: Differed Отправлено: Alteste от 09 Января 2011, 20:24:31 Печально :-[
Какие будут пути отхода? Может быть XNA? Название: Differed Отправлено: Sqwer от 09 Января 2011, 20:40:41 Цитировать Какие будут пути отхода? У нас с Русланом свой двиг на DX10 , активно использующий: 1) возможности DX10 по максимуму (геометрические шейдеры, рендер в кубу за 1 проход, полноценный (асинхронный по отношению к CPU) оклюжен квери и куча всего вкусного , что есть на 10 директе 8)); 2) D3DX (не всёж руками писать ;D) ; 3) STL (пусть нас будут ругать бородатые кодеры 90ых, но СТЛ не так и медленнен , если его уметь применять ;)) Цитировать Может быть XNA? Луч свой двиг на С++. С++ учится быстро, а ХНА требует .NET языка. С# сложен в освоении, но лёгок в применении. С++ обатно С#. С хной будут проблемы ресурсов, т.к. он их прекомпилит. Вторая проблема ХНЫ - как то вяло продвигается, ДХ10 так и не выпустили . Третья - изходит от проблем с "чисткой мусора", присущей всем .NET программам. Но в любом случае, заказчики определяют средство разработки. Всё зависит от PR , И квест тому - яркий пример. Он уже прилично уступает по всем параметрам другим движкам, но из-за промо всё ещё остаётся популярным. Лично по моему мнению набор D3DX - и есть конструктор не хуже квестового. Название: Differed Отправлено: Alteste от 09 Января 2011, 22:11:57 Не вижу никакой популярности квеста (если ввести "quest3d" в поисковик, то выдаст 1-офф сайт, 2 - наш форум, остальное - варз ресурсы и ГС на юкозе)
С чего посоветуешь начать одинокому любителю Real-Time технологий уходя от квеста? Направление деятельности - архвиз+интерактив. Название: Differed Отправлено: Sqwer от 09 Января 2011, 22:26:36 Цитировать С чего посоветуешь начать одинокому любителю Real-Time технологий уходя от квеста? вот это в закладки добавить http://www.gamedev.ru/лучше формировать своё мнение , чем навязывать. Название: Differed Отправлено: Sqwer от 10 Января 2011, 05:07:39 Таки удалось обмануть квест. :D
Ниже скрин - собственный рендер. От квеста взято только окно и ДХустройство. 8) Таким образом, можно на квесте достичь хорошей производительности, хотя и квестом это уже не назовёшь ;D Название: Differed Отправлено: Ruslan от 10 Января 2011, 05:53:09 хе хе
Походу теперь открылись следующие перспективы: - можно сетить столько источников света, пока не закончатся регистры на SM 3, т.е. до опы. - hardware instancing (свои частицы, трава, деревья) - отпала потребность в Квестовом ОО (можно в своем канале полноценно кодить используя ОО С++ ) - добротный экспорт из макса, при этом 3dMax это полноценный редактор. - отпала необходимость в глобал шейде, так как можно теперь напрямую сетить шейдера, текстуры, и все пораметры для шейдера. - STL (http://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%BE%D0%B2) - максимально быстрый рендеринг, без каких либо ограничений - библиотека D3DX (одно из самых полезных в ней это математическая библиотека оптимальная, с поддержкой SSE, кстати и работа с квантерионами) - сторонние библиотеки GUI, например можно попробовать заиспользовать вот эту: Gallery (http://www.cegui.org.uk/gallery/index.php) CeGUI (http://www.cegui.org.uk/wiki/index.php/Main_Page) CeGUI youtube (http://www.youtube.com/ceguiproject#p/u/8/Q2hbAIRZnSc) и т.д. :D http://www.youtube.com/watch?v=sALiuWg_I1k ;D Название: Differed Отправлено: Alteste от 10 Января 2011, 08:56:58 Ребята, поделитесь экспортером :) Либо сделайте ресурс на котором будете продавать свои разработки и плагины
Название: Re: [SDK] второе дыхание Отправлено: Sqwer от 10 Января 2011, 16:34:09 Alteste
Цитировать Ребята, поделитесь экспортером. формат закрыт и зашифрован - по сути это и есть та защита, которую невозможно взломать. (.exe ломануть можно)и по сути предназначается для другого движка NME. Этот формат - не Коллада, и по сему информация в нём строго определённая , именно под рендер и иерархию. Цитировать Либо сделайте ресурс на котором будете продавать свои разработки и плагины Если найдуться желающие приобрести, - по чему бы и нет.Но не стоит забывать, что ДХ9 всё же технология 10тилетней давности ,а кол-во обладателей программно-аппаратных средств с поддержкой ДХ10-11 уже больше 75%. Квесту не долго осталось. Политику разработчиков я не совсем понимаю. И без того малый штат , а распылились на 2 проекта Квест и СлайХ(Люмион). Продвижение новых технологий: многопоток, переход на ДХ10, новые 64_бит либы довольно болезнены, боюсь разрабы просто не потянут. :-[ Название: Re: [SDK] второе дыхание Отправлено: Alteste от 10 Января 2011, 20:32:51 Напрашивается вывод: нужно активно учить С++ и API DirectX
Название: Re: [SDK] второе дыхание Отправлено: Ruslan от 13 Января 2011, 14:50:36 Ура!!!
на офе ответили на вопрос проверили, все работает как нужно! http://forum.quest3d.com/index.php?topic=69784.new Название: Re: [SDK] второе дыхание Отправлено: Alteste от 13 Января 2011, 15:25:48 Так работает это в самом квесте то со стандартными каналами?
Название: Re: [SDK] второе дыхание Отправлено: Ruslan от 13 Января 2011, 15:34:53 Да, работает со стандартными каналами, но главная идея в том, что бы сделать свои каналы для загрузки ресурсов и их рендеринга.
В итоге, в одном канале, напрямую можно сетить шейдера, вертексные буфера, текстуры, организовать внутри канала цикл для рендеринга геометрии, делать проверку на невидимость, и много, много всего, оооочень быстро! + добавить пару каналов, для того что бы обмениватся ресурсами со стандартными каналами, тогда возможно использовать как свои ресурсы, так и стандартные! То есть, можно использовать на прямую DX9 без каких либо ограничений! Хорошо, что не повелись на Unity, там такое и не снилось.. Название: Re: [SDK] второе дыхание Отправлено: DimiS от 17 Января 2011, 13:40:08 почитал ваши темы на офф форуме... это ужос
ребята, начните с изучения английского "the team should be called" даже меня заставило задуматься на пару минут, что же это может значить но уж они то там никак не могут знать что team(команда/группа людей, напр. футбольная команда) на русский переводиться так же как и command(команда/приказ к исполнению) а в этом случае подошло бы и банальное function/method да и вообще англоязычных источников информации гораздо больше, и среди них практически всегда можно найти более качественные чем русскоязычные второе, берегите нервы, не надо закатывать панику каждый раз как у вас что-то с ходу не получилось к любой проблеме подходите с бульдожьей уверенностью, что решение существует Название: Re: [SDK] второе дыхание Отправлено: Ruslan от 17 Января 2011, 14:11:04 DimiS
мдя, хорошенькое дельце.. На ум не приходило, что у человека могут быть причины, по которым он не изучал английский язык? Даже не знаю, как мне тебя благодарить за столь ценную информацию ;) Пользуюсь вот этим: http://translate.google.ru/?hl=ru&tab=wT# За все время сколько помню, мне всего пару раз потребовалось задать вопрос иностранным гражданам, и как не парадоксально, но они меня поняли.. Как только посчитаю, что мне необходимо начать изучение английского языка, то непременно засяду за букварь. Если бы все были такие грамотные, и знали английский язык, то и смысла в этом форуме не было бы. Название: Re: [SDK] второе дыхание Отправлено: Nova от 17 Января 2011, 14:28:20 С таким переводом, моно себя узбеком почувствовать:)) Мне что-то совсем Английский не поддается изучению(( Да, это бы много проблем решило..
Название: Re: [SDK] второе дыхание Отправлено: Sqwer от 18 Января 2011, 00:49:11 Цитировать почитал ваши темы на офф форуме... это ужос в след раз задавать вопросы буду яребята, начните с изучения английского "the team should be called" даже меня заставило задуматься на пару минут, что же это может значить но уж они то там никак не могут знать что team(команда/группа людей, напр. футбольная команда) на русский переводиться так же как и command(команда/приказ к исполнению) а в этом случае подошло бы и банальное function/method хотя язык служит в коммуникационных целях, а раз Руслана понимают - то и ничего страшного. Из контекста явно понятно , что не про футбольную команду говориться. :D Цитировать да и вообще англоязычных источников информации гораздо больше, и среди них практически всегда можно найти более качественные чем русскоязычные прописные истины, большинство статей написаны на техническом инглише, который на порядок легче разговорного.Цитировать второе, берегите нервы, не надо закатывать панику каждый раз как у вас что-то с ходу не получилось не совсем согласен. Можно убить тьму времени на поиск верного решания так и не добившись его, а можно задать вопрос, сохранив время. Но это касается только эдвансед вопросов, а не туториальных. ::) к любой проблеме подходите с бульдожьей уверенностью, что решение существует Код: минуту спустя... Название: Re: [SDK] второе дыхание Отправлено: Ruslan от 18 Января 2011, 01:01:37 Наверное у DimiS есть причины высказать свое мнение в этой теме, ну да ладно.. неприятность эту мы переживем ;D
|