The Frequently Asked Questions (FAQ) [Updated March 2009]

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
bitplane
Admin
Posts: 3204
Joined: Mon Mar 28, 2005 3:45 am
Location: England
Contact:

The Frequently Asked Questions (FAQ) [Updated March 2009]

Post by bitplane »

The Irrlicht forum's Frequently Asked Questions

How do I use this game engine?
Irrlicht is a graphics engine, not a game engine. It doesn't come with physics, sound or networking. It does feature basic input and collision, but mostly just deals with graphics.

Irrlicht is a library for the C++ programming language. You'll need to learn C++ if you want to use it properly. If you don't know C++ you can start learning through online tutorials, but if you're serious about it you should buy a book.

Okay, so how do I use Irrlicht?
In order to use Irrlicht you will need a text editor and a C++ compiler, a debugger is also recommended. A C++ IDE (Integrated Development Environment) is a fancy sort of editor that is also a compiler and a debugger, you will need one of these unless you are comfortable using the command line.

We provide project files for the following free IDEs, so if you use one of these you can just double click the project file to get started.
  • Visual C++ Express, Microsoft's free IDE
    Code::Blocks, a popular cross platform (Windows, Linux, OSX) open source IDE.
    Dev-C++, another popular open source IDE.
    XCode (OSX users only)
If you use a different IDE or want to set up your own project, these tutorials will help: Open the examples folder and compile the Hello World example, work your way through the rest of the tutorials.

When you're done, familiarize yourself with the real documentation:
http://irrlicht.sourceforge.net/docu/index.html

Once you are comfortable reading it, it will answer most of your questions.

How do I search on these forums? I get hundreds of results when I search!
The problem is that the forum search engine searches for posts containing any of the words you enter, not all of the words. You can use boolean operators (AND, OR, NOT) to reduce the number of results. For example, searching for "weapon AND camera" will return far fewer results than "weapon camera"

Why is nobody helping me?
If you want people to help you, you must put as much effort in to your question as you expect from an answer. Your question must be interesting and show that you are not being lazy but genuinely need help.
Explain what you have tried, what happens and how this is different from what you expect to happen. Also explain what you are trying to do, because you might be doing it the wrong way. Screenshots might also help, you can upload them to Image Shack or another one-click image host.
If you asked your question the smart way and still get no answers, then you can assume nobody knows the answer.

Why is my model black / white? I don't see my texture.
The Irrlicht camera can't see in the dark! Unless you disabled lighting or added a light node, your node will be black.
You can add a light by calling SceneManager->addLightSceneNode();
Or you can disable lighting on your node by calling node->setMaterialFlag(video::EMF_LIGHTING, false);

If your node is white, then either the texture could not be loaded (check the output window for details), or your model has no texture coordinates. Texture coordinates are held within the vertices and say which parts of the texture are applied to which parts of the model. The process of adding this information is called UV-mapping, and is usually done in your model editor. Here's a UV-mapping tutorial I made for Wings3D.
If you are making a custom mesh or effect manually, you will need to set the TCoords member of each S3DVertex structure.

How do I use Irrlicht for .Net or Java?
Irrlicht.Net is no longer supported, Irrlicht.NET Cross Platform is now the official .Net wrapper. For Java, you should use Jirr

How do I compile an Irrlicht app without the console window with MSVC?
You need to set the subsystem and entry point in your linker settings, this is done in "hello world" example, but see this thread for details.

How do I enable collision on a map made in IrrEdit?
See the loadIrrFile example.

My program crashes or doesn't compile, I used some code I found on the forums.
There were a lot of API changes between 1.3.1 and 1.4, and there will be more between 1.5 and 1.6. The API is now const correct and some methods that took or returned a signed integer now return an unsigned one. Check the members of classes that inherit Irrlicht interfaces, and make sure the const keywords are in the right place. Where something took or returned an s32, there's a chance it now returns a u32 instead.
Make sure you check the changelog when upgrading between major releases (1.n) as there will be API changes. There will be no breaking changes between minor releases (1.x.n).

I copied some code from the forums, but the event receiver doesn't compile, how can I fix it?
See the previous question. The signature for IEventReceiver::OnEvent is now-

Code: Select all

virtual bool OnEvent(const SEvent &event)
If the OnEvent in your class doesn't match this, then it will not compile.

The bug I reported is apparently fixed, how do I get the latest development source code?
To download the latest code from SVN, see these instructions by afecelis.

I rebuilt Irrlicht / installed a new SDK on Windows, and now when I run I get this error:
Run-Time Check Failure #0
The value of ESP was not properly saved across a function call.
This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.
This happens when your headers and Irrlicht.lib don't match your Irrlicht.dll. You're using old headers/lib with a new dll, or vice versa. Ensure that you don't have an old Irrlicht.dll in your application's directory or in a system path.
Last edited by bitplane on Tue Mar 17, 2009 8:59 am, edited 5 times in total.
Submit bugs/patches to the tracker!
Need help right now? Visit the chat room
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

Super, that looks great! Thanks for updating it. Just a couple of constructive suggestions.

1) The movement tutorial has been updated to demonstrate smooth movement, so we shouldn't have to explain that one any more. ;)

Could we replace it with the "Why is my model black" question? (A: Add a light, or do node->setMaterialFlag(video::EMF_LIGHTING, false); )

2) I know that nobody who needs to read it will do so, but ESR's How To Ask Questions The Smart Way is a thorough if idiomatically over-verbose resource.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
dejai
Posts: 522
Joined: Sat Apr 21, 2007 9:00 am

Post by dejai »

Gj mate,
If you are trying to get started, have a look at the Irrlicht Community Beginners manual. Click my Signature.
Programming Blog: http://www.uberwolf.com
bitplane
Admin
Posts: 3204
Joined: Mon Mar 28, 2005 3:45 am
Location: England
Contact:

Post by bitplane »

rogerborg wrote: 1) The movement tutorial has been updated to demonstrate smooth movement, so we shouldn't have to explain that one any more. ;)
Cool thanks, remind me again after the 1.5 release and I'll remove it ;)
rogerborg wrote: Could we replace it with the "Why is my model black" question? (A: Add a light, or do node->setMaterialFlag(video::EMF_LIGHTING, false); )
Good idea. This is asked a lot by people who probably read the FAQ. I'll add it in a moment.
rogerborg wrote: 2) I know that nobody who needs to read it will do so, but ESR's How To Ask Questions The Smart Way is a thorough if idiomatically over-verbose resource.
Agreed, at least if it is linked to here then maybe instead of bashing newbies they can be politely redirected to the FAQ instead. I'll add this now too, thanks :)
dejai wrote:If you are trying to get started, have a look at the Irrlicht Community Beginners manual.
I'll also add this to the top when it's complete and all polished up. :)
Submit bugs/patches to the tracker!
Need help right now? Visit the chat room
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

How do I compile an Irrlicht app without the console window with MSVC?
http://irrlicht.sourceforge.net/phpBB2/ ... ole#156807
fdgonzalez
Posts: 7
Joined: Wed Mar 07, 2012 2:27 pm

Re: The Frequently Asked Questions (FAQ) [Updated March 2009

Post by fdgonzalez »

How can I get "realtime 3d engine beginner's guide" book free?
Post Reply