<<Previous Archive | Next Archive>>

Reverse engineering Irrlicht using UModel

I just reverse engineered Irrlicht, using Altova UModel 2005. Because UModel currently only supports Java, I used the excellent Irrlicht Java bindings jirr and bindenlicht, and both worked without any problems. UModel parsed them within about half a minute. Quite impressive, if you think about the fact that you can change the classes completely in this tool and write the code back correctly, even if you made some changes to the source files in the meanwhile. For Irrlicht, UModel looks like this:

Irrlicht reverse enginnered using Altova UModel

Best looking UML-tool I ever used, btw :) A good overview of all the Irrlicht interface classes shows this UModel generated class diagram. If you think that Irrlicht consists of about 3 or 4 times more classes for the implementation, you get the idea soon that Irrlicht is not a trivial piece of software. :)


Currently, it's really f*cking hot, here in vienna. Too hot, actually... Can't wait for rain..

Doom Movie

Did you already watch the Doom Movie Teaser? Doesn't look as bad as expected.

Doom Movie

BTW: Don't you think that the old Doom and Doom II have been more fun to play, now, after the Doom³ hype has faded away a little bit?


I just wrote a letter of dismissal. Sorry, but it's german.

Sehr geehrte Damen und Herren,

Hiermit möchte ich unter Einhaltung der dreimonatigen Kündigungsfrist heute, zum Ende dieses Kalendermonats, des Juli 2005, das Mietverhältnis mit Ihnen bezüglich der Wohnung in der Dresdnerstr. ********* beenden.
Ich werde mich in den nächsten Tagen telefonisch bei Ihnen melden um die Modalitäten hierzu besprechen zu können.

Mit freundlichen Grüßen,
Nikolaus Gebhardt

P.S.: Ich hoffe die Nutten vom Erdgeschoss sowie die Ratten im Keller haben's ab sofort ruhiger wenn wir nicht mehr so laut Musik spielen.

Feeling better now. BTW: The last sentence was written by my flat-mate. :)

Bear farming

Now for something completely different, don't read further if you don't want to get the desire to buy a weapon and hurt some people badly: Bear Bile Farming. Extract:

In countries across Asia, thousands of bears live a life of torture on bear farms, so that their bile can be extracted and used in Traditional Medicine to cure ailments ranging from headaches to haemorrhoids. Bears are confined in cages which vary from agonisingly tiny "crush" cages to larger pens, all of which cause terrible physical and mental suffering. But their torment does not end there.....the bears are subjected to painful methods of bile extraction which involve crude surgery to implant a steel catheter into the abdomen or the creation of a permanent hole in the abdomen known as the "free-dripping" technique.

I knew about this already, but everytime I think about it, it really makes me angry.

PS 3.0

I need a new gfx adapter. People are starting to extend Irrlicht using shaders, and the demos they send me don't run on my poor hardware, which doesn't even support PS 2.0. Puh. :)

Enemy of the state

Just some days after Austria was forced to change a law which has been created to stop german students studying at Austrian universities, I just watched on TV that now the Austrian politicans are defining the Germans who are living in Austria as enemies.
Just to remember: I am german, living in Austria. And I don't really like this. Don't know how much job taxes and tuition fees I already paid in Austria, but I think a lot more than the average Austrian guy of my age. F*ck you, silly politicans. *angry*

Mails flooding me

Must be summer holidays, and there are dozens of Irrlicht related emails in my inbox. Sorry that I didn't answer them yet. Got a new job and not a lot of time. But I'll try to answer all of them at the weekend.

Realtime 3D clouds

Bitplane wrote a cloud scene node for Irrlicht, it looks like this:

Realtime 3D clouds in Irrlicht

The about 300 clouds in that scene are moving and changing and you can also fly through them. It's quite realistic and impressive, way cooler than just a static painted background. For more info and a demo, see the irrlicht forum.

Abusing the debugger as calculator

Just stumbled across this code in one of my private projects:
core::vector3df a(4,  2,-4);
core::vector3df b(-4,-4, 2);
core::vector3df c(2, 4, 4);

float v = a.crossProduct(b).dotProduct(c);
First I had no idea what the did and why I wrote it. But then I remembered: It calculates the volume of the parallelepiped described by the vectors a, b and c. I just calculated the volume there because I needed it for a math exercise and was to lazy to calculate it in my brain. And I didn't erase the code again. ;) Maybe I should stop using VC++'s debugger as calculator.

C++ Line Counter

Need a program to count how many lines of code you've written already? Try C++ Line Counter. It also counts the amount of documentation/comments in the code:
Download CppLineCounter.zip (131 KB)

It looks like this:

C++ Line counter

I wrote this program three years ago. I wanted to extend it today, but unfortunately, I've lost the source code. Originally, it hat a link and a banner to my old homepage, www.code3d.com, but I was able to exchange that with a resource and a hex editor. Some people would call this cracking/hacking. But at least it's legal for me, for it is my own software. ;)

Ponies have the real ultimate power

From a site all about ponies, REAL PONIES, found here:

Ponies can kill anyone they want! Ponies cut off heads ALL the time and don't even think twice about it. These guys are so crazy and awesome that they flip out ALL the time. I heard that there was this pony who was sleeping at Paradise Estate. And when some dude dropped an amulet the pony killed the whole town.

98% scored lower

One of the more stupid tests (via Martin):

My computer geek score is greater than 98% of all people in the world! How do you compare? Click here to find out!

About Estate Agents and Changing Life

I just wanted to write something about those strange estate agents in Vienna, when I noticed that currently, it looks like I'm changing my life completely. And I didn't become aware of this at all before:That's a lot of changes, but it doesn't feel like im getting different or something. ;)
Back to the estate agents: I found that really cool appartment. I called the estate agent immediately, but he wasn't available. I tried it again, the whole day long, even left my number and the secretary told me that I would be called back. I wasn't called back at all and then I tried the email form. No response either. Then, we tried to fill the email form again, but we added one small thing. Instead of just the name, we added a 'Mag.' in front of it. (That's Austrian for 'MBA', for example). Result: We received an invitation for an inspection immediately. How sick is this?

Where is Waldo?

This picture shows students taking an exam. It happened this week at the Vienna University of Technology:

find Martin and Niko

You can find Martin and me in that picture. We are sitting next to each other. The picture is a little bit blurry, but if you know how we look like, you can find us. ;)

Controlling Robots

The University in Lausanne is running a modular robot project called YaMoR. It's quite interesting. The cool thing about it: They also created Eve, a simulator for these robots. And it is written using Irrlicht.
BTW: I just released Irrlicht 0.11.0.


Another new feature in the next version of Irrlicht, 0.11.0: Skins.

Irrlicht 2D GUI Skins

The left image shows a metallic shaded skin. It's not that impressive, but it shows that it works. It is also possible to change the whole GUI completely, for example drawing textures instead of only colored buttons and windows. I think with this feature, people will be able to create the GUI for their games now a lot easier.

Software Patents rejected

The European Parliarment has rejected to vote for the Software Patents for now. Kewl.

Improving Irrlicht documentation

People have quite different opinions about the Irrlicht Engine documentation. Some are saying it is very good, some even tell me that Irrlicht is one of the best documentated 3D engines and some say that the documentation could be improved. So I'm going to extend the documentation with more examples in the future. But I also thought about adding images, like this:

anti aliasing in irrlicht

This shows anti aliasing, a new feature in the next version, 0.11.0. I don't know yet if it is a good idea to add those images and screenshots. But it would be fun to do it, and I think it would make the documentation a lot more interesting. :)

Very Stargate Smart

You are Very Stargate Smart. You know every little detail about the show. You've probably seen every episode more than once, and I'll bet you've even got them all on tape or DVD!
Very Stargate Smart
Are you Stargate Smart?

brought to you by Quizilla

Maybe they should start selling Analysis and Linear Algebra DVDs too, would be better for me.

XML-RPC Exploit

Even the blog software used by this blog, Pivot is vulnerable to this XML-RPC Exploit. Fortunately the pivot developers provided a patch, and their server is available so that I don't have to switch blog software like others do. ;)

Law enforcement

Thanks to our stupid politicans, I had to add a new page on irrlicht.sourceforge.net and one on xml.irrlicht3d.org.

U2 concert review

The U2 concert on saturday was nice. I'm not a U2 fan, but I know all their songs and I liked the concert. And there were a lot of people. The concert looked like the picture below and I've marked the place where I was standing with the red arrow. Looks like very far away, but it was ok. It is very impressive to see 50.000 people screaming and singing and jumping at the same time, from above. (Pictures shamelessly stolen from here, thx sensei)

irrXML 1.1

Just released irrXML 1.1. I added some bug fixes which some users told me to add. Nice that the parser seems to be used by some people out there.


Looks like I'm going to the U2 concert tomorrow. I didn't know this until today. Cool.
And a recommendation. Go and watch this movie, it really rocks:

What I've done with my life

Via Martin, what I've done with my life (german): 69 points. Makes you really think about your life..