I am also wondering if people in the U.S. are watching that movie. And if so, what will they do? Nothing as usual?
Two shocking related news: In Britain, they arrested and questioned the actors of that movie under the pretext of anti terror laws some months ago. Second: Currently, 75 prisioners in Guantanamo are staging a hunger strike and the commander of that detainment camp is telling that this is a known technique of Al-Kaida. Huh? Speechless.
The first obvious new feature is a texture browser, it shows all loaded textures and makes it possible to select them. It is able to display textures in multiple rows and columns automaticly and scales them to fit into the window. There is currently no way to set the selected texture into a material or onto an object, but I'm going to add this soon.
Another bigger change: I rewrote the movement, scale and rotation tools completely. As you can see on the shot - the red box is selected - it now works similar to Blender or Maya. After playing around a lot with the old tools I noticed that it is easier this way to manipulate the scene.
And a last note: Several people asked me about that tool, here are some answers: The name of the editor displayed on the window is just a placeholder, I have no name for it yet. Designing: I simply hand code everything, I don't use any editor for it. Beta test: Sure, planned. As soon as it is usable, but this will take still some months or at least weeks. Purpose: Test tool for Irrlicht, Scenegraph editor, item placer. Vertex/Polygon editing: Maybe later. Plugins: Sure.
Here is some news for you, readers: Bloggers really LOVE comments. Write whatever you want, even the most stupid thing you can think of, it's great for bloggers to read other thoughts and opinions on their blogs and in this way it is like a small reward.
Some weeks ago I noticed that when I was telling some of my experiences or ideas to people I didn't know before or didn't see for a long time and they sometimes would interrupt me with the words "I know, I read your blog", which kind of surprised me. After this I was ranting in this blog about the fact that nearly nobody of the average 500 (WOW!, btw) visitors each day is commenting, and funnily this helped a bit, people are now writing comments. Thanks a lot for that.
So, dear desperate commentless blogger: Keep on blogging. They'll read it, they simply just don't have the idea that a comment would be nice.
AJAX web development technique 'Web 2.0'. In my opinion it is useful for some very few toy applications like maybe flickr or maps.google.com and helps improving web services, but I don't think that AJAX is that revolutionary to claim that this will be the foundation of a new web area. Did you ever really think of editing letters or pictures via a website? Or did you ever try out live.com? It's horrible, a user interface nightmare. Ok, maybe the technique still has to evolve a bit and browsers are not prepared for it yet.
O'Reilly recently trademarked (servicemarked? whatever) the name 'Web 2.0' for use in their conference names and is sueing people using it. Maybe at least the name Web 2.0 will disappear now slowly and people will use a more adeqate name for it. Ok, I doubt it, but at least I may be allowed to hope. :)
the editor I'm writing. It now looks like this:
The most interesting new thing is the material editor tab to the left. It works just like the property window but has some additional features, for example a control which shows the 4 textures of the currently selected material parameter entry (an SMaterial structure for those familiar with Irrlicht). This new control is quite special: Because I didn't want to need to copy texture data from the 3D device into main memory, I simply draw that control using the 3D device. And in addition, I'm mixing drawing here with the GDI, the black border and the separators are drawn using the Windows graphics device interface, later I'm also going to show some text on it. I think some other editors are doing this in a similar way, for example Maya or the Unreal Level editor.
Heise.de analyzed the passwords of the users and found out that the most used pw was '123456'. Pretty creative, eh? But more interesting: The second most used password was: 'ficken' (=german, to fuck). 404 users used this one. :)
to do this:
bullshit like that? This one is even worse. OMFG. Well, at least they don't try to relate global warming to terrorism. (But remember, the global average temperature IS related to the approximate number of pirates.)
Deleting the entry which leads them here? That would be boring. :) Also, maybe it would't help at all, search engines can be like elephants.
That's really a bit tricky, maybe they'll improve this in a newer version. Currently, you have to do this:
Select Tools -> Appearence. Choose the Toolbars tab. Click on that tool bar and choose 'off' as on the screenshot. Done.
the STL already. And if so, you might have come to a point where you saw classes named Allocators. In short, those simply are objects wrapping new() and delete().
Why would you need such a thing? You can do several useful thing with that, for example optimizing the speed of your containers by using some sophisticated allocation scheme. Or even better: Preventing that your application crashes at certain points, when you are using template containers through different modules, like different .exe and .dll files. Simple example:
In this sequence diagram above, a program named main.exe is asking a module named Irrlicht.dll the return some text. Irrlicht.dll is doing this by creating a string object, which then allocates some internal buffer to store the characters. The string objects is returned to main.exe and then destroyed afterwards to free the allocated memory holding the strings characters. The problem: Because string is a template object, the delete() call is done inline for the heap of the main.exe. But because the memory has been allocated in the irrlicht.dll heap before and not the main.exe heap, the application will crash. That's not nice at all. Solution:
The difference is obvious: The string is not allocating its memory by itself but delegates this to an Allocator. This class is able to allocate and deallocate the memory from the right heap, and the container won't crash anymore. Really simple.
Last week I implemented this for the most important Irrlicht containers with the result that they now work independently from the heap where they have been created. And the concept of Allocator objects really is useful: Because at some places of Irrlicht you can be sure that a container never will get used in another heap, I was able to write a second Allocator object which ignores heaps and can allocate memory a bit faster. (Of course with the constraint that it never will be used in another heap, otherwise it would crash.)
I never had problems with Irrlicht containers and different heaps before in programs I wrote, but because the Editor I'm currently writing is exchanging a lot of data with Irrlicht it has become necessary. Sorry that this took so long. :)
(BTW: I created the diagrams with UModel 2006, Altova's UML tool.)
Other tasks completed this week are the creation of a scene node factory mechanism inside Irrlicht, making it easily possible to create all those scene node types at runtime (useful for the toolbar or when loading irrlicht scenes from files) and extend Irrlicht with new ones. And I added allocators - a long user demanded feature for all irrlicht template containers (I think I'll blog shortly about this in the next few days).
And today I thought about adding some more file importers. I know, Irrlicht already is capable of importing 12 different 3D file formats, but some users already contributed some new useful ones, and I would like to add one or two other popular formats. Or maybe improve the COLLADA loader a bit. Lets see.
Rockstar Vienna is dead. A coworker told me this morning, but I couldn't believe it, until I read Jurie's blog post this evening. It's a bit shocking, especially because I know several people working there, but the most shocking thing is how they did it. Looks like none of the employees knew this and they have been dismissed by security guards. Strange. Also, this will have great influence on the Vienna game development scene. I hope not only bad ones, but I fear.
Ahyes. What a *coincidence* that this happened coincidentely with the E3.
Uh. I really didn't spam anyone. The only possibility is that a spam bot infected my PC. But I really didn't find one, and I cannot imagine how this could have happened, having all security patches installed, using a (stupid) router, firewalls, alternative browsers and other stuff like this. Hm. What now? Reinstall windows?
It's the property window. It already works, and properties of any scene node can be read and changed with this. Pretty boring, right? But the cool thing about it: Everything is done automaticly now. I don't have to code reading and changing methods for all properties of every single scene node type now. I simply implemented a generic, pretty powerful interface for accessing and changing properties of Irrlicht objects. This interface gives access to the attributes of every scene node. Useful for scripting languages, debuggers, xml serialization - or a property window of an editor. Nice. :)
war criminal will come to visit Vienna, Austria. So I will have time to participate in the demonstrations. I think there is no better way to show our government, the EU, and the world what really a lot of people think of this guy and his politics. And that we should stop supporting it.
converted another soul to opera. Yay. But of course, that browser isn't perfect either. It's just software after all. And in this case, it is written in C++ and with Visual Studio, as I just 'discovered':
Yep, they can be tricky, those pure virtual methods. You really don't expect an objects vtable to change when it is destructed. Or who knows how they managed to create that bug.
job page at microsoft.com:
Direct Physics? Nice. The death for physics middleware?
I started to write a small 3D editor. I started it in C#, using Irrlicht.NET and Windows.Forms for the UI. But three days ago, I decided that it would be better to stop development and restart it with C++ and wxWidgets, before it would be too advanced. The main reason behind this decision was that it would be simpler to improve Irrlicht simultaneous with the Editor, and easier to try out different approaches to new features, because writing everything in C++ removes the need to write and use wrapper code in managed C++. So I sat down and ported - or better - completely rewrote the editor from scratch. This is the result:
A simple 3D editor, with nearly the same functionality, once written in C# and once in C++
There are small differences between these two versions, for example some toolbar icons or menu entries are still missing, and the docking controls look a bit different due to the completely unrelated used docking frameworks, but everything works and is usable. It is quite interesting to compare the results of this work. For example, the common myth (which I believed too, until now) that you are developing applications faster with C# is now dead for me. You cannot compare the development time of these editors (about 32 hours for the C# version and about 5 for the C++ version) because a lot of user interface research went into the first one. But you can compare amount of code: The C#/windows.forms editor needs about 70 KB of code, while C++/wxWidgets only needs 36 KBytes. Thats quite a difference. And interestingly, the code does exactly the same on both sides, I'm using libraries for the same stuff in both versions.
And there is another interesting thing: The C++/wxWidgets version is way faster. The C++ application starts up instantly (C# version always needs some seconds), all views and trees update faster, moving of windows is faster (repainting 3D stuff) and I even have the subjective impression that clicking buttons is presenting results faster. So now, where is the advatage of C# again? I'm a C# fan, but now a bit disillusioned. But who knows, maybe C# just is a bit slower when it works with mixed mode assemblies.
gedankensplitter. Looking forward to see more posts.