Slashdot Mirror


Irrlicht - Fast Realtime 3D Engine

Surye writes "Though a few days late on the release, Irrlicht has released version 0.7 of its engine. The site describes it as 'an open source high performance realtime 3D engine written in C++. It is completely cross-platform, using D3D, OpenGL and its own software renderer, and has all of the state-of-the-art features which can be found in commercial 3d engines.' Bindings for java, perl, ruby, and python, and it is platform independent (only implemented currently on Windows and Linux, but when it moves to other platforms, the code will be completely portable). The feature list is simply amazing, and since it's still being quite actively developed, I can see this becoming a major player soon."

29 of 221 comments (clear)

  1. How does this compare... by Anonymous Coward · · Score: 5, Informative

    There's another OS 3d engine called crystal space 3d. It's been in development FOREVER now, and I'm still waiting for a completed cross-platform game, but it looks like a cool proejct. Anyone feel like porting this to mac?

    1. Re:How does this compare... by DetrimentalFiend · · Score: 2, Informative

      Have you ever tried to work with crystal space or looked at the source code? Last time I did (several years back) it was one of the biggest messes of code that I've ever seen. I gave up on it too soon to understand it very well, but from what I could see, it was not designed very well and was consistantly a few steps behind commercial engines. On the other hand, it seems that Irrlicht is well designed and should scale well over time. It also appears to have developers that are making progress much faster than crystal space. Basically what I'm getting at is that crystal space 3d was never a viable candidate for a real game.

    2. Re:How does this compare... by ricotest · · Score: 2, Informative

      Crystal Space is well designed, it just takes some getting used to. It's extremely OO. It's bloated somewhat. You need to have it handle all your variables for you etc.

      However it's extremely powerful, and kicks the ass out of this engine from my impression. The existing renderer isn't too good, probably about the standards of this one, but their new renderer is capable of cel shading and bump mapping to make Doom 3 envious. And as the poster pointed out it's behind a relatively big-name OSS game. Although I must admit I haven't seen many other examples of its use.

      If you are planning on using CS for development, consider CEL, the Crystal Entity Layer. Like CS itself it's in production and nowhere near finished, but handles entities for you (including physics and AI). Something to look out for.

      CS's version number at the moment is 0.98r004 - this is normal. They keep increasing it in tiny amounts because, unlike GAIM, they are scared of reaching 1.0 :)

    3. Re:How does this compare... by Sir+Homer · · Score: 3, Informative

      That's cause SeriousEngine and Torque are completely different leagues. One Torque license is only $100 (with no royalty!), when the most limited SeriousEngine license is $20,000, and which includes high royalty rate, NO updates, and NO technical support. They are completely alienating hobby/indie developers who have less money to spend on a car let alone an engine. They are alienating professional developers too who have a $10 million dollar budget and who would pay the extra $100k for a better engine. Hence why they have no market share.

    4. Re:How does this compare... by Jorrit · · Score: 4, Informative

      If you think CS is not well designed and bloated then you don't really understand the structure. CS is very modular so while indeed we have a big source base, all of those modules are more or less independent. They result in plugins that can be loaded dynamically in the game. It is VERY easy to make a trimmed down version of Crystal Space where you simply remove the plugins that you don't want.

      As to design. CS is complicated to use (I agree with that) but the design of CS is geared towards flexibility (both for the game writer and also with regards to supporting new advanced features of modern 3D cards).

      Of course, I'm the original creator of Crystal Space. So take my opinion with a mountain of salt :-)

      Greetings,

      --
      Project Manager of Crystal Space (http://www.crystalspace3d.org). Support CS at http://tinyurl.com/cb3x4
  2. Re:game applications by Rakefighter · · Score: 4, Informative

    It is NOT GPL. Read the freaking web site.

    --

    --Life may have no meaning, or, even worse, it may have a meaning of which you disapprove.

  3. Re:So how is this engine different? by int2str · · Score: 4, Informative

    I guess Irrlicht is pretty good then...

    Irrlicht Documentation

  4. Re:Will It Last? by yeremein · · Score: 2, Informative

    Apparently the engine has only one developer who can supposedly drop the project at anytime.

    Even if that happens, you have the source code, so you can maintain it yourself.

    Granted, if the project went under you wouldn't get any new bug fixes or patches, but for what you paid for it ($0), what can you expect? :)

  5. Before you start bashing, check the site... by thrill12 · · Score: 4, Informative

    ...and download Irrlicht 0.7. In it, you will find "Irrlicht.chm", which starts with (I quote):
    Welcome to the Irrlicht Engine API documentation. Here you'll find any information you'll need to develop applications with the Irrlicht Engine. If you look for a tutorial on how to start, take a look at the homepage of the Irrlicht Engine at irrlicht.sourceforge.net or into the SDK in the directory \examples.

    The Irrlicht Engine is intended to be an easy-to-use 3d engine, so this documentation is an important part of it. If you have any questions or suggestions, just send a email to the author of the engine, Nikolaus Gebhardt (niko (at) code3d.com).


    In the documentation are the classes explained in a quite clear and concise manner, in JAVADOC-style.

    I'm sorry, but some 3D-engines do think that documentation is important, so I guess your 3D engine with reasonably documented code is already here....

    --
    Slashdot: stuff for news, nerds that matter, matter for news, stuff that nerd
  6. "Game" engine vs 3D engine. by noselasd · · Score: 4, Informative

    Just wanted people to realize the diffrence here. irrlicht is is
    a 3d engine, which is about putting things on screen.
    For making a full game, much much more is needed. Player control/input
    handling, level loading when needed, loading saving of progress. Physics. AI. And , well, a _whole_ lot of other code. Plus some amazing
    artists and a good way of dealing with content made in 3d party applications(modellers)..

    1. Re:"Game" engine vs 3D engine. by Blaskowicz · · Score: 2, Informative

      well it's just about loading a map in quake format; those are .bsp files ;)

  7. Engine lacks... by SynKKnyS · · Score: 4, Informative

    Doesn't seem to have normal mapping (bump mapping and its cousins) or portal rendering (and all of its cousins). This doesn't make the engine very modern. It also seems to be lacking in the shaders department.

    However, it is open source so stay tuned in the future!

    1. Re:Engine lacks... by Anonymous Coward · · Score: 4, Informative

      Doesn't seem to have normal mapping (bump mapping and its cousins)...

      Bump mapping and it's cousins are generally implemented using vertex and pixel shaders, which the Irrlicht Engine supports.

  8. RTFA by alexborges · · Score: 2, Informative

    Check the screenshot section to see what this thing is doing NOW (actually, some of this features are there for almost a year now):

    - Here are some shots of new features of the development version of upcoming Irrlicht 0.5: The .x file loader, new GUI features, the improved .bsp file renderer, new material types, fog.

    - These shots show the development of version, 0.4.2: Ultra realistic terrain rendering, indoor rendering using the new high quality texture loader, some new features of the user interface system, and curved surfaces.

    - New features of the engine are the collision manager, skeletal animations, particle systems, zfail style stencil shadows, the linux port, picking, water surfaces. The image with the landscape is a terrain renderer for the irrlicht engine coded by 'knighttoflight' using some textures from

    --
    NO SIG
  9. Check out the author's blog... by Anonymous Coward · · Score: 2, Informative

    http://www.code3d.com/blog/

    And say an amen to his entry regarding linux and windows.

  10. Re:Will It Last? by Mike+deVice · · Score: 5, Informative

    My understanding is that the developer simply didn't wish to put his code into CVS or the like until after a version 1.0 release. Some other people at Irrlicht NX decided to take the source, stick it in CVS, and apply patches and fixes and the like. The author had zero problems with this, and even lauded the effort.

  11. Good but not the best by KrackHouse · · Score: 4, Informative

    Irrlicht is good because it's easy to use. If you want a high performance engine for use in a serious project have a look at OGRE. Sure it's harder to use but it has an active community and the performance in complex, real world scenarios is great. I looked at both when researching what to use for Motorsport and right now, OGRE is a better choice for big serious apps. We're using OGRE for our open source driving simulator and it compiles in Linux and Windows with no changes to the code. OGRE is good because it sticks to what it is good at, 3D. There are a lot of Game engines out there that try to be all things to all people but aren't good at any of them. OGRE is good at 3D.

    That said, if you're new to 3D Irrlicht is a good place to start.

    --
    What if Digg added local news and a Slashdot inspired comment karma system? ---
    http://houndwire.com
    1. Re:Good but not the best by Mawen · · Score: 4, Informative

      I second the advice to take a look at Ogre. Ogre has an very clean, well designed, and stable API. (Especially compared to some other engines. I for one found it many times easier to understand and more organized than Crystal Space when I stopped following it a couple years ago.)

      While Irrlicht may be designed to provide a very nice and quick API for beginners to 3D programming, Ogre has seemed more professional to me. As a graphics engine, Ogre seems top-notch in terms of performant implementation of bleeding edge features that won't run on anything less than the latest generation video cards. (I have not really taken a close look at Irrlicht since about version 0.5 though.)

      There have been at least a couple commercial games released (an arcade machine and some game appearing on Finnish television) done with Ogre.

      I think that because it is new, and maybe because it is a graphics engine and not a game engine, Ogre has been getting less press than it may deserve. Anyway, be sure to check it out.

      Also, don't judge an engine by their demo screenshots. Open source authors often don't have the resources to make beautiful artwork to dazzle people with (nor do they have the financial incentive to do so).

  12. Crystal Space 3D by myspys · · Score: 5, Informative

    Another engine that is open source (LGPL) and possibly a bit more mature than Irrlicht is Crystal Space 3D.

    From the about us-blurb "Crystal Space is a free (LGPL) and portable 3D Game Development Kit written in C++. It supports: true six degrees of freedom, colored lighting, lightmapped and stencil based lighting, shader support (CG, vertex programs, fragment programs, ...), mipmapping, portals, mirrors, alpha transparency, reflective surfaces, 3D sprites (frame based or with skeletal animation using cal3d animation library), procedural textures, particle systems, halos, volumetric fog, scripting (using Python, Perl, Java, or potentially other languages), 16-bit and 32-bit display support, OpenGL, and software renderer, font support (also with freetype), hierarchical transformations, physics plugin based on ODE, ... See the extensive list of features for more details."

    Read more at http://crystal.sourceforge.net/

  13. Easy To Use... by md81544 · · Score: 4, Informative

    I'm impressed. Downloaded the 0.7 zip file from the site (it was the only download available). I thought... well, this must be the windows version (I'm on Linux FC2), but I'll have a look at the code anyway. Unzipped it, realised it was for Win and Lin, looked for a "configure" script, couldn't find one, so just ran "make". All compiled without a single problem. Then went to the examples and compiled all those, again just with a make, everything ran OK. It seems pretty solid. I think this is going to be great.

  14. Re:Will It Last? by Jeremi · · Score: 2, Informative
    The very first link on the download page says this: "Software development kit required to develop applications with the Irrlicht engine. Included is the documentation and the source code of the engine, 12 tutorials, a cool technology demo wich shows the capabilities of the engine, and a lot more."


    So it would appear that source is in fact available.

    --


    I don't care if it's 90,000 hectares. That lake was not my doing.
  15. Re:Not Open Source, GPL of unfinished source by Anonymous Coward · · Score: 1, Informative

    Irrlicht isn't distributed under the GPL license, it uses the zlib license.

  16. license by j1m+5n0w · · Score: 4, Informative

    Here's the actual license, for those too lazy to follow the parent's link. It's very short, and allows you to do pretty much whatever you like with it:

    Copyright © 2002-2003 Nikolaus Gebhardt

    This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

    Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

    • 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
    • 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
    • 3. This notice may not be removed or altered from any source distribution.

    -jim

  17. Re:Will It Last? by abigor · · Score: 1, Informative

    Actually, I read the FAQ:

    Is there no CVS / Can you send me the code of the current development version of the engine?

    No, I cannot send you the code I am currently working on. If I want someone to use new or updated code of the engine, I'll create a new release. And I am not going to create very unstable preview versions of the engine, because I don't have the time to answer thousands of arising questions which are caused by the inmaturity and instability of the released code. This is also the same reason, why I don't set up an CVS server, although lots of users are demanding this. Sorry.

    So I guess it's only old code that's available. I remember looking at this project long ago, and there was no code available at all. Anyway, he still doesn't accept patches, which is of course entirely his prerogative.

  18. Karma whore? by p3d0 · · Score: 2, Informative

    Not really. There are already several open-source 3D engines like OGRE and Crystal Space 3D.

    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  19. Re:Picture Quality... by wazlaf · · Score: 3, Informative

    I don't understand all the excitement about Irrlicht - wile it is surely an OK 3D Engine, it lags just so much behind in terms of what's possible with current 3D Hardware. If you are looking for something more advanced, have a look at OGRE. It does decent stencil shadows, is also independent of the underlying rendering API and it is used in many commercial and open source games.

  20. OGRE3D by ggambett · · Score: 4, Informative

    Our current project uses OGRE (http://www.ogre3d.org). We evaluated Irrlicht, CrystalSpace and others, which are good, but you defintely want to take a look at OGRE.

    OGRE doesn't try to be a game engine - just an Object-oriented Graphics Rendering Engine. It can be easily integrated with other libraries to create a complete game framework - ODE for physics is a quite popular choice.

    OGRE itself focuses on a clean and well designed API, while other engines are just hacks over hacks. It also has a very knowledgeable community and a very involved project leader.

  21. Another one?? by Saville · · Score: 4, Informative

    There are quite a few 3d engines out there. The biggest I guess are Crystal Space 3D, Genesis3D, OGRE, Toque (Tribes2), Quake and Quake II. Of course there are others to fill certin niches like Yeti or ExoEngine and libraries like DevLib and G3D for those who want to write their own engine, but don't feel like they need to implement yet another file loader. I'm not sure why 0.7 of Irrlicht was worth mentioning on /. as it is isn't clear what its roll is compared to those other engines.

    I was at Siggraph 2004 and attended a round table on "how will you (game developers) feed next generation games". The problem is going from a Playstation1 to Playstation2 many developers found games now took roughly 2 to 3x the man years to create. But profits didn't really go up that much to compensate. This has happened every console generation and will happen again with the up coming generation. PC games don't have clear generations, but the same concept applies.

    The main ideas were to reuse content. For example if you're making a Matrix game, get the 3d models from the movie instead of making your own and start from there. Or if you're making a port try to reuse as much as possible. Future games will have a lot of computer generated stuff which is artist guided instead of artist created so that one artist creates a forest instead of creating a bunch of leafs on a single tree.

    A big surprise to me was open source wasn't mentioned until somebody asked. A company like id will implement something cool like unified lighting for all objects first, but a year later everybody has their own implementation of it. Every year has something like this that gets the anual lens flare award; colour lighting, ground clutter, normal mapping, rag doll physics, etc. Yawn. Every company spends all this time re-implementing the exact same technology. All developers can read the same papers from Siggraph, Eurographics, or GDC and then discuss them on the same mailing lists so there is plenty of open sharing happening already. So I was surprised to hear none of the guys at the round table thought open source would really be useful to help save them money in the future other than for rather basic things like zlib, lua, etc.

    It sure would be nice to see some engines reach commercial quality to used in some good games instead of getting more and more re-implementations of the foundation, which /. apparently is finds interesting. Once it happens there will be a huge snow ball effect where it picks up a LOT of developer attention. Maybe in five years one of the existing engines will reach a level of maturity that it can start to be really used and then in another ten we'll see it catching on like GNU/Linux is now?

  22. Re:game applications by Anonymous Coward · · Score: 1, Informative

    I created a Game based off of Irrlicht for a school project.

    Although it has good features and good documentation as far as open source engines go, it will not compete with the likes of doom or half-life. The reason for this is speed. It is NOT as fast.

    Irrlicht uses a very outdated method of restricting which objects are going to be rendered and rasterized (a technique called culling) as opposed to the complex method used in doom and half-life. In Irrlicht, this is called an Octree where in better engines they use a BSP (I believe).

    Carmack does not find this to be much of a threat, I guarantee.