ARCHIVE: 2006 to 2010

Content from 2006 to 2010

I ran out of webspace on the webhoster where this blog is installed. After nearly 4 years and 177 published blog entries (and 58 drafts, oops).

As I am not so happy anymore about the speed thus I am not going to upgrade here but move back to my old hoster, where I started 10 years ago. This blog is my 4th-generation web-presence. I bought my very first webspace for my first site in feb. 2000 – that's 10 years of "Dom in da web" – a decade already! Oh dear!

They just upgraded my package over there so it has databases, too. Plus plenty more of webspace! Moving everything might take some time, but I hope not.

If you are not following me on Twitter, then you may not know about these links, yet:

PTex, free multi-res UV mapping API from Disney. It also require NO manual UV unwrapping! I guess this tech inside a modeling app or sculpting app with baking to low-res textures ability, would also be a very nice thing for game dev or any other real-time content creation!

Eve Online is a pretty hardcore sci-fi MMO game. The developers sometimes give some 'behind the scenes' on their blogs. Here is one about their recently deployed new planet rendering method.

Until the blog moved, happy 3D !


The Animago Award is a German CGI Award which has become more and more international in the past years. This time it took place in Potsdam, near Berlin at the Babelsberg Studio. This year there was also a conference which was mostly organized by the reseller Lichtblick.

I've to say that I was very positively surprised by the conference, I enjoyed it a lot – therefore thumbs up! It also allowed me to see some people again. For example Hanno who now works for Naughty Dog and previously at CryTek. He did a talk about Uncharted 2, I've a few notes maybe I can remember something from it … hm… I can barely read 'em 😐 … sorry will be rough!

Creating a Character Driven Game – Hanno Hagedorn, Naughty Dog

  • 8000 triangles per hero head
  • no manual low-res creation, reduction automated for faster iteration
  • Mudbox and Photoshop used (for texturing?)
  • I think he sad something about how to have a better look for the skin. I think they controlled the red tones via an extra channel that did the masking. Maybe that was mixing insidea shader via a Fresnel term or so.
  • extra ambient lightmap butthat maybe not used in close-up shots (cinematics)
  • they used 2 normal maps
    • one rough
    • one for the skin shader to produce specular highlights

  • texture variations for wet/snowy cloths and skin that got blended in dynamically
  • dynamic wrinkles using ambient occlusion and normal maps that got dynamically blended in
  • hair had around 4000 polygons (i guess triangles)
  • per frame light baking for the skin,
    • (maybe at 256er resolution)
    • which got blurred 
    • my notes say "red blur edge", not sure what it means 🙁
  • faces were hand modelled
  • audio  (voice) and body motion-cap was done at the same time
    • better quality of voice acting and sync
    • extra cameras to record facial expressions
    • facial animation was manually animated using the reference material from the mo-cap sessions
  • all deformations with bones no blend shapes (no morphing)
  • 76 bones per face

Some more general infos

  • level editor and cut scenes inside maya
  • pre-process/-production 6 months
  • production 1,5 years
  • no producers due very experienced and skilled team = flat hierarchy
  • PS3 only game
  • access to Sony's PS3 expert team

Crowd Simulation – Paul Kanyuk, Pixar

Another interesting talk was from Paul, TD at Pixar. He explained various crowd simulations done for films like Ratatouille, wall•e and Up.

  • Secondary animations via signal processing
    • creating secondary animations procedurally can become quite processing intensive
    • using signal processing on various inputs (transformation, animation etc) creates nice effects at much lesser costs
    • example Robots stopping suddenly with spring-like overcompensations
    • but phases (i.e sinus phases) should not shift
  • massive was used with Maya and Marionette
    • flow-fields on terrain to help brains via color maps
    • 6 short animation clips
    • data transport between different tools (massive, marionette etc) via invisible bones
  • different rules combined via weighting
    • avoidance
    • leader follow
    • helps to tweak, fine tune behavior
    • 200 to 1000 rules for foreground actors (? hm not sure about my notes here!)

Well, so far for now. These were the highlights. As said a bit rough but maybe you got one or another thing for you out of it.

Happy new year to you all !!

I hope you had a nice transition and a rather relaxing than stressful Christmas time!

2009 was an interesting year. After 4 1/2 years I stopped working at bogengang. As the Unity authoring environment finally became available for PC, I upgraded to the Pro version and did an interesting project with it during the summer. I’ll blog about that at a later time, too. Currently I am working with engineers and psychologist who are researching usability, stress and distraction topics for industries like automotive, aviation, logistics etc. I’ve already created 3D simulations for them in the past and hopefully we can start this year to bring it to a new level. I’ve tons of ideas … !!


Wow, what an exciting time for real-time 3D enthusiasts!


Epic released the UDK for PC: the Unreal Development Kit based on the famous Unreal 3 Engine! For non-commercial/Edu use it's totally free. And for commercial use there is a very reasonable and transparent pricing:

  • Internal Use: 2.500 US $ per developer seat per year
  • Publishing: 25% royalties for revenues above 5000 US $
  • Internal Use may stack with publishing thus: per seat per year plus royalties

You can read it directly on their site. Checkout the features, here some highlights:

  • SpeedTree included – with editor
  • global illumination solver
  • Bink Video Codec
  • Animation is driven by an AnimTree
  • animated Facial normal maps using a visual scripting system
  • slicing of objects for physics-based destructions
  • distributed assets processing
  • automated creation of navigation meshes for pathfinding
  • visual shader creation system
  • and much more of the "usual" Unreal Engine stuff 😉

Another YAY 😀

One important note though: this is basically the modding access. No source code access. So this may mean that if you can't script what you need, you won't be able to implement it.

Guys, not only the next free update just got release. It's also that the formerly "Indie" version is now available for free !!!!! !!!! !!!!

Go download it NOW


It's so intensively refreshing to see a company of enthusiasts doing all the stuff I was hoping for Virtools over so many years. When I read their interviews I sometimes I get the feeling that they read my mind! But moreover they go even further with it!!!!

Thank you!

Background details in this Gamasutra interview and in in their 2.6 press release. And look at the Unity 2.6 release notes or have at glance at this extract:

  • streamed loading in the background
  • new profiler
  • animation curves
  • possibility to use any version-control system
  • new audio backend
  • better integration for Visual Studio
  • Render Target AA (nice !!)
  • Floating Point Render Target
  • Snapping
  • Terrain Brush size Preview
  • New hotkeys for Terrain editing
  • Debug Releases of the Standalone player
  • direct import of Cinema4D files on Windows
  • fixed rendering artifacts for intersecting geometries on windows
  • etc

Before opening your projects with 2.6, backup! 2.6 does a reimport and break backwards compatibility!

Interactive 3D for all – especially for casual games – is now !!!

YAY ! 😀

I've no iPhone so multitouch is still something "new" to me. I was also thinking about buying me a smart-phone to help me organize my project tasks, daily ToDos, rendez-vous digitally and for entering some ideas, notes etc quickly. So why not combine that?

The iPhone is one of the best smart phones out there, but it's quite cost-intensive. Without contract one has to pay over 1000€, in Germany. There is only one carrier offering it officially (locked) and although it has the best network, the plans are not very attractive for us. If i look at the amount of hours I call into various networks (per month), it becomes quickly obvious that being at t-mobile would increase my monthly bill by a large chunk. Moreover it comes with tons of restrictions (no VoIP, no IM, no tethering without additional fees etc.).

So I am looking for less-expensive and lock-free alternatives. I had a look at the HTC Hero. It's quite a nice device. The screen is a bit smaller, but it already makes me wonder if it's not too small. The "sense" UI seems nice, and I really like the word-suggestion HTC added to android. the thing is, in portrait mode the keyboard still has plenty of keys and they are very small. I didn't like using it. In landscape mode it seems totally fine BUT when I tried to add a new entry into the calender, the keyboard didn't switch into landscape mode. Bummer! 😐

So i tried the same on the iPhone and surprise: same problem there! It didn't switch the keyboard into landscape for adding calender entries. That really surprised me. In the shop there was also an older G1 with a real (hardware) keyboard and it's using the original android gui. I did the same test there, and you know what? Virtual keyboard aligned to landscape while adding a new calender entry, nice! I pulled out the hardware keyboard and enjoyed that even a lot more. Typing on that was much faster and less error prone. I am not using Google services extensively (don't even use gmail!), so would have to check how I could use it with my stuff. It is also said that battery holds only aprox. for one day.

If you are using a smart phone, what are you using and are you happy with it (also for business purposes)?

Besides this, I also went by one those new multi-though screen-and-computer in-one things. Maybe from HP, a Touchsmart or so. I played a bit around with it and wondered how this could be useful. At a moment I had a drawing application running and draw some diagram flow-charts. After a short amount of time my finger tip actually started to hurt! This was surprising. I hope that this was an issue of that particular screen and that it is not something to deal with on every device.

If you are not following me on twitter, you may want to check out some trailers of the Ubisoft game "RUSE, which shall be multitouch enabled (click for video):

I wonder if this has some efficiency or speed advantages? Or only more immersion?

Looks like Window7 is now available. I wonder why most of the media is so positive about it? There is still a ton of workflow and usability issues that could have been improved… at least as far as I can judge from the release candidate I installed in a VM for exploring.

Also the upgrade price is kinda evil, can't see what justifies it – especially if you consider that most weren't really happy with Vista. Some people say Windows7 is merely a service pack that shows how vista should have been. Well, I can see that there are improvements compared to Vista, but overall? Moreover the system-builder/OEM price is much lower than the upgrade price – that's strange, not?

Something that really makes me chuckle, is the fact that on many places, Windows 7 "new features" description mentions on something like the 4th place: new desktop background images !! woohooo… a killer feature!

A few things still annoy me lot: I use several icon-bars in the task-bar – this way they are sorted into 3 categories: "all-time-time" stuff (mail, browser, file-manager, communication-tools etc), development stuff (visual studio, virtools, unity, pspad, winmerge etc) and one for games! 🙂 The thing is, two of them are collapsed, so that there is only the label and the "small arrows" button. So it's like those "stack" things on the Apple OS. I like that but the bad thing is, the label is not a button and there is not an option to make it a button. I know, it's a small thing, but it would a difference !!

Although the developers of tools like 3ds max and Maya found ways to handle big, big vertical pop-up menus, Microsoft comes up with inefficient solutions. If we look at the systems menu from the start menu, it's all one big list that doesn't even fit my screen. Tiny small arrows indicate hidden elements. There is plenty of horizontal space, why not use it? Any why not finally sort them in some categories via tags. One row hardware, one row software, one row apps etc. On OSX they did it and I liked it. No big deal, not? Actually they did something like that if you open the system settings folder as window – except it's more of a hierarchical layout than a horizontal.

They released the widgets from the sidebar, which is a good thing. There is a "notes" widget, that you can resize and finally you get the required space to use it in a meaningful way. But not all widgets are well designed. The RSS reader is not resizable and you can specify and RSS URLS: only news from MS!

Btw. why don't they allow to tag program folders, for that installer automatically could create their shortcuts there. This way we could create a folder with the name "2D and video" and tag them with image, 2D, video and the like. Any installer then should know what tags it aims for and preselect those start-folder that fits best. Would bring a solution to those big menus where every guy creates its stuff under root – giving up to structure in a hierarchical way. Or a smarter uninstall mechanism that tracks where I moved the shortcuts to.

Jumplists might be useful, I probably won't like the library folders thing. No idea about "areo-peak" as it didnt work in the VM. Overall I won't upgrade for ~130 €!! 50 would be ok I guess. For ~80 I could get it via OEM… still too much ;P

What about you (those who didn't convert to OSX yet)?

GarageGames has released it's new product Torque3D last week. Time to have a look at it! 🙂

I've to say, that I never used GaragesGames products before. Correct me, if my first impressions are wrong.

Installation and Startup

Let' begin with the first step: installing: went smooth except it defaults to a target directory right under C: instead under program files. Moreover it doesn't prompt for the start menu location. Things that a modern installer shouldn't do anymore.

GarageGames kinda remained to it's used scheme: a start dialog, called Torque Toolbox, allows to select the project and then what editor to launch. It's not a all-in-one editor approach but world-editor and GUI editor are separate. What I like is the list of all available projects, as it allows to switch between different projects quickly.

Torque3D Toolbox

Instead of starting with the demo project, I start with a blank one as it forces me more to explore and trying out things – and thus might to things that are unexpected. Creating a new project shows a confirmation dialog that is unfortunately not big enough to display the whole message (target path).

Editor GUI

The world editor consists of one window with a custom GUI inside of it. It's not possible to tear off GUI elements for a secondary display. On XP machines this is bad for dual-monitor setups in non span-modes. On Vista the 3d acceleration works a little better on the secondary screen thus it might be less a problem in future.

Using the Function-Keys one can toggle between different editing modes: terrain sculpting, terrain painting, material editing, world editing etc. Depending on the editing-mode an "inspector"-like dialog on the right side adapts it's content. Unfortunately that inspector-window doesn't snap to the right side – it's aligned and sized correctly for the startup window size, but upon resizing the main-window it doesn't adjust automatically. This is not so good.

Torque3D Editor

As I said, the GUI system is custom (except the main menu bar). It can be scripted and therefore the editor itself can be extended via scripting, which is a very nice thing. The GUI itself looks quite good and comes with resize-able panes and collapsible panels. Also the color dialog is good. Windows or panes also snap in range of each other but as said, there are no real docking areas. Editing values like vectors in the inspector is not so good. It's merely a text field with all values listed and separated by a space/blanc character. It seems that there is no way to "slide" values using a separate-gui-handle or a right-click drag operation. This makes tweaking very ineffective.

Moreover the keyboard shortcuts do not take localization into account: undo is on the German keyboard not CTRL+Z but CTRL+Y. But the good news is, there is UNDO ! 🙂 

Scene Navigation and Object Transformation

Navigating the scene is easy with the WASD controls and the mouse. Unfortunately there is no speed modification by holding the shift key while flying but there is a slider in the GUI that allows to adjust the speed, … good! Besides the fly-mode there is also an orbit mode. Sometimes the camera does reset it's position and orientation to suboptimal distances when switching between the modes – this gets annoying pretty fast. It is possible to define "view bookmarks" which is nice and not often seen in 3d authoring tools. Using the 'F' key, you can focus the view to the selected object – like in Unity.

Very nice is the 3D transformation handle/gizmo/manipulator. It also includes handles for translating on a plane – like in 3ds max. But it requires to pick it up quite at the corner, which is not so optimal. There are also snapping tools and a mode to snap the object to the terrain surface, very cool! You can also toggle between the object's bounding-box center and the object center, which should be the pivot point. Holding shift while dragging and object, creates a clone – nice! Switching between transformation modes is fast with the key 1 to 4.


Materials seems to be based on a uber-shader. Therefore is quite easy to tweak materials – unlike in Unity which has a powerful shader-system but when one is wanting a material-variation where it's double-sided or using vertex-colors, it requires to copy the shader and modify the shader code of the copy manually for the desired effect. A couple of features like glow, specular, detail map, normal maps etc. are just check boxes thus very easy to enable/disable for a selected material. Torque3D offers max.  4 layers / 4 passes per material. It's maybe not that customizable, but really easy to setup. Moreover it already includes frequent aspects like specular or normal maps, emissive color and transparency.

Torque3D Material

Creating new materials seems to be not very intuitive with the material editor. I often tried to create a new material but somehow it was never stored properly. Better is to tweak an existing material, but even with this I had problems. I wanted to modify or change the material of an imported object and switch to the object-editing mode, called Shape Editor. But even there I had not much luck. It's a bit confusing as the GUI obviously allows actions that are not valid. Also terrain materials can't be created in the Material Editor Mode but have to be created via a separate terrain operation that is listed in the main menu – i.e. via "import height map". So let's go with terrain creation and modification.


When you import a height map, you have access to the dialog where you create material layers and their textures. Unfortunately it's a bit buggy as it allows tweaking of the texture slots without creating a layer and sometimes material names are not saved back into the channel list. Deleting a material there seems not to be possible. Some text labels are not very well named: "texture maps" would be more descriptive when called "masking textures" or something like that. Luckily the documentation is already quite good and also features the very important search functionality.

Blending between terrain-materials happens on a per-vertex basis, often also referred as "texture splatting". I like per-pixel blending but per-vertex blending allows cover bigger terrain chunks. Unlike in Unity, Torque3D can't smoothly blend multiple materials upon each others. It does blend in a linear way between material "tiles" but you can't mix. This is not so good, as creating terrain texture variation becomes more difficult.

Terrain blending

Terrain materials consists of a diffuse map that gets stretched across the whole terrain mesh and a detail map that is blended in at a specifiable distance from the current camera position. Moreover you can define an additional normal map for the detail.

Paint brushes allow to paint materials or terrain height easily. The brush size can be resized on the fly by holding CTRL and using the mouse-wheel. Unfortunately this also zooms the camera at the same time. Moreover the brush size value doesn't get updated in the GUI. Otherwise the change can be changed via the GUI. Also not so good is the maximal brush size of 40 units. The painting or sculpting process works very smooth – no performance problems! In Unity I sometimes had it working less smoothly. Also nice are two slope filter options, so painting only happens in the specified slope ranges. What should be added though are presets for fast switching or memorizing values, plus noise/blur functionality as hard filtering doesn't always give a nicely blended material distribution in transition areas.

I tried to import a height map but that failed. It says to look into the console for further details but I have no idea how to open it!!!

At the distance the terrain LOD sometimes gives slight shading artifacts on slopes due the vertex-lighting. The triangulation can become noticeable at distance, but no "popping" effect occurs. Also no cracking holes at cliff-like mountains, something I sometimes saw with the Unity terrain.

An interesting feature is the possibility to project terrain UVs from the sides for a specific texture. Unfortunately there is no instant feedback when editing properties of terrain materials, one has to close the dialog to see the changes. It's classic GUI mistake – instant feedback allows faster tweaking!

Rivers and Roads

Let's get to something nicer: road and river creation tools based on splines! You can change the edit-mode to create decal-roads, mesh-roads or rivers. Decal roads are a flatly extruded shapes along a spline path with a decal texture. Creating paths for roads and rivers, is ultra easy and fast. Simply click on the terrain where you want the next curve-node to be. The spline can be tweaked afterwards: move, remove/add nodes or changes the width! When creating rivers, holes between the river surface and the terrain surface gets shaded red ( in editing mode), so you instantly see layout-errors, nice! Rivers have a refractive and reflective material with mesh and normal map deformation for waves. They also have a foam texture at their borders but it's unfortunately not smoothly blended out at the borders – thus on beaches it might get a hard cut.

River Waves Spline-Based Roads Bridges

The "mesh-roads" also gives height to the roads. This can be used to also create bridges fast. What I am missing (or I simply didn't found out how to do it) is the possibility to use transparency for decal based roads, so they can be made to blend it's edges smoothly with the ground. Imagine using it for paths that don't have sharp shapes.Sure, you can paint paths, but using decal roads might have it benefits, too. The reflections of the river may become unaligned, if the rivers flows quickly downhill (strong slopes) – but that's not surprising. 

Btw. the trees you see in some of the screenshots are COLLADA files that I downloaded from 3DVIA. Adjusting materials is not always straight forward but over all it works painlessly. 

 To be continued …

Writing blog articles can be quite time consuming. This is always why there weren't many recently.

Somehow at the beginning of this year tons of people suddenly started to use Twitter. Friends told me, that it took some time but they actually love it. So, from time to time I post there an interesting link or a personal comment. I will try to use both "channels" in a complementary way.

Recent interesting stuff I referred to:

Eyfinity from ATI, Multi-Mon Setups for 3+ Screen
Torque3D out of beta
Shadow-Based physics game from ex-Virtools user (and Unity user at flashbang studios)
Visual Scripting in a Ogre3D based game-editor
Nebula 3 Device also as webplayer

etc. See you on twitter!

Me on twitter




CPU GPU love

Last year I've written about NVIDIA aiming for doing more general computation and INTEL going for more specialized, parallel vector computation. Since then we got tons of more info about Larabee, CUDA, Stream SDK, OpenCL, DirectCompute etc – all indicating that there might be a fusion one day.

According to a well-known german IT-News Site, INTEL revealed at the IDF09 that at the end of 2010 something called Advanced Vector Extensions (AVX) will be added to DIE of the processor generation named "Sandy Bridge". At a later time, this will be the place for the Larabee integration. Prior to that – in early 2010 – intermediate versions will be available where the INTEL's CPU / GPU mix will in the same box.

Sounds like this won't be "one" unity but separate units very, very close to each other. Obviously this will increase the speed of data-sharing.

"The CPU and the GPU create a co-processing environment where we have the CPU operating on very complicated sequential codes and the GPU operating on massively parallel applications."

Jen-Hsun Huang, NVIDIA’s President and CEO