Where are all the basic tutorials?

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
Core Xii
Posts: 6
Joined: Fri Aug 10, 2007 10:15 pm
Location: Finland

Where are all the basic tutorials?

Post by Core Xii »

Sure, there's Hello World and all kinds of code examples floating around, but where are the tutorials that explain how Irrlicht works? It really needs a tutorial that starts from the design points, architecture, etc. of Irrlicht and doesn't dive into source code right away. I have no idea what's a scene, node or anything else within the engine, and none of that seems to be documented anywhere in a user-friendly fashion. How do I draw something simple like a triangle on the screen?
Reality is for people who lack imagination.
Masterhawk
Posts: 299
Joined: Mon Nov 27, 2006 6:52 pm
Location: GERMANY
Contact:

Post by Masterhawk »

EDIT: Sorry, not read the whole post... :oops:

It's too early this morning.... :lol:
Image
belfegor
Posts: 383
Joined: Mon Sep 18, 2006 7:22 pm
Location: Serbia

Post by belfegor »

Easiest way to explain this is:
scene - look thru your window
node - container that holds information about specific object (car, tree, bin,
cat, wolf...particles...billboards)
what else is unclear to you?
Small FPS demo made using Irrlicht&NewtonDEMO
InfoHERE
Its at very early stage but i think im crazy enough to finish it all alone.
Core Xii
Posts: 6
Joined: Fri Aug 10, 2007 10:15 pm
Location: Finland

Post by Core Xii »

Plenty.

So in order to draw something, I need to have a scene and a node in it? What exactly is a node? If I wanted to draw a triangle, would it have to be a node? And if I wanted to change that triangle, would I have to delete it and make a new node?

How are models and animations stored in Irrlicht? If I wanted to put a model into Irrlicht and animate it, but not in any format Irrlicht automatically imports, what would I have to do?
Reality is for people who lack imagination.
Wyszo
Posts: 49
Joined: Sun Jun 24, 2007 8:44 am

Post by Wyszo »

Well, the problem with this thread is simple - you want us to describe some things which should not be described by words, but by source code. Read sources from examples directory, and everything will become clear :) Ok, not everything, but irrlicht has great documentation :]
GameDude
Posts: 498
Joined: Thu May 24, 2007 12:24 am

Post by GameDude »

The easiest way to learn the Irrlicht is to go through the tutorials and then edit the tutorials and try different thing's little by little.
BMF
Posts: 62
Joined: Mon Jul 16, 2007 11:10 am
Location: Spain
Contact:

Post by BMF »

Going through the tutorials and editing them, and trying, and whatever is sure the easiest way to learn Irrlicht atm, I agree with GameDude.

But some information like the one Core Xii's asking about would sure make things much easier, too. You can find how things work by editing the examples, and after a while using them, you'll have made yourself a concept about what does things are. Having some sort of definitions about such things, in a tutorial form, would surely make things better.

So, where, you ask? Nowhere that I know of.
CodeDog
Posts: 106
Joined: Sat Oct 07, 2006 8:00 pm
Location: CA. USA
Contact:

Post by CodeDog »

Irrlicht uses a scene graph architecture. Most Higher level graphic engines, like Irrlicht, VRML, Ogre, and Unreal do.
What does scene graph mean?
The scene graph give us a more intuitive way to build a 3D graphic environment than constructing low level triangles.
Think of it this way.
How do you view the real world?
What needs to be in place for you to view the real world?
Well first we need world (scene).
Hmm I still can't see anything. Ah I need eyes to see with (camera). So we take the world (scene) and add eyes (camera).
Ok I have eyes but I still don't see anything. Our world is a empty void. Lets add a vase . So we take the world (scene) and add (load) the vase (node of a vase model).
Boy its dark in here. Lets add some light (use the scene to load a light source).
Ok here we are in the world with and vase and the lights are on.
Here is the graph.

Code: Select all

        |->vase
scene---|->light
        |->eye


Now lets put some flowers in the vase.

                   |->flower
        |->vase----|->flower
        |          |->flower
scene---|->light
        |->eye

Now a bee lands on a flower.

                    |->flower->bee
        |->vase-----|->flower
        |           |->flower
scene---|->light
        |->eye
Do you see how much easier it is to think about the 3D display in this way rather than as a bucket load of triangles and vertexes?
Core Xii
Posts: 6
Joined: Fri Aug 10, 2007 10:15 pm
Location: Finland

Post by Core Xii »

Hmm.

This is a bit confusing. I don't understand how I can draw something that is NOT some Quake 2 model that already contains animations, etc.

Say I put in a model of an upper arm, then give it a sub-node, the lower arm. I assume you can rotate the latter hierarchically... but how would I have the two models share vertices?

I am going to need to draw simple textured polygons anywhere completely arbitrarily without them being ready models, too. How does one do this?
Reality is for people who lack imagination.
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

No, your idea of scene node graphs goes too far here. If you want animations you should (probably) always use a 3d modeller (an external tool such as blender or MAX) and provide the models and animations there. Irrlicht's new animation system will simplify other ways of animation, but the usual way is to provide animated meshes.
Models which are hierarchically organised do not share vertices. You simply have to ensure that no edges will stick out of the model. but you might simply want to use skeletal animations which use a 3d model and a set of animated bones which are transforming the body to fllow the bones motions.
You can draw a triangle with a method from the driver any time you want (but be sure that you set up the projection matrix and the material properly). But in most cases, esp. if you do lots of polygons, it's much easier to create a vertex and index list as poart of a custom scene node. This will increase your render performance and keep the vertices grouped. Maybe check the ParticleSystem or Billboard sources for an idea of how to handle it.
Core Xii
Posts: 6
Joined: Fri Aug 10, 2007 10:15 pm
Location: Finland

Post by Core Xii »

Well I don't have such modeling resources available, but you can't be seriously suggesting that's the only way.

How does Irrlicht store/handle models and their animations internally, so I could make my own "importer"? (I guess that's a pretty broad question... but any help is appreciated)
Reality is for people who lack imagination.
BlindSide
Admin
Posts: 2821
Joined: Thu Dec 08, 2005 9:09 am
Location: NZ!

Post by BlindSide »

Please look at the custom scene node tutorial. It answers the very question you are asking repeatedly in a simple manner. (How to draw a triangle on the screen and change it :P OR More rather, manually specifiy what vertexes go where etc )

Cheers
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

you won't find information about animation internal anywhere as of now. The current animation system uses custom data structures for every format. The new animation system uses some more general structures, but is not yet documented outside its sources.
However, you will have to invent your own animation format and implement the motions and transformations on your own if you don't want to use an exsiting format. You will have to define the way these things are specified and composed over time. I don't know if it is really useful to avoid the existing formats, what would be the benefits? If Irrlicht does not support your favorite format just write a loader and animator for it. This will enable the reuse of existing tools and avoid design flaws.
Core Xii
Posts: 6
Joined: Fri Aug 10, 2007 10:15 pm
Location: Finland

Post by Core Xii »

My "favorite format" is a custom one, there are no existing tools to do the trick.

Thanks for your help, I will have to look at custom scene nodes then I guess.
Reality is for people who lack imagination.
Post Reply