forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   IrrLicht (http://forum.boolean.name/showthread.php?t=5127)

shybovycha 25.11.2007 18:30

IrrLicht
 
Не знаю, может кто и использовал ИррЛичт, но думаю, стоит посвятить ему отдельную тему. Иррличт - не двиг низкого уровня, но и не двиг высокого. Коллизии, управление камерой (стелки+мышь), загрузка Квака3 -карт, поддержка кучи форматов (3ds, x, irr, xml, ms3d, md2...). Размер исходного кода - 600-800 строк (WASD, прыгать, приседать, менять оружие, играть анимацию, графический интерфейс с опциями,...). Кому интересно посмотреть - www.irrlicht.sourceforge.net

mr.DIMAS 25.11.2007 18:35

Re: IrrLicht
 
да уж, перетерь тему иррлихта надо, т.к старичок блиц уже не выдерживает :). кстати он(иррлихт) поддерживает шейдеры 3,0?

jimon 25.11.2007 18:38

Re: IrrLicht
 
раньше наивно думал что Irrlicht крутой двиг :)
а оказалось какашка в красивой упаковке ;)

для обучения подойдет, но что либо зделать на нем нельзя

mr.DIMAS 25.11.2007 18:40

Re: IrrLicht
 
Цитата:

для обучения подойдет, но что либо зделать на нем нельзя
а че слабый двиг чтоле?

johnk 25.11.2007 18:41

Re: IrrLicht
 
Тему? Ты и так ее создал. 600-800 - это ты про сэмл, сорсы больше намного.

XenuS 25.11.2007 18:47

Re: IrrLicht
 
не, создать прикольную игрушку на нем мона....но только если сделать на его основе свой двиг.....и естественно имеется в наличии голова...)

jimon 25.11.2007 19:32

Re: IrrLicht
 
mr.DIMAS
слабый, тормознутый и прямых фич там мало
для очень многих вещей надо модифицировать исходник двига

DRAG 26.11.2007 02:50

Re: IrrLicht
 
Кстати, у кого есть линки на бесплатные двиги? Ток не в стиле ирлихта:)

johnk 26.11.2007 03:11

Re: IrrLicht
 
http://en.wikipedia.org/wiki/List_of_game_engines

Siarzhuk Piatrouski 26.11.2007 04:55

Re: IrrLicht
 
Цитата:

Сообщение от jimon
раньше наивно думал что Irrlicht крутой двиг :)
а оказалось какашка в красивой упаковке ;)

для обучения подойдет, но что либо зделать на нем нельзя

Хм, начнем с того, что двиг на самом деле классный! Я сейчас на нем делаю ралли, а опыта у меня достаточно, чтобы разобраться в том, сможет ли меня удовлетворить двиг или нет.

И для каких вещей его ндао модифиципрвать, если не секрет? mr.DIMAS, не слушай Джимона, с двигом всё в порядке! И фич хватает, и скорости. А если не хватает эффектов - пиши шейдеры!

jimon 26.11.2007 08:55

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. модифицировать мне его пришлось когда я копался
с мешами :) ну просто у меня характер такой
если в коде чет не правильно то мне легче изменить код либы
чем делать хаки :)

Siarzhuk Piatrouski 26.11.2007 09:28

Re: IrrLicht
 
1) - 3) Ничего страшного не вижу :)
4) - не совсем понял, о чем идёт речь :(
5) - не отрицаю! :) Юзаю RubuX Wrapper
6) - странно, у меня все окс этим :)
7) - возможно, но меня всё устраивает.

Цитата:

Сообщение от jimon
Siarzhuk Piatrouski


jimon 26.11.2007 17:10

Re: IrrLicht
 
Siarzhuk Piatrouski
ну так ты ж юзаешь враппер irrlichtа :)

mr.DIMAS 26.11.2007 18:43

Re: IrrLicht
 
это:
Цитата:

слабый, тормознутый и прямых фич там мало
для очень многих вещей надо модифицировать исходник двига
и это:

Цитата:

1) версии 1.0 - 1.4 только баг фиксы
2) в последних версиях решили менять архитектуру
что явно разозлило некоторых юзеров
3) вменяемость работы с meshем
иногда нужен IAnimatedMesh, а у нас есть IMesh
и хоть укакайся но просто так ты не получишь из него IAnimatedMesh
4) любая работа с двигом должна вместить в себе
то что у тебя есть хороший моделер и художник
который выполнит все твои пожелания
потому что править media внутри движка не реально
чего только стоят сметить текстурные координаты внутри irrlicht
или поработать напрямую с meshем
5) необходимость некоторых модулей
к примеру встроеный колижен у них полное Г
его надо удалить нафек, а враппер для physx
на офф форуме не понадобился ... сказывается вопрос
о какой либо вменяемости там народа
6) никаких возможностей 2д вообще
даже у блица дела лутче чем у irrlicht'а
7) тормознутость рендера и устаревшая его архитектура

сразу же отбили желание переходить на Иррлихт. получается что блиц над иррлихтом превосходит в 2 раза!

johnk 26.11.2007 20:50

Re: IrrLicht
 
О Господи...сколько еще раз повторять?
Irrlicht идеален для адаптации писанины игр на С++.
Освоите Ирлича, сделаете игру и можете переходить на чтонибудь крутое. Огр, Г3Д и куча достойных и мощных движков. Иррлич - это ключевое звено м\у Блиц3Д и Созданием игр на С++.

Siarzhuk Piatrouski 26.11.2007 21:27

Re: IrrLicht
 
Цитата:

Сообщение от JohnK
Освоите Ирлича, сделаете игру и можете переходить на чтонибудь крутое. Огр, Г3Д и куча достойных и мощных движков. Иррлич - это ключевое звено м\у Блиц3Д и Созданием игр на С++.

Довольно забавное высказывание, особенно если вспомнить, что иррлихт имеет отличную архитектуру от Огра :) А Огр это и не движок! :)

jimon 26.11.2007 22:57

Re: IrrLicht
 
Siarzhuk Piatrouski
ужо движок :)

Bagration 26.11.2007 23:21

Re: IrrLicht
 
Цитата:

Сообщение от jimon
Siarzhuk Piatrouski
ужо движок :)

Как это? :4to: Поподробнее можно?

jimon 26.11.2007 23:46

Re: IrrLicht
 
ну если к ниму присойденить physx,fmod то чем ето отличается от
обычных движков ?

даже на сайте огра написанно что ето графический двиг
а такие вещи как звук и физика в многих indie двигах
делаются с помощью сторонних библиотек

Siarzhuk Piatrouski 27.11.2007 00:15

Re: IrrLicht
 
Цитата:

Сообщение от jimon
Siarzhuk Piatrouski
ужо движок :)

ну если к ниму присойденить physx,fmod то чем ето отличается от
обычных движков ?

даже на сайте огра написанно что ето графический двиг
а такие вещи как звук и физика в многих indie двигах
делаются с помощью сторонних библиотек

Хм, странное определение :) Начнем с того, что сам OGRE расшифровывается как Object-Oriented Graphics Rendering Engine. Да и потом, читаем What Is OGRE?

Is OGRE A Game Engine?
No. OGRE can be (and indeed has been) used to make games, but OGRE is deliberately designed to provide just a world-class graphics solution; for other features like sound, networking, AI, collision, physics etc, you will need to integrate it with other libraries, something several frameworks have done, and we have a collision / physics reference integration library as an example in our distribution.
Да и в любом случае, ты должен согласиться, что архитектура OGRE и Irrlicht'а достаточно различаются! :)

johnk 27.11.2007 04:21

Re: IrrLicht
 
Ну значит не на ОГР, а на Г3Д :)

jimon 27.11.2007 10:04

Re: IrrLicht
 
Siarzhuk Piatrouski
ну в любом случае к Irrlichtу надо тоже подключать звуковую либу,
физический движок и сетевой двиг ...
так что в принципе без разницы

а то что там архитектуры как-то различаются - ето не проблема

pax 06.01.2008 18:25

Ответ: IrrLicht
 
http://www.devmaster.net/engines/

Вот база данных движков, как платных, так и бесплатных.

Morganolla 25.03.2009 23:41

Ответ: 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

dimanche13 26.03.2009 12:18

Ответ: IrrLicht
 
Скачал 1.5 и собрал Hello world без особого труда на codeblocks. без ошибок, все нормально. Давно не следил за движком, а зря. Уже подключили Physx, а карта для Q3 достаточно шустро бегает на моем слабеньком компе.

Morganolla 26.03.2009 23:26

Ответ: IrrLicht
 
dimanche13
В чем собирал в VC++ 6? Полный текст проги набрал из 1-го тутора? Скинь полный текст?

dimanche13 27.03.2009 13:18

Ответ: IrrLicht
 
Цитата:

Сообщение от Morganolla (Сообщение 101892)
dimanche13
В чем собирал в VC++ 6? Полный текст проги набрал из 1-го тутора? Скинь полный текст?

Я уже написал в чем собирал. Текст проги я не набивал, а просто запустил на компиляцию. Там (в bin) лежат уже файлы проекта для C::B.
Потом собрал хелловорлд сам, тоже запустилось.

Morganolla 16.11.2009 01:52

Ответ: IrrLicht
 
Вышел в сентябре Irrlicht 1.6. Сейчас решил поковырять. Вроде получше стал и значительно побыстрее. Есть и физика и поддержка многочисленных форматов. Но почему вы считаете, что он простой? в изучении и освоении? Я бы так не сказал! :)

jimon 16.11.2009 02:08

Ответ: IrrLicht
 
Morganolla
поковыряй nebula device 2 и сравни ;)

а сейчас по технологиям irrlicht ужасно отстал, 40% кода надо просто с нуля переписать, а некоторые подходы просто искоренять

Morganolla 16.11.2009 20:53

Ответ: IrrLicht
 
Цитата:

Сообщение от jimon (Сообщение 125249)
Morganolla
поковыряй nebula device 2 и сравни ;)

А какой бесплатный 3Д двиг (универсальный с DX9 и OpenGL) ты считаешь хорошим на сегодня? nebula device 2?

jimon 16.11.2009 23:14

Ответ: IrrLicht
 
Morganolla
OGRE вроде ничего, смотрел общую архитектуру C4 Engine - вроде нормально (но не знаю как там в коде), да и свой движок пишу :)

Morganolla 17.11.2009 13:41

Я новичек и у меня вопрос по управлению камерой. Как сделать, чтобы камера двигалась в пространстве вперед-назад от колесика мыши? Подскажите код для считывания колесика мыши MouseWheel и движения камеры в направлении зрения.

Я вот не пойму - все говорят, что Иррлихт простой. Но на мой взгляд он труден в изучении. Приведены скудные туториалы с примерами, и еще помощь в виде классов с очень скудным описанием. И получается, чтобы нормально понять как управлять объектами, светом, камерами ты должен сам перерыть все функции и изучить классы??? Но это же дурдом! Или я чего-то не понимаю?

Цитата:

Сообщение от jimon (Сообщение 125322)
Morganolla
OGRE вроде ничего, смотрел общую архитектуру C4 Engine - вроде нормально (но не знаю как там в коде), да и свой движок пишу :)

А скоро будет готов?

jimon 17.11.2009 22:59

Ответ: IrrLicht
 
Morganolla
ну как бы использование движка уже подразумевает что ты знаешь язык программирования :)

в примере 04.Movement описано как это сделать, создаёшь свой класс который наследуется от irr::IEventReceiver, ловишь там irr::EET_MOUSE_INPUT_EVENT, из этого евента и получаешь колёсико мышки, потом управляешь нужным тебе объектом

просто винда сама вызывает некую функцию при нажатии на клавишу клавиатуры или передвижению мышки, двиг из этой функции будет вызывать твой класс, в blitz3d эта функция записывает данные в переменные и ты потом как нибудь прочитаешь из них

Цитата:

А скоро будет готов?
имхо движок никогда не готов :crazy:
а так не знаю, я сейчас на работу устроился, времени совсем нет

Morganolla 28.11.2009 17:13

Ответ: IrrLicht
 
Вопрос к знатокам - а Ирлихт мощнее будет в графике чем Блиц3Д? Имеет смысл бросать Блиц и переходить на Ирлихт? Чисто для своих 3Д проектов-игрушек?

NitE 28.11.2009 19:00

Ответ: IrrLicht
 
да тут и знатоком быть ненадо - иррлихт быстрее и переходить определенно стоит если не лень учить новый язык.

Knightmare 28.11.2009 19:05

Ответ: IrrLicht
 
Шо? Ирр быстрее блитза? Ну щас я не в курсе, но года эдак 3 назад было очень сильно наоборот. И что-то я сомневаюсь в положительных изменениях.

jimon 28.11.2009 19:06

Ответ: IrrLicht
 
Morganolla
все зависит от прямоты рук, можно сделать и мощнее, а можно и слабее

Morganolla 27.12.2009 14:20

Ответ: IrrLicht
 
Подскажите, как в ирле можно менять расстояние видимости для камеры?

Morganolla 27.12.2009 16:13

Ответ: IrrLicht
 
Спасибо нашел и разобрался:
scene::ICameraSceneNode* pCam=smgr->addCameraSceneNodeFPS();
pCam->setFarValue(1e+6); ////setFarValue(
Ну вааще замороченный движок нада сказать!!! Но постепенно со временем все проясняется... :)

Morganolla 29.12.2009 19:33

Ответ: IrrLicht
 
Вот вопрос: чем объясняется ограниченность соотношения дальнего плана камеры и ближнего??? Мне для космосимулятора желательно иметь соотношение порядка 10^9 - 10^10. А реально она показывает при 10^7. Как это можно улучшить???? А ?
А чем это обусловлено??

jimon 29.12.2009 20:53

Ответ: IrrLicht
 
Morganolla
это обусловлено строением матрицы перспективы и ограничением float'а, ставь ближайшую плоскость дальше, где-то на 10^4, тогда будет нормально

Morganolla 30.12.2009 15:56

Ответ: IrrLicht
 
Продолжаю ковырять ирлу. След вопрос как менять скорость движения камеры типа addCameraSceneNodeFPS(); ? При инициализации ее можно задать, но вот прямых членов чтобы ее менять не видно. Эта скорость moveSpeed скрыта где-то в аниматоре... :(
При создании камеры как нода(узла) к ней привязывается аниматор. Сам аниматор имеет член для изменения скрости - setMoveSpeed(f32 moveSpeed)...
Блин... ну мудрЁна феня!!!

jimon 30.12.2009 16:53

Ответ: IrrLicht
 
Morganolla
ну получи аниматор и поменяй скорость, в irrlicht сделано правильно с точки зрения MVC и совсем не мудрёно ;)

Morganolla 30.12.2009 16:59

Ответ: IrrLicht
 
да чего-то... пока не могу получить... нужный аниматор... едрить его...

Morganolla 30.12.2009 23:02

Ответ: IrrLicht
 
Похоже я один тут с ирлом ковыряюсь. Где-то кто-то говорил, что движок типа простой... Я вам скажу - что если вы с ним разберетесь, то получите звание доктора сишных наук не меньше!!! Уё...истый движок я вам скажу!!! Еще пару деньков и мое терпение лопнет!!!

moka 30.12.2009 23:20

Ответ: IrrLicht
 
Morganolla :lol:, jimon, много с ним разбирался, и как он говорил - для самообучения, движок очень хороший ;)

jimon 30.12.2009 23:28

Ответ: IrrLicht
 
Morganolla
это один из простейших движков которые есть, если тебе так тяжко то может не стоит программировать вообще ?

я вообще не понимаю, тебе лень в справку посмотреть ? там есть метод getAnimators у ISceneNode, получаешь список, ищешь нужный там аниматор, приводишь его к нужному тебе типу и устанавливаешь нужное значение

Morganolla 30.12.2009 23:58

Ответ: 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
...
По моему для простого изменения скорости слишком много кода, что говорит о чрезмерной извращенности этого движка

jimon 31.12.2009 00:08

Ответ: IrrLicht
 
Morganolla
камера это просто абстракция точки с которой мы рендерим сцену, с какого чуда камера должна иметь что-то для изменения какой-то скорости чего-то ? потому сделали контролёр (в соответствии с Model-View-Controller) для управления и не обязательно он будет висеть на камере

а кода очень мало, ты видимо еще не видел серьезных проектов :)

Morganolla 31.12.2009 00:12

Ответ: IrrLicht
 
jimon
Я на блице регулировал скорость камеры одной-двумя короткими строчками... А тут такие извращения... сорри за офтоп...
ЗЫ Хотя, если бы я почитал про STL, то наверно справился бы за пару минут... хотя от этого и не легче...

jimon 31.12.2009 00:39

Ответ: IrrLicht
 
Morganolla
вот именно, блиц3д ослепляет своей простотой, а ты посмотри на его исходники, STL конечно не отдыхает, но черт ногу сломит (исходники STL это вершина, там надо день медитировать чтобы понять что делает одна строчка)

из-за этой простоты и получается поколение недопрограммеров (аля php-kids) которые думают что все так просто

ps. хочешь сложностей - посмотри nebula

NitE 31.12.2009 00:40

Ответ: IrrLicht
 
напомни, по каким критериям ты перешел с блица на С++ (я к тому что может тебе лучше подойдет purebasic ?)

Morganolla 31.12.2009 00:57

Ответ: IrrLicht
 
Цитата:

Сообщение от NitE (Сообщение 131718)
напомни, по каким критериям ты перешел с блица на С++ (я к тому что может тебе лучше подойдет purebasic ?)

Блиц морально и технически устаревает так как не развивается... Это - ДХ7, одинарная точность, нет ООП и т.д. Я ищу мультиплатформенный гибкий открытый движок, способный развиваться... Пурик я знаю отлично, года полтора его ковырял и пришел к выводу, что для моих задач (3Д космо-симуляторы) - это какашка....:), хотя для мелких прикладух он бывает не плох...

NitE 31.12.2009 02:25

Ответ: IrrLicht
 
то что ты его знаешь вдоль и поперёк это видно...
к нему можно подключить ирр, или что-то другое, а всем остальным критериям он соответсвует. (да, и ещё хз когда ты его щупал, но относительно недавно там появился новый 3д двиг)

Morganolla 31.12.2009 11:22

Ответ: IrrLicht
 
NitE
Там всегда был задолбаный 3Д двиг, на котором ты хрен, что сделаешь! А то что есть врапер для ирла... а ты попробуй с ним поработай...:) кишки через ж...пу вылезут!!!

ЗЫ Вот единственно, что меня щас интересует, а есть ли готовые приличные игрухи на самом ирле? Вроде движок накрученный а результатов я не видел... А? Киньте ссылочки...:)

Morganolla 31.12.2009 12:24

Ответ: IrrLicht
 
Ребят, может на ОГРу перейти пока не поздна? А? Посоветуйте...:)))

Android 31.12.2009 13:10

Ответ: IrrLicht
 
Цитата:

Сообщение от Morganolla (Сообщение 131747)
Ребят, может на ОГРу перейти пока не поздна? А? Посоветуйте...:)))

Не думаю что ты вытянешь огр, если ты не смог вытянуть ирл.

jimon 31.12.2009 13:54

Ответ: IrrLicht
 
Morganolla
irrlicht слишком старомоден в архитектуре, некоторые вещи (к примеру сериализацию) встраиваются плохим не гармоничным рефакторингом, сам подход к рендеру сцены тоже слишком стар и не обеспечивает должный уровень абстракции на современных эффектах, потому по-сути движок только и годится для вхождения в "3d на c++", это не означает что он ничего не дает, он дает знания и правильный взгляд на стиль кода и архитектуры (она тут хотя бы чистая и ясная, не то что в огре супер-костыли иногда)

ogre да, когда будешь свободно писать на C++ то юзай

Morganolla 31.12.2009 14:10

Ответ: IrrLicht
 
Ребят, а может мне для моего космоса достаточно простого ОпенГЛ и уроков Нехе. Может это будет проще и быстрее?

jimon 31.12.2009 15:58

Ответ: IrrLicht
 
Morganolla
ммм не думаю, но можешь попробовать :)

Morganolla 01.01.2010 19:12

Ответ: IrrLicht
 
Цитата:

Сообщение от jimon (Сообщение 131717)
Morganolla
... STL конечно не отдыхает, но черт ногу сломит (исходники STL это вершина, там надо день медитировать чтобы понять что делает одна строчка)...

Кстати, jimon, начала STL неплохо описаны у Р. Лафоре "ООП в С++" в 15 главе... :)

Morganolla 01.01.2010 20:56

Ответ: IrrLicht
 
Ну ё-ёё-ё!!! Устал я ковыряться в бесчисленных определениях ирлы!!! Наверно упаду на Неху...:)
Самый большой недостаток ИРРЛЫ - отсутствие хорошего учебника!!! А так движок чувствуется навороченный!

jimon 01.01.2010 21:01

Ответ: IrrLicht
 
Morganolla
в примерах описывается большинство функционала и намёки куда копать, плюс еще еще справка, плюс исходники открыты

Morganolla 01.01.2010 21:06

Ответ: IrrLicht
 
Цитата:

Сообщение от jimon (Сообщение 131893)
Morganolla
в примерах описывается большинство функционала и намёки куда копать, плюс еще еще справка, плюс исходники открыты

Это все правильно и неправильно...
Например, докапываться до тонкостей замахаешься... например как установить setMaterialFlag... как вывести какие-то числа и текст во время отладки... Нет чтобы четко все расписать, а приходится методом тыка!!!
А примеры не раскрывают и 10% настроек... Чтобы изучить ирлу надо года полтора с ней провозиться!!!


Часовой пояс GMT +4, время: 19:06.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot