![]() |
Ответ: axelynx
Цитата:
я считаю на CPU только MVP матрицу (model_view_prj) ибо для мобильников множить три матрицы в вертексном шейдере довольно медленно, сами же вершины геометрии множатся на матрицу в вертексном шейдере, кроме спрайтов и текстов, чтобы рисовать спрайты и тексты вместе за один дип приходится их складывать в один батч, при добавлении их в батч я и множу их вершины на MV матрицу (model_view), умножение на Prj матрицу уже идет в шейдере для всего батча (ессно если две камеры рисуют разные спрайты то это уже будет 2 дипа) |
Ответ: axelynx
Цитата:
если складываешь в батч только кубы в этой демке - то это InstancedEntityCost. если рисуешь каждый своим дипом или складываешь в батч любую геометрию, или это автоматом определяется (например судя по количеству вершин) - то это EntityCost. ибо Entity могут быть с разными шейдерами, текстурами, блендингом и т.д. в общем, если пользователь просто создает ентити, а оно батчится автоматом, то ето EntityCost, если пользователь создает специальную группу, или еще там как-то, то это InstancedEntityCost. |
Ответ: axelynx
Цитата:
1) появился только в opengl es 3.0 2) я не нашел ему применения в реальных играх ps. если реально в такой демке сделать разные материалы и текстуры - видеодрайвер умрёт, можешь проверить |
Ответ: axelynx
Вообщем либу собирать не стал (уж больно она огромная), использовал уже собранную. Собираю проект. Собрался.
Код: Код:
#include <axelynx/axelynx.h> Цитата:
лог создался, но он пустой. ЧЯДНТ? |
Ответ: axelynx
Цитата:
Цитата:
Den все правильно сделал. что попросил движок - то он и сделал. инициализировался и тупо закрылся. хочешь что-то увидеть - создай окно. Код:
#include <axelynx/axelynx.h> |
Ответ: axelynx
Цитата:
Лог: Код:
succers: 512 XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0" after 2466 requests (2466 known processed) with 0 events remaining. |
Ответ: axelynx
holydel А у тебя реально работают несколько окон с выводом в каждое разных сцен?
|
Ответ: axelynx
Цитата:
|
Ответ: axelynx
Цитата:
|
Ответ: axelynx
Цитата:
надо будет немного менять архитекутуру в получении Canvas-ов, и там вывод 2д графики. Цитата:
в самом html-файле логов ничего нет? окошко как я понял не появилось? |
Ответ: axelynx
там какая то фишка с переключением контекстов при рендере в разные окна... причем не кроссплатформенная вроде...
|
Ответ: axelynx
окна тоже не кроссплатформенны.
думаю будет либо как-то так: Код:
Camera *cam1 = scene1->AddCamera(win1->GetCanvas()); Код:
win1->SetCurrent(); |
Ответ: axelynx
Цитата:
окошко создалось |
Ответ: axelynx
Цитата:
|
Ответ: axelynx
Цитата:
Цитата:
|
Ответ: axelynx
А можно сделать так:
Окна разные, следственно канвы разные, а контекст один. Далее, Создавая разные окна для них будет автоматом создаваться своя сцена. Далее есть два цикла обработки окон (в данном случае, я как понимаю callback функции). И далее в этих уже функциях идёт своя обработка для определённой сцены. Но тут маленькая неприятность - если на второе окно установить сцену из первого, тогда цикл обработки второго окна - не уместен? Получается цикл обработки идёт не на окно, а скорее на сцену? Мде, понесло меня.. |
Ответ: axelynx
Цитата:
Цитата:
Цитата:
|
Ответ: axelynx
Для 3d редактора юзают вьюпорты одного окна. но всеже чем гибче тем лучше
|
Ответ: axelynx
Замечания по новой версии:
1) axelynx::MouseY(), axelynx::MouseX() возвращают координаты относительно окна, а axelynx::SetMousePos() устанавливает координаты глобально. Как-то не сходится. 2) _surface->Resize( tris, verts ) CreateSurface( verts, tris ) Параметры поменяны местами. Не страшно, но сначала не заметил и получил ошибку. 3) Установка вершин списками работает, но еще бы и индексы вершин треугольников так задать. 4) Не хватает функции GetRotation() |
Ответ: axelynx
1, 2, 3 спасибо, не заметил. Исправлю.
4 - в углах Эйлера чтоли? Такого не будет скорее всего. Всетаки ориентация хранится в кватернионах |
Ответ: axelynx
Получение поворота надо. вдруг юзер захочет прикрутить другой физический движок... или еще чего...
|
Ответ: axelynx
1) Что-то не то с axelynx::Camera::ST_LEFT_HANDLE. Если его установить, то вижу только черный экран.
2) SetVerticesTexCoords() ругается: "Нарушение прав доступа при чтении". Видимо в memcpy указан размер vec3 вместо vec2. 3) axelynx::quat::ToMat3 возвращает пустую матрицу. 4) Предлагаю в axelynx::quat добавить методы: Код:
axisX() { return vec3( 1 - 2*y*y - 2*z*z, 2*x*y - 2*z*w, 2*x*z + 2*y*w ); } Код:
axelynx::Window::SystemHandle handle( MySystemHandle ); |
Ответ: axelynx
Цитата:
Цитата:
\\правка - так и есть :) Цитата:
возможно после последних правок что-то слетело. Цитата:
Цитата:
|
Ответ: axelynx
Цитата:
|
Ответ: axelynx
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
Ответ: axelynx
Цитата:
+ я не знаю пока как мне собрать deb пакет. просто выложить хидеры и so-шки чтобы можно собирать версии под линукс я могу и щас. но это не спортивно. хочу sudo apt-get axelynx. вывод текста пачками (StartDraw / EndDraw давно не проверял), спасибо за находку ошибки :) ппц баг. похоже он был всегда. но так как я текст выводил мелко - то тупо его не замечал. нашел еще один баг с текстом - что бралась по краям буквы текстура с соседней буквы. и получались иногда некрасивые вертикальные полоски. ети два бага тоже пофиксил. |
Ответ: axelynx
Еще вопрос: текстурные координаты считаются от правого нижнего края изображения - это ошибка или в ОГЛ так заведено?
|
Ответ: axelynx
в ОГЛ так заведено - но во всяких прямоугольниках и прочем 2д я инвертировал это. чтобы считалось от правого верхнего края. если где-то считается от правого нижнего - то это ошибка.
естественно, для пользовательских фигур этого нет. там надо учитывать, что по огл считает стартовым именно нижний левый угол. и при рендере в текстуру это надо учитывать тоже, да. немного посидел над профайлером и увеличил скорость вывода статического текста (через StartDraw / EndDraw) на 30%. |
Ответ: axelynx
С правого верхнего? А не с левого верхнего обычно?
|
Ответ: axelynx
ой. конечно с левого. и верхнего и нижнего, но левого.
|
Ответ: axelynx
слушай, каким и как ты пользуешься профайлером?
пробовал какими то стандартными средствами студии, толи не понял, толи отстой непонятный... можешь ссылку кинуть на то чем ты пользуешься |
Ответ: axelynx
стандартным профайлером 2012-й студии. intrusive режим. быстро и качественно. не реклама.
|
Ответ: axelynx
хм.. спасибо, я 2012 еще в глаза не видел если честно =)
|
Ответ: axelynx
Вложений: 1
ну он на самом деле такой-же и в 2010-й практически ))
вроде все что нужно в нем есть: Вложение 17495 |
Ответ: axelynx
перевел перемножение матриц на SSE. правда серьезного прироста производительности это не дало.
|
Ответ: axelynx
Вложений: 1
Што тут не так?
|
Ответ: axelynx
солюшен под 2012 студию. но он по идее должен был быть только в репозитоии О_о. в инсталяционных пакетах должны были быть солюшены только для 2010 студии.
|
Ответ: axelynx
У меня 12 студия
|
Ответ: axelynx
какая версия движка? 1.08? 1.085?
|
Ответ: axelynx
1.085
________ Все разобрался, у меня криво стоит студия. |
Ответ: axelynx
оказалось, что не все работает из-под коробки в 2012 студии. буду исправлять.
|
Ответ: axelynx
|
Ответ: axelynx
Помню ты что-то волуметрическое делал на шейдерах..
Тут наткнулся на прикольные гифки фруктов, если взять и разбить на 3д текстуру, было бы круто увидеть в волуметрии.. http://www.buzzfeed.com/atmccann/7-f...t-to-eat-again |
Ответ: axelynx
HolyDel ,
вот есть еще такой современный движок Horde3D под OGL... Чтобы ты про него мог сказать в сравнении с твоим движком...? просто интересно...:) Скажем почему нужно писать свой если есть уже Хорда? |
Ответ: axelynx
посмотри на синтаксис хорды;
http://www.horde3d.org/docs/html/_tutorial.html он сильно избыточен на мой взгляд. сравни с моим: http://likosoft.com/axelynx_wiki/ind...l:loading_mesh код прост и лаконичен (ну тут конечно - каждому свое). C-API интерфейс движка конечно поможет его много где использовать, в отличии от интерфейса на классах, но интеллисенс не подскажет если что. Далее, у них минимальная поддержка SM2 (а значит никаких геометрических шейдеров, у меня SM4) По фичам - их у хорды больше, чем у меня. Но у меня есть довольно таки современные фичи - вроде загрузки шейдеров из бинарников, а них нет. ну и еще у меня есть клевый инстеллер и мастера )) т.е. даже новичок сможет мой движок поставить и использовать. код хороший у них, да. а у меня и вовсе закрытый )) Цитата:
ну или на шарпе можно писать так: Код:
static class Program |
Ответ: axelynx
а тени есть?
и какие? И вообще сделай нормальную страничку про все фичи движка! - физика, - поддерживаемые форматы моделей, спрайтов, текстур ( обязательно collada) - тени, эффекты, шейдеры. - математика, катернионы, чилды-паренты - добавление партиклов всяких. - поддержка сети, звука - есть/нет. - многопоточность, мютексы... Чтобы не искать код по всяким гуглам, а сразу понять подойдет он или нет! И на русском тожа!!! А то хрен кого заинтересуют твои вирши... |
Ответ: axelynx
теней из под коробки нет (возможно и не будет, ибо project specific)
есть демка с тенями от точечного источника физика - в движке есть булетовсякая физика. мягких тел возможно не будет ибо они не поддерживаются на мобильных платформах. или я подниму требования к железу и под платформы попадут только девайсы с OpenCL. эффекты какие хотите - такие пишите, с шейдерами также. есть небольшой набор шейдеров в библиотеке но на них одних проект не вытянуть. нужно писать свои. >математика, катернионы, чилды-паренты ыращение в катернионах, математика векторная есть, чилды-паренты неограниченной вложенности есть. >поддержка сети, звука - есть/нет. насчет сети не знаю - звук был в планах. >многопоточность, мютексы... внутри движка они будут - на ружу выноситься нет. >И на русском тожа!!! к сожалению я не могу писать чисто на английском, скилов не хватает. если бы мог - писал бы. >А то хрен кого заинтересуют твои вирши... в собственных проектах используется. небольшие демки/игры, заставки и прочие мелочи. для ААА проектов не подойдет. еще раз - библиотека позиционируется как мультимедийный фреймворк с которым очень несложно начать работать (во многом благодаря инсталяторам и мастерам, попробуй начать работать с иррлихтом или огром - их пока соберешь да запустишь уже изматеришься). Он НЕ позиционируется как code-driven замена юнити или чего-то подобного. практика показывает, что люди даже без справок умудрялись делать на нем графические демки. |
Ответ: axelynx
Мне тоже очень понравился движок. Но пока что из-за некоторых проблем приходится пользоваться иррлихтом... Поскорей бы их решить. Да и любой движок подойдет для ААА, самое главное это прямые руки программиста)
|
Ответ: axelynx
|
Ответ: axelynx
-теней из под коробки нет (возможно и не будет, ибо project specific)
есть демка с тенями от точечного источника хренова братец, не люблю голову ломать над реализацией очевидного. -эффекты какие хотите - такие пишите, с шейдерами также. есть небольшой набор шейдеров в библиотеке но на них одних проект не вытянуть. нужно писать свои и это хренова, получается ты для себя в основном делал... -многопоточность, мютексы... внутри движка они будут - на ружу выноситься нет. тоже хреново при замашке на кросплатформенность -И на русском тожа!!! к сожалению я не могу писать чисто на английском, скилов не хватает. если бы мог - писал бы. Так и на русском нет ведь странички нормальной! -А то хрен кого заинтересуют твои вирши... в собственных проектах используется. небольшие демки/игры, заставки и прочие мелочи. для ААА проектов не подойдет. Ну я так и понял - для себя... -еще раз - библиотека позиционируется как мультимедийный фреймворк с которым очень несложно начать работать (во многом благодаря инсталяторам и мастерам, попробуй начать работать с иррлихтом или огром - их пока соберешь да запустишь уже изматеришься). Вот не люблю я мастера!!! Лучше иметь хорошее описание и самому настроить студию или фреймворк, чтобы потом не было дурацких вопросов и глюков!!! Кстати Ирлихт настраивается на раз и без проблем! А вот в ОГРЕ уже есть мастера и там блин можно лоб расшибить если ты новичек. -Он НЕ позиционируется как code-driven замена юнити или чего-то подобного. практика показывает, что люди даже без справок умудрялись делать на нем графические демки Сделать простенькую графическую демку - это ерунда. Людям нужен нормальный движок , а не полуфабрикат. Но я уже понял твой подход и позицию... И поэтому не буду предъявлять дальнейших претензий :) |
Ответ: axelynx
|
Ответ: axelynx
falcon
Да я уже понял, что фреймворк. Просто в первом посте написано было что движок... Интересно тогда, кто еще им пользуется ??? :) |
Ответ: axelynx
|
Ответ: axelynx
Цитата:
часто ГАПИ слишком низко, движки - громоздко и перенасыщено. внешне у axelynx неплохой апи, хотя есть некоторые недостатки. мне - то что надо) |
Ответ: axelynx
Я также буду юзать. Т.к. мне нужен мощный со спрайтами фреймворк для экстремальных сессий программирования визуальных демок на основе realtime спектра частот на DJ вечеринках..
|
Ответ: axelynx
мне нужен мощный со спрайтами фреймворк для экстремальных сессий программирования визуальных демок на основе realtime спектра частот на DJ вечеринках..
апупеть... :) желаю удачи... |
Ответ: axelynx
Цитата:
|
Ответ: axelynx
Цитата:
Цитата:
|
Ответ: axelynx
Ну про загрузку коллады и загрузчик целых сцен (камера, свет, объекты анимациями и без) я вроде тебе в асечку уже писал)
|
Ответ: axelynx
1. Че за хрень вместо вики? O_ohttp://likosoft.com/axelynx_wiki/ind...itle=Main_Page
http://likosoft.com/axelynx_wiki/ind...-Check-It-Out! 2. А как правильно копировать из одной текстуры в новую? Ибо если пытаться получить массив с данными как то вот так int* data; tex->GetData(data); приложение падает, а как еще это сделать из названий функций я не смог вообразить. |
Ответ: axelynx
Код:
unsigned char* data = unsigned char[tex->GeDataSize()]; если нужно копировать тексели из одной текстуры в другую - то лучше отрендерить квад с первой текстурой во вторую. wiki такая wiki, что ее может править любой желающий. откатился до нормальной версии. желающих забанил |
Ответ: axelynx
Цитата:
|
Ответ: axelynx
чото вики вообще боты заполонили. никто не в курсе как с ними бороться?
|
Часовой пояс GMT +4, время: 09:04. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot