![]() |
IrrLicht
Не знаю, может кто и использовал ИррЛичт, но думаю, стоит посвятить ему отдельную тему. Иррличт - не двиг низкого уровня, но и не двиг высокого. Коллизии, управление камерой (стелки+мышь), загрузка Квака3 -карт, поддержка кучи форматов (3ds, x, irr, xml, ms3d, md2...). Размер исходного кода - 600-800 строк (WASD, прыгать, приседать, менять оружие, играть анимацию, графический интерфейс с опциями,...). Кому интересно посмотреть - www.irrlicht.sourceforge.net
|
Re: IrrLicht
да уж, перетерь тему иррлихта надо, т.к старичок блиц уже не выдерживает :). кстати он(иррлихт) поддерживает шейдеры 3,0?
|
Re: IrrLicht
раньше наивно думал что Irrlicht крутой двиг :)
а оказалось какашка в красивой упаковке ;) для обучения подойдет, но что либо зделать на нем нельзя |
Re: IrrLicht
Цитата:
|
Re: IrrLicht
Тему? Ты и так ее создал. 600-800 - это ты про сэмл, сорсы больше намного.
|
Re: IrrLicht
не, создать прикольную игрушку на нем мона....но только если сделать на его основе свой двиг.....и естественно имеется в наличии голова...)
|
Re: IrrLicht
mr.DIMAS
слабый, тормознутый и прямых фич там мало для очень многих вещей надо модифицировать исходник двига |
Re: IrrLicht
Кстати, у кого есть линки на бесплатные двиги? Ток не в стиле ирлихта:)
|
Re: IrrLicht
|
Re: IrrLicht
Цитата:
И для каких вещей его ндао модифиципрвать, если не секрет? mr.DIMAS, не слушай Джимона, с двигом всё в порядке! И фич хватает, и скорости. А если не хватает эффектов - пиши шейдеры! |
Re: IrrLicht
Siarzhuk Piatrouski
1) версии 1.0 - 1.4 только баг фиксы 2) в последних версиях решили менять архитектуру что явно разозлило некоторых юзеров 3) вменяемость работы с meshем иногда нужен IAnimatedMesh, а у нас есть IMesh и хоть укакайся но просто так ты не получишь из него IAnimatedMesh 4) любая работа с двигом должна вместить в себе то что у тебя есть хороший моделер и художник который выполнит все твои пожелания потому что править media внутри движка не реально чего только стоят сметить текстурные координаты внутри irrlicht или поработать напрямую с meshем 5) необходимость некоторых модулей к примеру встроеный колижен у них полное Г его надо удалить нафек, а враппер для physx на офф форуме не понадобился ... сказывается вопрос о какой либо вменяемости там народа 6) никаких возможностей 2д вообще даже у блица дела лутче чем у irrlicht'а 7) тормознутость рендера и устаревшая его архитектура ps. модифицировать мне его пришлось когда я копался с мешами :) ну просто у меня характер такой если в коде чет не правильно то мне легче изменить код либы чем делать хаки :) |
Re: IrrLicht
1) - 3) Ничего страшного не вижу :)
4) - не совсем понял, о чем идёт речь :( 5) - не отрицаю! :) Юзаю RubuX Wrapper 6) - странно, у меня все окс этим :) 7) - возможно, но меня всё устраивает. Цитата:
|
Re: IrrLicht
Siarzhuk Piatrouski
ну так ты ж юзаешь враппер irrlichtа :) |
Re: IrrLicht
это:
Цитата:
Цитата:
|
Re: IrrLicht
О Господи...сколько еще раз повторять?
Irrlicht идеален для адаптации писанины игр на С++. Освоите Ирлича, сделаете игру и можете переходить на чтонибудь крутое. Огр, Г3Д и куча достойных и мощных движков. Иррлич - это ключевое звено м\у Блиц3Д и Созданием игр на С++. |
Re: IrrLicht
Цитата:
|
Re: IrrLicht
Siarzhuk Piatrouski
ужо движок :) |
Re: IrrLicht
Цитата:
|
Re: IrrLicht
ну если к ниму присойденить physx,fmod то чем ето отличается от
обычных движков ? даже на сайте огра написанно что ето графический двиг а такие вещи как звук и физика в многих indie двигах делаются с помощью сторонних библиотек |
Re: IrrLicht
Цитата:
Is OGRE A Game Engine?Да и в любом случае, ты должен согласиться, что архитектура OGRE и Irrlicht'а достаточно различаются! :) |
Re: IrrLicht
Ну значит не на ОГР, а на Г3Д :)
|
Re: IrrLicht
Siarzhuk Piatrouski
ну в любом случае к Irrlichtу надо тоже подключать звуковую либу, физический движок и сетевой двиг ... так что в принципе без разницы а то что там архитектуры как-то различаются - ето не проблема |
Ответ: IrrLicht
|
Ответ: IrrLicht
А сейчас кто-нибудь здесь еще ковыряется с ирлом? Хочу попробовать весию 1.5 ... и сразу затык у меня:
при компиляции ХЕЛО ВОРЛД ругается на функцию SColor operator+(const SColor& other) const в файле irrlicht-1.5\include\scolor.h ошибка - error C2780: 'const T &__cdecl irr::core::min_(const T &,const T &,const T &)' : expects 3 arguments - 2 provided |
Ответ: IrrLicht
Скачал 1.5 и собрал Hello world без особого труда на codeblocks. без ошибок, все нормально. Давно не следил за движком, а зря. Уже подключили Physx, а карта для Q3 достаточно шустро бегает на моем слабеньком компе.
|
Ответ: IrrLicht
dimanche13
В чем собирал в VC++ 6? Полный текст проги набрал из 1-го тутора? Скинь полный текст? |
Ответ: IrrLicht
Цитата:
Потом собрал хелловорлд сам, тоже запустилось. |
Ответ: IrrLicht
Вышел в сентябре Irrlicht 1.6. Сейчас решил поковырять. Вроде получше стал и значительно побыстрее. Есть и физика и поддержка многочисленных форматов. Но почему вы считаете, что он простой? в изучении и освоении? Я бы так не сказал! :)
|
Ответ: IrrLicht
Morganolla
поковыряй nebula device 2 и сравни ;) а сейчас по технологиям irrlicht ужасно отстал, 40% кода надо просто с нуля переписать, а некоторые подходы просто искоренять |
Ответ: IrrLicht
Цитата:
|
Ответ: IrrLicht
Morganolla
OGRE вроде ничего, смотрел общую архитектуру C4 Engine - вроде нормально (но не знаю как там в коде), да и свой движок пишу :) |
Я новичек и у меня вопрос по управлению камерой. Как сделать, чтобы камера двигалась в пространстве вперед-назад от колесика мыши? Подскажите код для считывания колесика мыши MouseWheel и движения камеры в направлении зрения.
Я вот не пойму - все говорят, что Иррлихт простой. Но на мой взгляд он труден в изучении. Приведены скудные туториалы с примерами, и еще помощь в виде классов с очень скудным описанием. И получается, чтобы нормально понять как управлять объектами, светом, камерами ты должен сам перерыть все функции и изучить классы??? Но это же дурдом! Или я чего-то не понимаю? Цитата:
|
Ответ: IrrLicht
Morganolla
ну как бы использование движка уже подразумевает что ты знаешь язык программирования :) в примере 04.Movement описано как это сделать, создаёшь свой класс который наследуется от irr::IEventReceiver, ловишь там irr::EET_MOUSE_INPUT_EVENT, из этого евента и получаешь колёсико мышки, потом управляешь нужным тебе объектом просто винда сама вызывает некую функцию при нажатии на клавишу клавиатуры или передвижению мышки, двиг из этой функции будет вызывать твой класс, в blitz3d эта функция записывает данные в переменные и ты потом как нибудь прочитаешь из них Цитата:
а так не знаю, я сейчас на работу устроился, времени совсем нет |
Ответ: IrrLicht
Вопрос к знатокам - а Ирлихт мощнее будет в графике чем Блиц3Д? Имеет смысл бросать Блиц и переходить на Ирлихт? Чисто для своих 3Д проектов-игрушек?
|
Ответ: IrrLicht
да тут и знатоком быть ненадо - иррлихт быстрее и переходить определенно стоит если не лень учить новый язык.
|
Ответ: IrrLicht
Шо? Ирр быстрее блитза? Ну щас я не в курсе, но года эдак 3 назад было очень сильно наоборот. И что-то я сомневаюсь в положительных изменениях.
|
Ответ: IrrLicht
Morganolla
все зависит от прямоты рук, можно сделать и мощнее, а можно и слабее |
Ответ: IrrLicht
Подскажите, как в ирле можно менять расстояние видимости для камеры?
|
Ответ: IrrLicht
Спасибо нашел и разобрался:
scene::ICameraSceneNode* pCam=smgr->addCameraSceneNodeFPS(); pCam->setFarValue(1e+6); ////setFarValue( Ну вааще замороченный движок нада сказать!!! Но постепенно со временем все проясняется... :) |
Ответ: IrrLicht
Вот вопрос: чем объясняется ограниченность соотношения дальнего плана камеры и ближнего??? Мне для космосимулятора желательно иметь соотношение порядка 10^9 - 10^10. А реально она показывает при 10^7. Как это можно улучшить???? А ?
А чем это обусловлено?? |
Ответ: IrrLicht
Morganolla
это обусловлено строением матрицы перспективы и ограничением float'а, ставь ближайшую плоскость дальше, где-то на 10^4, тогда будет нормально |
Ответ: IrrLicht
Продолжаю ковырять ирлу. След вопрос как менять скорость движения камеры типа addCameraSceneNodeFPS(); ? При инициализации ее можно задать, но вот прямых членов чтобы ее менять не видно. Эта скорость moveSpeed скрыта где-то в аниматоре... :(
При создании камеры как нода(узла) к ней привязывается аниматор. Сам аниматор имеет член для изменения скрости - setMoveSpeed(f32 moveSpeed)... Блин... ну мудрЁна феня!!! |
Ответ: IrrLicht
Morganolla
ну получи аниматор и поменяй скорость, в irrlicht сделано правильно с точки зрения MVC и совсем не мудрёно ;) |
Ответ: IrrLicht
да чего-то... пока не могу получить... нужный аниматор... едрить его...
|
Ответ: IrrLicht
Похоже я один тут с ирлом ковыряюсь. Где-то кто-то говорил, что движок типа простой... Я вам скажу - что если вы с ним разберетесь, то получите звание доктора сишных наук не меньше!!! Уё...истый движок я вам скажу!!! Еще пару деньков и мое терпение лопнет!!!
|
Ответ: IrrLicht
Morganolla :lol:, jimon, много с ним разбирался, и как он говорил - для самообучения, движок очень хороший ;)
|
Ответ: IrrLicht
Morganolla
это один из простейших движков которые есть, если тебе так тяжко то может не стоит программировать вообще ? я вообще не понимаю, тебе лень в справку посмотреть ? там есть метод getAnimators у ISceneNode, получаешь список, ищешь нужный там аниматор, приводишь его к нужному тебе типу и устанавливаешь нужное значение |
Ответ: IrrLicht
jimon. Спасибо приятель за наводку... Видел я этот гетАниматорс, но возится со списками у меня не поднялся... этот... типа тонус...:)
Для меня это пока тяжелая проблема... Неужели мои дела так безнадежны, jimon? Вот чувачек на западном форуме разрулил эту подсказку (как выковырить этот аниматор из списка) - Code: ISceneNodeAnimatorCameraFPS* fpsAnimator=0; scene::ICameraSceneNode* pCam=smgr->addCameraSceneNodeFPS(0,100,MoVel); // save off animator core::list<ISceneNodeAnimator*>::ConstIterator anims=m_camera->getAnimators().begin(); while(anims != m_camera->getAnimators().end()) { if ((*anims)->getType() == ESNAT_CAMERA_FPS) { fpsAnimator = (ISceneNodeAnimatorCameraFPS*)*anims; break; } } ... and then whenever you want to adjust the speed: Code: if(fpsAnimator) fpsAnimator->setMoveSpeed(MoVel * 2.f); // double the current speed ... По моему для простого изменения скорости слишком много кода, что говорит о чрезмерной извращенности этого движка |
Ответ: IrrLicht
Morganolla
камера это просто абстракция точки с которой мы рендерим сцену, с какого чуда камера должна иметь что-то для изменения какой-то скорости чего-то ? потому сделали контролёр (в соответствии с Model-View-Controller) для управления и не обязательно он будет висеть на камере а кода очень мало, ты видимо еще не видел серьезных проектов :) |
Ответ: IrrLicht
jimon
Я на блице регулировал скорость камеры одной-двумя короткими строчками... А тут такие извращения... сорри за офтоп... ЗЫ Хотя, если бы я почитал про STL, то наверно справился бы за пару минут... хотя от этого и не легче... |
Ответ: IrrLicht
Morganolla
вот именно, блиц3д ослепляет своей простотой, а ты посмотри на его исходники, STL конечно не отдыхает, но черт ногу сломит (исходники STL это вершина, там надо день медитировать чтобы понять что делает одна строчка) из-за этой простоты и получается поколение недопрограммеров (аля php-kids) которые думают что все так просто ps. хочешь сложностей - посмотри nebula |
Ответ: IrrLicht
напомни, по каким критериям ты перешел с блица на С++ (я к тому что может тебе лучше подойдет purebasic ?)
|
Ответ: IrrLicht
Цитата:
|
Ответ: IrrLicht
то что ты его знаешь вдоль и поперёк это видно...
к нему можно подключить ирр, или что-то другое, а всем остальным критериям он соответсвует. (да, и ещё хз когда ты его щупал, но относительно недавно там появился новый 3д двиг) |
Ответ: IrrLicht
NitE
Там всегда был задолбаный 3Д двиг, на котором ты хрен, что сделаешь! А то что есть врапер для ирла... а ты попробуй с ним поработай...:) кишки через ж...пу вылезут!!! ЗЫ Вот единственно, что меня щас интересует, а есть ли готовые приличные игрухи на самом ирле? Вроде движок накрученный а результатов я не видел... А? Киньте ссылочки...:) |
Ответ: IrrLicht
Ребят, может на ОГРу перейти пока не поздна? А? Посоветуйте...:)))
|
Ответ: IrrLicht
Цитата:
|
Ответ: IrrLicht
Morganolla
irrlicht слишком старомоден в архитектуре, некоторые вещи (к примеру сериализацию) встраиваются плохим не гармоничным рефакторингом, сам подход к рендеру сцены тоже слишком стар и не обеспечивает должный уровень абстракции на современных эффектах, потому по-сути движок только и годится для вхождения в "3d на c++", это не означает что он ничего не дает, он дает знания и правильный взгляд на стиль кода и архитектуры (она тут хотя бы чистая и ясная, не то что в огре супер-костыли иногда) ogre да, когда будешь свободно писать на C++ то юзай |
Ответ: IrrLicht
Ребят, а может мне для моего космоса достаточно простого ОпенГЛ и уроков Нехе. Может это будет проще и быстрее?
|
Ответ: IrrLicht
Morganolla
ммм не думаю, но можешь попробовать :) |
Ответ: IrrLicht
Цитата:
|
Ответ: IrrLicht
Ну ё-ёё-ё!!! Устал я ковыряться в бесчисленных определениях ирлы!!! Наверно упаду на Неху...:)
Самый большой недостаток ИРРЛЫ - отсутствие хорошего учебника!!! А так движок чувствуется навороченный! |
Ответ: IrrLicht
Morganolla
в примерах описывается большинство функционала и намёки куда копать, плюс еще еще справка, плюс исходники открыты |
Ответ: IrrLicht
Цитата:
Например, докапываться до тонкостей замахаешься... например как установить setMaterialFlag... как вывести какие-то числа и текст во время отладки... Нет чтобы четко все расписать, а приходится методом тыка!!! А примеры не раскрывают и 10% настроек... Чтобы изучить ирлу надо года полтора с ней провозиться!!! |
Часовой пояс GMT +4, время: 19:06. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot