<<Previous Archive | Next Archive>>

FastLSM - Fast Lattice Shape Matching

fast lsm FastLSM is a method for soft body simulation - makes it possible to calculate tons of colliding soft bodies in real time, sounds like a perfect algorithm for computer games. They have a nice video on their webiste which shows what it does.
A lot of people have mailed me a link to this - thanks - because they are obviously using Irrlicht in their demo. But after I downloaded the demo, it wonder how they are using it: The demo is incredible slow on my pc and the archive contains dlls like glut, glew, zlib, devil, sdl and similar, libraries which are all completely unnecessary if you are using Irrlicht. But I'm now really too lazy to analyze the binary, there is no source included. Anyway, nice they are using Irrlicht for their demo.

Why I don't like localized ads

I am used to be forced to watch Austrian commercials even when I am watching german television. It sucks because Austrian commercials are absolutely boring compared to the german ones, but ok. I got used to this. But now, I noticed that google ads begin to appear in german language also when I am browsing international websites. Come on, that is totally disturbing. Not only because it doesn't fit into the whole website, but it also feels like I'm watched by a big brother, analyzing me. Of course I know that I am analyzed by adsense, but it's not always that obvious. Thinking of using ad blockers for the first time.

Being self-employed - review

ambiera logo For some time, I am now running my own company and working as freelancer. I blogged about the the beginning of all this already, but not a lot about how everything is going, what I am doing, etc., so it's time to change this:

The first thing to note is that it was the right decision to start standing on my own feet: Before I started Ambiera, I was working as normal employed software engineer. I wanted to have some more freedom and work a bit more in the games area again, so I decided to quit my job. The reason was not that I disliked my job - I didn't and actually, I am still doing some work for my last employer. But I also wanted to work on other projects, and have some more time for Irrlicht and related things.

Now, after some time, I am pretty happy with how everything worked out: I already worked on some computer games and similar projects for different companies from various countries. I did not only have a lot of fun, but additionally learned to use new technologies and was able improve my skills and knowledge - that's what I was missing a bit before, maybe. Furthermore, I was able to create and maintain two products - namely irrKlang and irrEdit which are now used by other developers - hobbists and professional developers, which also gets me a bit more into contact with the game industry and is quite interesting. So everything is going well, but of course there are some few things which are not that nice:
One problem is that although I have a lot of freedom now I don't have more free time, it's even quite the opposite: I'm working a lot more than previously. And I constantly have to make decisions: Which job should I do and which not? Currently, I have to reject a huge amount of possible jobs unfortunately, simply because of shortage of time, and it's not very easy to decide which one to do and which not.
Another issue is that the Euro/Dollar exchange rate currently is a joke. The dollar is now only worth 1.4 euros and still falling, and because a lot of my customers are from the U.S., my services are getting more expensive for them every day. That's really bad. Same for advertising: Google adsense is paying in Dollars, and every month, I get less money from it. And there is no other advertiser I could switch to, google has the monopoly. Great. And last but not least, the bureaucracy: It only works when they want money from you, but I guess that's nothing new. :)

But apart from these few glitches, until now, everything is running nice. And I hope it stays just like it is. :)

irrEdit user extension screenshot

You might have come across the Irrlicht Engine user named 'sio2' already, he is known for example for his cool looking Irrlicht Engine demos. One of the latest things he is doing is to use irrEdit, the Irrlicht Editor: Because it is completely extensible, he wrote some plugins for it and this is how it looks like on his System:

The shot is showing his own custom scenenodes for terrain, vehicles and ocean, here are some more. He also created a tree scene node plugin. Very nice.

Do you speak Russian?

13 Irrlicht tutorials in russian language written by Nikolai Gishkevich.

And the winner is...

I can't believe the fact that most traffic on this blog is generated by bots trying to post comment spam. Awesome. And it's cool that about only 0.001% of all those attempts are successful, although this blog doesn't use any CAPTCHA, blacklists or similar, just some few modifications written by myself. The only drawback is that you are not able to post comments to very old blog articles, but I've come across a new nice idea to enable this again: Bots today don't support CSS. ;)


People are asking me why I apparently have stopped blogging about political issues. The reason for this is resignation. Reading all the bad news every day, like today for example: already 1,000,000 Iraqi citizens have been murdered since the U.S. invasion, can make you a bit depressed. And blogging about this additionally makes it even worse. Most politicans seem to run mad (converting the EU into a police state and surveillance state (german link)) today and seem not to care about anything at all anymore. I have the feeling nothing we are doing is stopping this and so it feels useless to be angry about all that.

irrEdit 1.4alpha preview released

I just released irrEdit, the free irrlicht editor in version 1.4alpha, as preview. It includes some few bug fixes, support for .irrmesh files, an improved lightmapper, an internally used irrKlang 1.0 audio engine and of course the latest Irrlicht version from the svn.

Some people might be irritated by the new version number, because the last one was version 0.7.1. irrEdit will from now on simply use the version number of the corresponding Irrlicht version, because it is really closely coupled with Irrlicht releases. Should there be irrEdit sub versions, they will simply have some added letters to the version. And yes, there is no 1.4alpha Irrlicht release yet, but we are planning to do this soon: Hybrid, Luke and Bitplane are working to change and fix some few features, but this new irrEdit version should be compatible already.

And maybe interesting for all people with irrEdit 0.7.1 source code licenses: You are able to upgrade to version 1.4 for free if wanted, just let me know. So have fun editing your 3D worlds using the new irrEdit.

Halo 3 diorama

A Halo 3 diorama. It's a commercial but they did it very well. Worth a look.

Material bug fixing

I just worked a bit on the light mapper of irrEdit, fixing a bug which caused smaller polygons to get wrong colors. Some few people noticed this on the forum, and the reason for this was that the lightmapper chooses not to use light maps for polygons which are smaller than a texel, and set the vertex color of the geometry instead. Unfortunately, lightmap materials are modulated by 4, and the solid vertex colored material in irrlicht is not, causing it to appear darker. Here is a shot of it, the upper image shows the old version and the other one the fixed irrEdit version which will be released soon:

Only very small polygons were affected by this problem. Notice that for examlpe the bike in the background also consisted of only very small polygons, and was a lot darker in the buggy version.
Nice. With a good working light mapper and an own irrlicht file format, it's again one step nearer to a cool new Irrlicht demo.

28 Weeks Later

Movie recommendation: 28 Weeks Later. It's the sequel to 28 days later, a classic zombie movie. I didn't like the first movie that much, but because I like zombie as well as apocalyptic movies, I even own the DVD. :) But the sequel 28 Weeks Later, which now can be watched in Austrian movies is not comparable to its precedessor: It is great, from the beginning to its end, in every aspect, in my opinion. If you would have to categorize it just as we are used to do this with computer games, I'd say it is a combination of the Dawn of the Dead 2004 remake and Children of Men, two great films. A thrilling zombie movie mixed with high tech warfare, nice, authentic characters, and a credible storyline. What do you need more. It's sometimes a bit gory, but not too much.
So if you want to spend some money in the cinema, I can really recommend this one.

Two New Members of the Blogosphere

Since just a few days, there are now two interesting new blogs available on the web:
I would have added these blogs to the 'blogs I read' section on the right side of this blog, but somehow my ftp client has a bad day today. Going to try again tomorrow.

Introducing the .irrmesh 3D file format

During the last days, I checked in some new features into the Irrlicht svn: A loader for a new file format with the extension .irrmesh and mesh writers: Irrlicht will now be able to write out every mesh again if wanted. I implemented and checked in writers for the COLLADA as well as the .irrmesh file format.

So, what's .irrmesh now? Basically, it's Irrlichts built-in file format for static meshes. That's right: Irrlicht now has it's own file format. Finally. Irrmesh is xml based and quite lean: Single vertices and indices don't have their own tags, similar to how the COLLADA format works. An .irrmesh file simply is a dump of the contents of the IMesh interface: A list of mesh buffers, one material per buffer, and a list of vertices and indices. In this way, .irrmesh is the best supported file format and if people start writing exporters for .irrmesh, they can be sure these files will be always displayed 100% correctly in Irrlicht. But also without the not yet existing exporters it is easily possible to get your hands on .irrmesh files: You can for example use Irrlicht as converter, just load any file of the many supported file formats and write it out again using the new IMeshWriter interface. Or even simpler: Just wait some days for the next irrEdit release and use it as converter then.
The current mesh writers write .irrmesh and COLLADA files as UTF-16 encoded xml files. Like with all text based file formats, these files can get big for huge scenes, but I plan to reduce this a bit by adding UTF-8 xml writing support to Irrlicht in the near future. A format for animated meshes will also follow.

Here is a demo irrmesh file: example.irrmesh (94KB).
The scene in the image in the top right corner shows the first bigger scene I tested the loaders and writers with. It contains several ten thousand polygons and the loader is very fast already. But there are still places where it could be optimized a bit.

Our webs are down

Die Hard 4.0 penny arcade style.

Unified Skeletal Animation, RIP IUnknown

Irrlicht is known for its huge amount of directly supported file formats, you are able to directly load and display animated B3D, Microsoft DirectX or Milkshape files for example, using just two lines of C++ code. Irrlicht does this by implementing mesh animation code for each of these file formats. Each of these implementations had shortcomings and advantages. But this has changed a bit today, hybrid just merged the SkinnedMesh-Branch into the Irrlicht svn trunk, making available the recent hard work of luke and bitplane for more Irrlicht Engine users.
I already updated my development version of irrEdit to the new code and while I was at it, I also updated irrEdit to use the just released irrKlang 1.0. I ran a few tests and everything worked as expected, very nice. I think a big 3D editor, using about 70% of all the features of a 3D engine is a very good test case. :)
I also renamed 'IUnknown', the base class of nearly all Irrlicht classes to 'IReferenceCounted' today. This change has already been done with the irrKlang release yesterday, btw. One of the reasons for the rename is that some people don't want to use Irrlicht namespaces and get name clashes once they include the file 'windows.h'. One other reason is that IReferenceCounted is more discriptive than IUnknown, of course.

irrKlang 1.0 released, some facts and a review about it

irrklang 1.0 released Finally, after 12 beta and alpha releases, irrKlang, the audio library for C++, C#, VisualBasic.NET etc. is now available for download in version 1.0. It is always nice when ones software product reaches version 1.0, and this is the case with irrKlang too of course.
The library is now stable and has a lot of features: irrKlang has been downloaded now several ten thousands of times already before it has reached this 1.0 milestone. It was tested and used by hobbists, irrlicht users, indie and 'big' game developers, and even scientists and 3d engine developers, some of them have been mentioned and linked on this blog already. It is very nice for me to see that people consider irrKlang to be very useful, and that it helps these people. Of course it is also very nice that some people even buy commercial licenses of it and that it is included in products which will be available in stores in the near future. Wow, a product using irrKlang which you can actually touch, that's cool. :)
This release of version 1.0 also brings some new features and an improved documentation (irrKlang for C++, irrKlang for C#), but also something interesting for indie developers: The pricing scheme is a big more flexible now I think, which is the result of several mail discussions with customers.
Thanks to all people using irrKlang, especially to those with all the constructive feedback, I bet we'll see an even better irrKlang with more features soon. :)

Development Scheduling

I had planned to work off a lot of delayed Irrlicht work this week, because some of the major projects I am working on as freelancer and with my company should have been finished already, but the projects took longer than expected and planned. Fortunately I had expected this and will be able to compensate it a bit: I'll soon getting my hands on Irrlicht code again, yay. Which is just in time, because Hybrid, Bitplane and Luke already prepared and wrote a lot of cool stuff.
And my plan looks like this: Tomorrow, there will be a major new release of one of my other projects, and then I'll hopefully finally write some Irrlicht code again. I am also going to update the irrlicht.sf.net website design finally, with the new Irrlicht logo.