<<Previous Archive | Next Archive>>

Game Over

The world is bad. A former employer of me just closed down the second to the last development studio. Sorry for the develolpers. The world is bad.

Dear library developers,

It's nice that you all create your libraries and provide functions for registering C function callbacks. But please, PLEASE, would you be so kind and add one additional senseless userdata int to your callback which will be set by the library user when registering the callback and will be provided when your library calls the callback? Would be so sweet.
Why I need this? I'm using C++, not C. With that int, I would be able to get the instance of the object for that callback. Without such a user data parameter, I am not able to do this in an easy way. Lots of libraries are already providing such a parameter. But a lot of libraries are not. Would be cool if they did.

Dungeon Lords

I just tried out the Dungeon Lords Demo. To be honest, just because I needed an excuse for not learning for the next exam and because I didn't want to program that database stuff for university now. So I downloaded the Dungeon Lords Demo1 and installed it. The warnings in the readme file which was displayed at the start of the installation program made me shiver:

"This build of Dungeon Lords does not support multitasking using alt-tab under Windows. If users shift focus to another window or application, such as when the stickykeys notification appears they will be unable return to Dungeon Lords and will lose all game progress before the last save."

Translated: Our programmers weren't able to reset the D3D device when it was lost. The other warnings were telling you that there might happen strange things in the game, for example that some object and characters won't appear. You won't be able to continue the game when this happenes, so you would have to restart the program and loose your game because of this.
Didn't sound good, but anyway, maybe the game rocked anyway. I started it, and it really looked nice. Cool graphics, nice engine. But after playing around a little bit, I noticed that I was playing against a random generator, not a game designer. If you just don't move in the game - no matter were you are - every 2 minutes a new group of monsters will pop out of nothing next to you and start to attack you. And that's already the whole game. When you realize this - and you do this quite quick - the whole fun is over. Because it is no fun to play arcarde like monster mass killing. There must be more in a role playing game. Not even DiabloII was that stupid.
Anyway, if they manage to get all those bugs out of the game,make it fun to play, replace the random generator with manual placed monsters and add a story and some character interaction, maybe it can get a nice RPG.

Bandwidth Chart

Looks better as a picture:

But as you can see clearly now, the high traffic really seems to be there just because of the latest release. Phew. :)

Webtraffic generated by Irrlicht

Ok, thanks to stefan, I now know that the statistics work again at sourceforge. And it looks like irrlicht.sourceforge.net generates 1 GB traffic per day. That's too much for me to place that webpage on irrlicht3d.org. That's my limit for a whole month. Not to mention the download traffic. The day before yesterday, Irrlicht consumed more than 10 GB bandwidth for this. On one single day. And Irrlicht 0.10 wasn't released then yet. That's cool, but also frightening.

New Irrlicht release

Anyone knows what happened to the sourceforge file download statistics? As you can see, they don't work anymore since some time. That's a pity, because I would like to know how much people are downloading the new release of Irrlicht now. Because I expect it to be downloaded a lot more than previous releases, because of the cool new features with marketing buzzwords in it.

F*cking, F*CKING tax officers

Martin has the same problem as I do. At least.

3D windows widget

Another reason, why some people might like the next Irrlicht version:


AHHHH!!!11!!!!!!!1! Someone stop me thinking about killing these tax office people!!! ;)

Documenting managed C++ code using NDoc

It is not easy to create documentation for managed C++ code using NDoc. Especially if you are mixing your code with complicated standard C++ code which uses rarely used C++ features. Just a project like Irrlicht.NET for example. My steps for creating automatic documentation for managed C++ code are the following:

1. Download the source MCXDoc, a plugin for visual studio which creates Ndoc style .xml documentation from managed C++ projects. You'll need to register at Codeproject for this.
2. Patch it, so that it doesn't crash in circumstances it gets into when parsing for example my Irrlicht.NET project. Search for
string fileName = e.ProjectItem.Name;
and replace it with
string fileName = "";
if (e.ProjectItem != null && e.ProjectItem.Name != null)
fileName = e.ProjectItem.Name;
4. Compile your patched MCXDoc and install it.
5. Compile your managed project. In the after build step, MCXDoc should run and create an .xml file.
6. Download the latest version of NDoc.
7. Create a new project in NDoc, select your compiled .NET Assembly and the generated .xml file.
8. Click on 'Namespace summaries' and insert some summaries only in the .NET namespaces, not in the native ones.
9. Set the option 'SkipNamespacesWithoutSummaries' to true. This will now stop NDoc to try to document native C++ classes and members, preventing it from trying to generate for example files with ≶ characters in it (from C++ templates) which would make it crash.
10. Done. Now you'll have some nice documentation like this.

That's a little bit work in the beginning. And it sucks. In the next VisualStudio, Microsofts compiler will be able to create these .xml files for C++/CLI projects too. So to sum up: Move from managed C++ to C++/CLI soon.

Afecelis' demo

Did you already try out Afecelis' new Irrlicht demo? Its quite nice and looks like this:

I tried it out and enhanced Irrlicht with some small new features which this demo will speed up a little bit. Expect it in the next version of Irrlicht.

Favorite E3 game?

So the E3 is over. My favorite game: The Elder Scrolls IV, definitively.


On the way to work, I stopped at a crossways. Had to sneeze. Three people standing next to me immediatly shouted "Gesundheit!!" (or the equal local phrase) == "bless you". Friendly city.

XML parser training

How to test if the xml parser I wrote works? Write a parser for a big, complicated xml based file format with it. Ok, so this was the plan. This was the result:

No problems occured, the parser just works. Cool. And the positive side effect: Irrlicht will have COLLADA support since the next release.
And BTW: COLLADA is not that big and complicated. In fact, it is nice, clean, and does what it should.

Plans for my Star Wars III experience

On saturday, I'll go and watch Star Wars III. An accident turned the scales, and because some people who wanted to watch it with me are somewhere in the jungle and some don't have time, so I'll go there alone. Well, alone together with three tasty chi beautiful girls.
I should take my lightsaber with me and take some pictures, just to prove that geeks can actually get girls. ;)

I know it is quite senseless...

..but I like it. Hacked in support for transparent 3D drawing in software mode. Needed just about 2 minutes ;)

Maybe I should implement some correct clipping ultimately.

Mail flood

What's happening? Since a few days I'm getting lots of mails from Irrlicht users again. Currently about 0.5 mails per hour. Doesn't sound a lot, but it is. 12 mails every day with detailed questions and (in most cases) some attached source code is a lot. And I've got private, business and university mails to read and answer too. Maybe it calms down again. :)

Frohe Pfingsten.

I'm sick. Great. I'm always getting sick on weekends. Great. This time, because of Pfingsten (german, pentecost). Monday there would be holidays too. And I've no advantage of this. Because I'm sick. GRML.
At least the database made me laugh today:


I just released irrXML 1.0: xml.irrlicht3d.org.

Irrlicht XML parser design

One of the most criticized features of Irrlicht is its own XML parser. Most people didn't understand why I wrote it and didn't use one of the existing free parsers. So, ignoring this, the parser is still in there and it is getting better and more mature every release. For the 0.10.0 release of Irrlicht, there will be something new: The parser will be completely independent of Irrlicht and have lots of cool new features. That's the new sourceforge project I was trying to register.
I redesigned it, and now it is better, faster, etc, but it is template based now. And I hope this doesn't frighten users. I mean, templates in general and things like
return new CXMLReaderImpl<wchar_t, IXMLReader>(
new CIrrXMLFileReadCallBack(file));
simply don't look very user friendly, and a programmer is - after all a user.


Yet another way to crash Microsofts C++ compiler:
template<class foo>
class bar
bar::bar() { }
But I don't blame it, it's right after all. I deserved this. :)

I feel rejected

Yesterday I tried to register a new project at sourceforge.net. Nothing special, only some thing I already have lying around and wanted to make open source. It was rejected. Cause: "Inadequate registration description or license detail."
Well. I described that thing even in more detail than I did when I registrated Irrlicht. Hm. Why don't they write "we are already hosting too much projects, and the reviewer did not understand the description you wrote"? But I'll try again.

Dawn of the Dead - DVD

One of the best DVDs I ever bought is Dawn of the Dead. Not just because the movie rocks. And it really does. Because the content of the DVD. The german version which I bought includes - as today all DVDs do - the english original version, but not only the same pictures with another audio channel like you are used to from other DVDs but different pictures too sometimes. Because it looks like the german editors didn't think the german audience is capable of understanding any other language and cut out scenes showing english signs (wtf?). In addition, the subtitles translating signs which weren't cutable disappear too if you choose to watch the english version - that should be standard, but it isn't.
Ok, that wasn't quite impressive, right? The best part of the DVD: It contains 2 additional nice short movies of about 45 min additional lenght, telling the story of the gun shop guy and a news reporter. Really funny. Then, there is still more: A quite interesting making of, a short clip showing all cut out scenes (optional with audio comments by the producer) and a trailer of the movie Shaun of the Dead. And last: A really cool cover (to the left). Interestingly, only the german version seems to have that cover, all other covers I found on the web were completely different.
I was really impressed. All these features on one single DVD. And everything for only 9 Euro. My opinion: The features of this DVD are comparable to a 5 DVD Lord of the Rings special edition part which costs about 30 euro today (I think). More DVDs should be like this.

Scary google search terms

After Martin and Thomas Themel listed the google search terms which brought people to their blogs, I am tempted to do so too. But I've discovered some more interesting stuff while reading the logs: Lots of people are searching for my name. Strange. But at least, the first search result is this blog. Cool.
Another interesting finding: Even if I've not named this blog like this, you can find this blog using the search term "niko's blog" and similar terms. And some people seem to get to this blog this way. Google loves me. :)


Shameless plug: RABCAT entertainment has got a new and updated homepage. Maybe you know aready, it's the company I am working for. The updated content shows partially what we've been working on during the last time. It's cool to see that some of it is now shown to the public. Be sure to check out the cool screenshots. :) And did I say that I really like the cool logo to the left? I like it. :)


Imagine you are looking for a job, and reading an advertisement like this:
Java, Databases: provable project experience
J2EE: I already heard I know
Webservices, XML: I already heard I know
Unix, Linux: I already heard I know
So, maybe I'm a bit stupid. But WTF do they mean with 'I already heard I know'? The confusing part is that they don't use any punctuation. In the original text (german), this is even more confusing:
Java, Datenbanken: Nachweisbare Projekterfahrung
J2EE: schon gehört kenne ich
Webservices, XML: schon gehört kenne ich
Unix, Linux: schon gehört kenne ich
It sounds like they want to say something like 'I can't stand people who say they are experts but don't have any clue of this technology'. But I think they simply meant: 'We're searching for people who can at least pronounce XML correctly.'.
This is one perfect example of a very bad job advertisement. I've seen exactly this text from this company for years now in different job pages. Two weeks ago, I wrote an email, proposing to change the text so they would get some more job candidates. I also asked them to explain what they mean with the original text, because after these years, I have become a little bit curious. :) Today, two weeks later: No change in the text and no answer either. What a pity. [And to be sure: NO, I am not looking for a job currently. ;) ]

I did it

Besides that it now looks a lot better and that Martin keeps telling me this isn't an achievement, irrlicht.sf.net now is valid XHTML 1.0 Transitional. See for yourself and click here:
Valid XHTML 1.0!

CSS Hell

Just testing with Opera, IE and FireFox. Every browser is doing different things. Cool.
Reminds me a bit of NVidia/ATI 3D drivers.

Morrorwind finished in 14 minutes

Maybe you know the game Morrowind. It's a great role playing game with a huge world. Really huge, you can play it for months and walk around the lands and discover new things every day. I played it for about 2 months, but it was too huge for me, so I saw no chance for me at all to play through it.
Now one guy did this, and he only needed 14 minutes to finish the game. 14 minutes! See for yourself. Ok, it is really unfair how he is playing, he is exploiting a bug in the game design as far as I understand. But at least I've seen the extro of the game finally. :)

I suck as webdesigner

During the last half year, 4 or 5 people contacted me, offering to redesign the webpage at irrlicht.sourceforge.net. I accepted, and some of them created a really nice new design. All of them painted it via photoshop or whatever. Nice way to do it. But none of them was capable of recreating that image in html/css/php. Two didn't try to do this at all, and the result of the other ones was.. well. Ugly and/or not usable. Sorry.
So, is this what a webdesigner does? I thought a webdesigner has to be able to code in html/css/php/whatever, not only to paint nice pictures? Ok, I totally suck at painting images, but at least I can write code. So I sat down and created a prototype for the new page on my own. It is all my own design, so beware. ;) Do you like it? Take a look here: www.irrlicht3d.org/playground/irr2/.