BlockLeftTop, PRELOAD BlockLeftBottom, PRELOAD BlockLeftStretch, PRELOAD BlockTop, PRELOAD BlockBottom, PRELOAD BlockStretch, PRELOAD BlockRightTop, PRELOAD BlockRightBottom, PRELOAD BlockRightStretch, PRELOAD
DeltaEngine

Another crazy post at GameDev.net

by Benjamin Nitschke 30. December 2005 07:59
I was just reading this post at GameDev.net Yes I'm an optimization freak and wanted to help some guy figuring out if multiplications or divisions are faster on todays CPUs. It turned into a "c++ compiler > all" war after I posted a c# example program because the c++ compiler does optimize everything out and made my performance test useless. However I also wrote a c++ version and a c++ with assembler version and the results are all the same (except in the c++ only version when the compiler cuts out all tests and returns 0ns for everything):

Each calculation is executed 1 billion times:
3.000000/2.000000=1.500000 took 3663257ns
3.000000*0.500000=1.500000 took 1366358ns
2.000000*(4.000000/5.000000)=1.600000 took 7738814ns
2.000000*0.800000=1.600000 took 1366403ns

For more info read the thread, especially if you think profiling makes no sense in debug mode (wtf? I always develop in debug mode and it helps enormously) or just a c++ > all freak. A lot of ppl will be on your side ^^
http://www.gamedev.net/community/forums/topic.asp?topic_id=366712

CR_Commenter Update v1.5 and testing out the Boo Language

by Benjamin Nitschke 29. December 2005 07:47
I've updated my Commenter plugin for CodeRush today. I did some refactoring and was getting annoyed that some of the .NET 2.0 features did not get commented properly yet (like generics or anoynmous delegates). I also fixed some older bugs and issues.

This is the changelist (full history can be found in the original article):

  • First version for VS2005 and using .NET 2.0 now for supporting generics and anoynmous delegates (more useful comments now inside of anoynmous functions and code blocks defined there).
  • Fixed again: No xml generation inside of methods (recent CodeRush version changed its behaviour somehow). Check is now performed inside the recursive method, this fixes all older issues too.
  • When commenter is disabled the globol hotkeys don't work anymore now.
  • Version number in options and a link to check if any new updates are available
  • Hotkey for generating comments and XML: Ctrl+1. Saves you typing '}' and doesn't require you to go to the last line of a block all the time.
  • If using defines in the using statements the surrounding region is now generated properly. Also adds automatically the #if DEBUG and #endif statements (which I use to exclude NUnit from the release build) around using NUnit.Framework, which is often generated by adding the namespace automatically or using some template.

Click here to download CR_Commenter.zip v1.5
And here is the sourcecode for CR_Commenter v1.5


I also wanted to add an embed with region feature, but it is already pretty simple with CodeRush if you know the hotkey: Select a block you want to build a region around (e.g. a method, you can press ctrl+shift+up/down quickly select the method). Then just press Ctrl+R, thats it.

If you are using CodeRush (and you need it for my Commenter) you should also check out these new CodeRush tutorial Videos from Developer Express, they are pretty cool and informative.



I've also checked out the Boo Programming Language today after playing around with IronPython the last couple of days. Boo is really cool and introduces a couple of ideas I agree 100% with. I have to try it out a bit more. One major problem is the fact there is no Visual Studio addin and typing in some editor or the console is no fun at all. A plugin for MonoDevelop and SharpDevelop does exist (and is actually implemented in the latest versions), but while these are very good open source IDEs, I'm a Visual Studio user and have a lot of addins I would miss in any other editor.

I use also use UltraEdit, which is pretty cool and can be used for all kinds of shit (not only text, hex, html, but also millions of source code formats). However, the Boo language is missing syntax highlighting support in UltraEdit (while almost 1 million other languages are supported). I just wrote this little wordfile myself for UltraEdit Boo syntax highlighting support: boo.txt, just add it to your UltraEdit wordfile.txt file.

Again: Boo is a cool language. I heard of it at the PDC, where I saw even the developer in some session, but I never checked it really out (maybe it was too Linux oriented for me). Maybe I will try to convert the SharpDevelop addin to Visual Studio if noone else does it (because I would really want that feature when coding in Boo). I still like Lua and Python too, but they don't have any intellisense support either, which is one of the main reasons I haven't switched over to writing more in those languages instead of c# right now.

The year 2005 - Reviews of Games, Movies, Software and Programming Books

by Benjamin Nitschke 28. December 2005 03:44
I'm working on a little other project right now and that will take a while before I can show anything. Its about a new programming language and testing out MSIL (.NET immediate language, looks like assembler) stuff.

I wanted to make a review of this year, so instead of thinking to much about it, here it goes. I will only talk about games, books or movies I know and saw, obviously this all is just my opinion! Some entries are older than this year, but I saw, played or watched them only this year.

Btw: I wrote this whole article (which is almost 40k in html, which I always use when writing blog entries) in a couple of hours and I have to say my keyboard layout I invented last year is really kicking off. I'm writing faster than ever and stay as relaxed as if I hadn't typed much at all.

Content

Best Games

The best game for me is still StarCraft, so lets talk about games that did come out this year.

Action games and others (only the best). In just the last 3 months a really big number of shooters did came out, all of them are really good. Strategy games are handled seperately below this section.

Battle Field 2 4/5: Not much to talk about here. This will be propably game of the year if voted by online gamers. It is a good solid online game, but a bit too time consuming and too realistic for me. I'm more on the fun side when playing a shooter. The predecessor Codename: Eagle (that is before Battle Field 1, back in the year 2000) had already a lot of the game play in it and was oriented more on the fun side. I still like to play it on LANs. Battle Field 2 is also a great game for LANs, if you have enough people.

Serious Sam 2 5/5: Serious Sam is just a great fun game. I especially like it because I can play it like Quake for a couple of minutes and then return to working. There are not much games around today to do that. Also the amazing mass of levels and cool ideas in this game are just great. It is also the best coop shooter ever and part 2 is as much fun as the first Serious Sam. The only thing a bit annoying is the video skip error in coop mode and that there are no times in the games were you can relax, it is action - action - action! I already played it from start to finish twice, really good job croteam (once mostly alone and once in coop again).

Quake 4 4/5: Hey now! I'm a big fan of all Doom and Quake games, I've played them all and they invented the whole shooter world today. Doom 3 was a disappointment for many people and Quake 4 looks exactly the same. However the gameplay is really good and except the fact that the first couple of missions are way to easy IMO the game gets really good and hard in the second half. It has a decent amount of levels and is a really good singleplayer shooter overall. The multiplayer part makes like in Doom3 no sense at all, I still can't understand why so much good singleplayer games force themselfs to implement a multiplayer which just can't work with this kind of a game (same think for Fear btw). The scenes in the first half of the game get really brutal, but if you know about Doom 3, you won't get shooked by Quake 4.

Fear 3/5: This game got me really exciting and the demo was a hell of a demo, one of the best shooter demos I've ever played. The first couple of missions are still good, but then it gets boring and more boring. You have seen all the graphical effects and buh ho the girl and that old man that appear in some corner or directly in front of you don't shock you anymore. The more I played the more bored I got, I haven't finished that game yet. And that is a really bad sign because I usually play every single game I like from start to finish. It reminded me a bit of Project: Snowblind, which got boring after a while too and I never finished it. Anyway, if you get shocked or like horror or action movies this game is for you (ok, you might need a powerful and fast computer too).

Call of Duty 2 4/5: Call of Duty 1 was a big success. I liked really don't like any World-War-II games because they are almost all the same and there are way too much games with this setting. However Call of Duty was different, it was fun to play and the missions were designed really good. The only thing of part 1 which annoyed me a little was the incredible short singleplayer (4 hours and it was already over). Call of Duty 2 is very similar to the first part, but includes new settings and exciting new graphical effects. Overall the game is produced really good. I haven't completed it yet, but I plan to play it soon. People who have played it liked it a lot. There are a lot of fan sites and stuff around, but I remember some strike some time ago because the community didn't want to wait any longer for the game SDK and said they want to stop playing CoD. Dunno what happend to that.

Guild Wars 3/5: Guild Wars is a really good MMORPG (massive multiplayer online role playing game) and a lot like World of WarCraft (which is also a nominee for the best game of this year for most RPG fans), but it doesn't cost 15 bucks each month. I tried it out in may or something, but it didn't motivate me enough. I only played to level 10 or so and then stopped playing because I had other things to do. Thats the main problem with RPG games these days, they take too much time and they are just too chaotic and not shooter like enough. I like the older games like Diablo2 or Sacred (btw: the Sacred addon which came out this year was fun too) much more, which are fun to play for a while and then I can throw them away.

Strategy Games (RTS):

Act of War 3/5: At the first look this game is all about graphics and effects, the videos. Then after the second look it is even worse, there is no good unit handling possible and almost no balance at all in the game. However, it was still fun to play the singleplayer (as short as it was) and overall it was an ok game. The multiplayer is due the missing balance and the immense amounts of hitpoints each unit kills not really fun. C&C players will like this game more than StarCraft or WarCraft gamers.

Armies of Exigo 3/5: This game did come out November 2004, but I had no time to play it back then (only the demo once). Like The Lord of the Rings RTS game (see below) it is very similar to WarCraft III, but IMO Armies of Exigo is way better despite the really bad success it had (almost noone knows about this game). Armies of Exigo was planned as progamer game, has some really decent videos and nice graphics (almost as good as LotR and way better than WarCraft III). However, all community sites have closed and there is absolutely noone playing online (and not offline either ^^ the marketing sucked even worse than for Arena Wars, and this is an EA Game). Anyway, it is still one of the best RTS games I played this year.

The Lord of the Rings: The Battle for Middle-earth 2/5: Basically this game is exactly the same as Armies of Exigo except the big name and the amazing marketing and success. I personally don't like this game at all. The singleplayer is boring as hell, every mission is the same and only the first couple of missions were made interessting. The multiplayer is even worse, there is no good balance and the gameplay itself is boring as hell with all the heroes and bunkering in bases. When I compare LotR online players (e.g. in the ESL or Giga leagues) with other RTS gamers (like WarCraft III or StarCraft) it is really sick: The LotR are sitting there playing with one hand only and clicking the mouse a couple of times per minute. On the other hand WarCraft III or StarCraft players use both hands and click like 50 times per second and almost destroy their keyboards while playing (which is also more fun to watch ^^).

Earth 2160 1/5: Another game where almost every screenshot looks like it is a shooter. Last year a lot of games like that did come out, all sucked. But the bad controls or the strange screenshots are not the problem of this game. The intensions and ideas for Earth are really good and the graphics look fine too, but the game is just no fun to play. The singleplayer is just boring as hell. You get the feeling like no of the designers plays any other RTS game. It is more fun to play Warcraft I or Dune 2 (which are almost 14 years old). The multiplayer makes absolutely no sense at all, it is very hard even to log on and when you finally made it there is noone around. I played online once or twice and it is really just crazy how imbalanced this game is. PC Game magazine claim this game has a great balance and when you actually trying to play it seriously it is like running against a wall. Tip: Choose the alien race and just build few brain bugs, you can't lose a game now. Better tip: Don't play this game at all. And don't ask me why this game has so many awards it doesn't deserve.

Age of Empires III 3/5: And finally a couple of month back a new Age of Empires game came out. The graphics are really good and it is one of the first RTS games ever to make good use of shaders and normal maps. It is a solid game and especially something for fans of the Age of Empires games. The Age of Empires games did never really convince me. Maybe I just don't like the setting, Sci-Fi or the present time is much more interessting to me. Other than that I havn't played AoEIII a lot yet, I can only tell you that the heroes idea and the extras you get from your hometown are really bad ideas IMO. While I would say AoE is more of a singleplayer game than a good balanced multiplayer game, the already big online community of AoE does tell me the opposite. There are already a lot of leagues with AoE in it.

As you can see I'm not very friendly to RTS games. I rather play older games like StarCraft, WarCraft III or even C&C Generals than any of the RTS games this year (yesterday I even played WarCraft I (1994) from start to finish, cool game ^^).

I don't know of any other RTS game that did come out this year, maybe I missed one? Btw: I don't count Tactical games like Panzers into strategy games. Neither do The Sims or games like The Settlers or Civilization count on my list ;-) I'm not saying these games are bad, I just don't play them and couldn't tell you if they are bad or really bad, hehe. Also I think Civilization was the best game in its time and The Settlers 1 was really great fun, but why do I have to play the same game over and over again every year? Its just boring and the new sequel games don't add anything exciting to it. Anyways, the sell like shit and people keep producing them ...

Ok, enough overview. I played few more games this year, but most of the games I just don't like and I uninstall them after a couple of minutes playing them. Other games are only small games or shareware and they are not worth standing next to this big games ^^

So whats the best game for me this year? On the shooter department it is Serious Sam 2, which has the greatest replay value (I didn't even finish Fear and I will not play Quake 4 again for a while). For the strategy games above I would say Act of War and Armies of Exigo were the best RTS games released this year. I don't play AoEIII, but compared to Act of War or Armies of Exigo it is much better produced and has better graphics, I guess most people will vote AoEIII as the best RTS game this year. But please don't mention Earth 2160 ever again :D Lord of the Rings will stay with us for a while, no matter of what I think or how good or bad the game actually is.

So why not make StarCraft the game of the year 2005? I played it more than any other game this year :D It is amazing how much comunity sites and leagues were created this year for this 8 years old game (GosuGamers.net, PGTour, ESL-Pro Bw, GGL AmeriCup, etc.).

Some links about top games this year:
Best of E3 2005
IGN PC Best of E3 2005
Top 10 2004 (more like Top 10 of all time)

Best Movies

Well, I watch some movies from time to time too, but I can't remember them a week later ^^ For this reason this section is really short. For a great movie site and I bet they will do some 2005 review too, take a look at www.rottentomatoes.com.

  • King Kong 4/5: I just saw it a week ago, so I can still remember. It is amazing that this movie cost 207 million dollars. It is a really stupid movie and somehow I expected too much. Once you relax and just "watch" the movie (if you don't fall asleep in the first half) it is actually a good action movie. The dinosauriers were fun and King Kong running around in New York was great too. Just don't talk about making sense ^^
  • Serenity 5/5: I'm a fan of the Firefly series, so it is no wonder that I like this movie, which is based on the Firefly series, which was canceled after 1 season 2 years ago. Basically the idea was to mix the wild wild west with a sci-fi theme in space. The characters are really interessting and it is just fun to watch, they don't take themself too serious like some of the Star-Trek series. Anyway, this movie is really good, also for non-fans, it is produced ok and the storyline is interessting and exciting too.
  • Harry Potter and the whatever this year 3/5: Well, I watched the first one and then skipped the other two and suddently Harry Potter became really old and some of the scenes (like the bubble bath scene) were really inappropriate IMO. For Harry Potter fans this is a good movies, for the rest of us, it is just ok.
  • The 40 Year Old Virgin 5/5: This is a really funny movie and I liked it.
  • Mr. and Mrs. Smith 4/5: I just like Angelina Jolie, so every movie with her in it has to be good. Well, don't remind me of Tomb Raider. Anyhow, this movie is actually fun to watch and has a funny plot.
  • Madagascar 4/5: A nice family comedy (I went with my little sister), but the amount of CGI movies the last couple of years is rather sickening. But if you only watch every 10th of them, they are actually good ^^
  • War of the Worlds 4/5: A lot of people really hated this movie. I can't understand why, it was a solid sci-fi movie and I really liked the idea to tell the story from a completly other perspective (not the usually 1 man kills all boring action shit). Maybe it was Tom Cruise, who is really stupid (ever heard him talk in an interview?), but he is a hell of an actor and I still think this movie is one of the better ones from Spielberg these years.
Ok, I can't remember more movies right now, who cares anyway :D

Best Software

Well, the award goes to Visual Studio 2005, there is no competion, next section please :D

No, seriously: For programmers Visual Studio 2005 is the greatest thing happend this year. Even the beta, which I start using at the beginning of this year was very useful and made me much more productive. Ok, lets try to think of anything else:

  • TestDriven.NET: This rather simple NUnit addin for Visual Studio is a great way to use unit testing in Visual Studio, you can also use the implemented Visual Studio Test System (which is good if you plan to use Visual Studio Team System in the future), but if you just have Visual Studio Express NUnit is your only good choice. Download it from www.testdriven.net. The TestDriven.NET Version 2.0 for Visual Studio 2005 is available since last month too, good stuff.
  • CodeRush: Not really a new tool this year, but it is still updated and the most useful Visual Studio addin for me. They just made a couple of cool tutorial videos for it a couple of days back. I've also written an plugin for it: CR_Commenter.
  • FX Composer v1.8: The best shader edit tool around and NVidia still keeps updating it. Even our graphic artists use it now, after hiding the code and just showing them the buttons and scene preview, they are happy and can use it just fine to finetune shaders.
  • IronPython: IronPython is the implementation of Python in .NET and it outperforms the original script language by the factor 2 or even better. I played a little bit with it after the PDC this year and it made my think of a couple of new ideas. I'm still a fan of Lua and think it is the better and easier choice for small programs or just saving small scripts. However, the work of the IronPython guys - who work at Microsoft now - is really amazing.
Can't remember more plugins, but I'm sure I used a lot more and tryed out a lot of stuff this year. Check out this list of Ten Must-Have Tools Every Developer Should Download Now (by MSDN Magazine). I will not go into detail about other useful programs and tools like Photoshop CS2, 3DS Max 8, Miranda IM, Skype, etc. there are better sites than mine for that :D

Best Programming Books

Graphics and Shader technologies:
  • Game Programming Gems 5 5/5: Like any other Game Programming Gems Book this one is no exception, it is just great. You can read it from front to back or use it as a reference if you look for solution to common game programming problems and even programming problems in general. It covers 7 sections from general programming and mathematics over AI and physics to finally Graphics, Network and Audio. This one is the most recommended game programming book series.
  • ShaderX4 4/5: Another book series, I read the first 3 and use them as a reference whenever I look for cool shader effects. The 4th volume isn't released yet (but is comming this or next week, I preordered it a while back). I expect the content to be as good as the predecessors. Wolfgang Engel is a good editor and I heard him speaking at the Quo Vadis developer conference, he knows a lot about shaders ^^.
  • GPU Gems 2 4/5: And another book series (does it ever stop?). Good stuff for NVidia developers (I like NVidia), but since most shaders work fine on ATI hardware too (except you tried to write PS3.0 when ATI still hadn't any cards for that), it is a good shader book. It covers some nice tricks and can be compared to the ShaderX books. Unlike the Game Programming Gems or the ShaderX books every page is printed in color and this makes it also a good colorful picture book where I can show effects to my artist guys, who won't even bother to look if it isn't a nice picture.
  • Shaders for Game Programmers and Artists 3/5: This is one of the first shader books I've read, but even for a first book I think it is too shallow. It jumps right into post screen shaders, which are very advanced IMO and then continues with much easier shaders. The book is all about ATIs RenderMonkey tool, which I don't like because the output is unusable (I need freaking fx files). It is still a good shader book and may be helpful for artists, beginners or people who just want an overview of shader technologies.
  • Programming Vertex & Pixel Shaders 4/5: This book is the best and most complete shader programming book for anyone seriously wanting to go into shader technologies. It is a bit harder to read than the previous one and sometimes way to mathematical instead of just having fun with shaders, but it pays of because you learn all basic shader technologies you will ever need. Again a book by Wolfgang Engel (like the ShaderX books, which are more advanced).

AI Programming:

  • AI Game Engine Programming 4/5: I just got this book together with Programming AI by Example few weeks ago, so I haven't read it all yet. But from the looks of it, it goes into a lot of shooter AI problems and discusses useful techniques, not only about AI, but also how to use scripts (Lua), how to write all kind of state machines and neural nets. The CD does not only contain all sourcecode and figures, but also a bunch of useful web bookmarks sorted by category, I like that :)
  • Programming Game AI by Example 4/5: This book is a bit more for beginners and immediate programmers than the rest of the books here. It is still a great book, but it "only" explains how to get into AI programming, as soon as you are ready to go, the book ends. The book starts with math and physics and does a good job explaining them. Then it goes to state driven design and continues with game agents. It does also cover questions about path finding, fuzzy logic and scripting. It is written by the founder of www.ai-junkie.com and written really good. My only critic is the fact that it is a good beginner book (and how likes to be considered as a beginner ^^). Anyway, I got it together with the previous book at the same price and thats really ok. Maybe it is good for a reference or to tell interns or wannabe AI programmers "Go read that".
  • AI Game Programming Wisdom I and II 5/5: Similar to Game Programming Gems this series is all about finding skilled professionals writing capters and articles, which do really help you out. Steve Rabin is the editor and did also edit the Game Programming Gems AI sections, he also is the creator of www.AIWisdom.com. Like the other two AI books I havn't read all of it (I'm so busy you know), but from what I've seem and read this is a really helpful resource when doing anything releated to AI programming.

General Development and Programming:

  • Refactoring: Improving the Design of Existing Code 4/5: Dirk Primbs said to me when I read this book on the flight to the PDC that you could probably dry up a cellar with this book. Maybe he is right, this book is all about crazy design pattern and rules. The first couple of capters are good to read and the rest is more of a reference. Anyway, the idea counts and refactoring is one of the most useful processes today in writing big programs. Good book, was written in 1999 and still applies 100%.
  • Rapid Development 4/5: This is a good book about software design and keeping schedules, but it is a bit too long and sometimes hard to read (you know I have this problem of reading only half the book and then never finding time to finish it ^^). It was written back in 1996 and the techniques described still apply, but some of the ideas are not as flexible as they could be with all this new technology around (e.g. when using agile methologies you have to plan differently). Still it is a very good book and it contains a couple of interessting stories from big products like MS Word and how they never kept their schedule ^^
  • Code Complete 2 5/5: One of the best books ever for any kind of programmer. It is about describing the process of developing software and helps you to find out the most efficient ways to manage your projects. It does go into great detail by explaining which data structures, which routines, which loops or which strategies are the most useful. It is one of the books I would recommend both to new programmers and to experienced programmers the same way. This book just helps anyone and should be on every programmers desk, not the book shelf.
  • Managing Agile Projects 4/5: What does Agile Projects mean? It is about scaling and customizing your project depending on the customer feedback . That sounds still to vage? Ok, it does mean that you don't plan every single bit before writing code, but to cut your project into smaller pieces and only plan the overview and then directly start developing. Now you can present a very early version really fast and with the help of feedback (customers or yourself) you can adjust your project instead of wasting time and resources developing something noone wants. You can also shorten specific parts of your project if you see there is no time left or other parts are more important, which again is not possible if you had planed every bit of your project in advance. It is a technique that goes hand in hand with Unit Testing and Refactoring (see above). This book does give a very broad overview and doesn't really talk about coding, its just methologies. Anyway, its a good book (not too long, this way I can actually finish it even with my book reading problem, see above, hehe).
  • Maximizing .NET Performance 5/5: I'm a performance freak. In the past I often tried to reimplement existing and working code into assembler just to see how much faster it could get. Later I found out that it is often much more important to work at a much higher level and rethink a problem until the solution is good enough to run very fast even if not optimized to every bit. This is still true and I still think that most performance problems come from bad coding or suboptimal algorithms and not because of the language. However to even think of good solutions you need some knowledge of what is possible, what is fast and how do certain things affect your performance. This book gives you a very useful inside of .NET and covers a lot of tricks and tips about .NET performance. It is also a good reference book.
  • Code Generation in Microsoft .NET 4/5: Last year I heard this DotNetRocks radio show and Kathleen Dollard was the guest. She talked about Code Generation using templates and other tricks. I immediatly bought this book. It is mostly written in Visual Basic, but a c# convertion does exist too. It does a good job explaining how to use Code Generation with the CodeDom, but does not go into detail about MSIL (which I was more interessted in). Anyway, the book is written nicely and I could learn a lot from it. The books presents an entire framework for building SQL bindings, stored proceduces and building WinForms from XML templates. It is also one of the first books on this subject (and maybe still the only one going into the CodeDom instead of MSIL).

Other:

  • Programming in Lua 5/5: This is THE book for Lua programmers. It is also available for free to download from lua.org. I first read the online version and then bought the book because it is so good and it helps to have a reference. Lua is a very simple script language. But sometimes it is so simple that you just don't know which keyword to use or what to type. Having a few useful code examples every other page is the biggest help ever. With help of this book I learned Lua in 1-2 days and could really do useful stuff with it (instead of writing just hello like most languages you learn in a short time).
  • Chris Crawford on Game Design 5/5: I recommend this book because it is easy and fun to read. Chris Crawford sound sometimes a little crazy and the fact that he hasn't released any games in the last couple of years might speak against him, but his experiences from the past (he talks about the 70th, 80th and 90th and games he has done and many other classic and inovative games. He goes also into detail what is missing in most games today and how to fix that (very theoretical, but his thoughs are interessting). Even if you are not smarter after reading this book, you will feel smarter.

Ok, that's it. I have a couple of more books lying around here (like Extreme Programming Adventures in c#, Physics for Game Developers or The Pragmatic Programmers), but I have not read them yet and can't give a good review about them, but they are all good books I guess. I also recommend The Odd Todd Handbook: Hard Times, Soft Couch, which has nothing to do with programming, but helps you sometime to get up and not end like him.

I hope you like my review of 2005. If not or you have anything to add and don't encounter the Internet Explorer bug not able to post comments, you can post a comment below ^^

Merry Christmas and a Rocket Commander Video

by Benjamin Nitschke 24. December 2005 13:11
Merry Christmas everyone. Instead of sleeping or preparing mentally for christmas (well, you know, all that hugging and eating), I wrote a special Rocket Commander Christmas Edition. I got also many requests of people wanting to join the beta, which was internal and closed a week ago.

So to make the time more painful until Rocket Commander is released, here is a nice little video of it. Just 40 seconds long and it shows only the very beginning of a level, but it is already 10 MB big and compressing it any more doesn't really make sense for such a high speed game. Anyways, enjoy the video (tip: right click and choose save as (rename it to some .wmv file) if your browser wants to directly play the file, which may cause a lot of waiting): RocketCommanderPreviewHigh.wmv (10 MB)

I will post more stuff about this year, my experiences and some more stuff next week. Stay tuned.

c# is getting more and more accepted in the game programming community

by Benjamin Nitschke 16. December 2005 09:19
A couple of days a go this post at gamedev.net started and did not end in a flame war, but a very long discussion about c++, c# and other languages.

Unlike a couple of years ago, when everyone was still bashing the hell out of c#, its performance and the windows only .NET, this time most of the game programmers agree that c# is a much better language for beginners and it is even a good choice for professionals (I guess some people did a little research this time around ^^).

Anyways, nice to see the common misconception that c# is slow is fading away and in maybe 10 or 20 years more than a handful of guys will use it (or maybe it takes longer than 20 years, heck, some people still code in c ... tip: don't look at the quake3 source ^^).

Moving to Managed DirectX for .NET 2.0

by Benjamin Nitschke 14. December 2005 07:26
The rocket commander website does support few new features now (hour, day, week lists and top 100 for all lists). Btw: Thanks to all beta testers who reported bugs.

Monday of this week the DirectX December 2005 SDK did came out (with updated Managed DirectX for .NET 2.0 stuff and even a technical preview of DirectX 10, but this does require Vista to run).

Today I tried to port my NormalMapCompressor tool to Managed DirectX for .NET 2.0 (December 2005 Edition). If you want to port your DirectX code to .NET 2.0, this post could be helpful :) If you ask why even bother porting, here is the answer: For easier debugging (using Visual Studio 2005 with .NET 1.1 DirectX causes a lot of annoying Loader Lock errors when trying to debug, etc.)! Also I like to refactor my code from time to time and make it more clean if I continue working on it, this is what happens if you port to Managed DirectX for .NET 2.0.
Please also see this post from ZMan about DirectX for .NET 2.0 changes (he already wrote about it for the October 2005 edition).

I will only mention things that happend in this little project (NormalMapCompressor), I'm sure porting Rocket Commander over will take a couple of more refactorings.

  • The DXHelp class doesn't exist anymore. For using DXHelp.GetTypeSize(typeof(YourVertexStruct)) you have to use the VertexInformation class now:
    VertexInformation.GetDeclarationVertexSize(YourVertexStruct.VertexDeclaration, 0); and obviously you have to define the VertexDeclaration in your vertex class now (but I had that done anyways).
  • TextureLoader doesn't exist anymore either, I've used it to get image information.
    For that you can now use Texture.GetImageInformationFromFile
    (was TextureLoader.ImageInformationFromFile(filename) before).
  • Many methods now expect the device as the first parameter instead of the last (more consistent method parameters now). Some examples: Mesh.FromFile, Mesh.Clone or the Mesh constructors.
  • LockVertexBuffer and many other Mesh methods are simplified now and use generics and the GraphicBuffer class now. For example the following code:
    TangentVertex[] verts =
    (TangentVertex[])someMesh.LockVertexBuffer(
    typeof(TangentVertex),
    LockFlags.None,
    new int[1] { someMesh.NumberVertices });

    gets converted to:
    TangentVertex[] verts = someMesh.LockVertexBuffer(LockFlags.None).
    ReadArray(someMesh.NumberVertices);

    If you want to write to the GraphicBuffer just use Write(.), thats also much easier.
  • PresentParameters.Windowed is now called PresentParameters.IsWindowed
  • For some strange reason the device has to be created with an IntPtr instead of a form or control, ZMan also pointed that out here. Just write form.Handle or control.Handle now.
  • Device GetDeviceCaps becomes GetDeviceCapabilities, also all other Caps became Capabilities.
  • Matrix methods got a lot longer names, say hello to Matrix.PerspectiveFieldOfViewLeftHanded and Matrix.LookAtLeftHanded (instead of Matrix.PerspectiveFovLH and Matrix.LookAtLH). There are a lot more.
  • Material does not have the .Ambient property anymore, just .AmbientColor now, which is the ColorValue. This pretty much sucks because I use Color's all over the place and have to convert them to ColorValue now, wtf? Same for Diffuse, Specular and even SpecularSharpness got renamed to Power (I still think SpecularSharpness is a way better name). I don't agree with ZMan who says "nice to see this confusing mess tidied up".
    Material mat = new Material();
    mat.Ambient = darkCol;
    mat.Diffuse = lightCol;
    mat.Specular = lightCol;
    mat.SpecularSharpness = 16.0f;

    becomes
    Material mat = new Material();
    mat.AmbientColor = ColorValue.FromColor(darkCol);
    mat.DiffuseColor = ColorValue.FromColor(lightCol);
    mat.SpecularColor = ColorValue.FromColor(lightCol);
    mat.Power = 16.0f;
  • Light.Type becomes Light.LightType, I also don't like that change (Light.Type says it all, doesn't it?), but who cares.
  • TextureLoader.FromFile(device, filename) and TextureLoader.FromCubeFile(device, filename) are now new Texture(device, filename) and new CubeTexture(device, filename), much cleaner. Why not remove Effect.FromFile and similar methods too?
  • Effect.FromFile does require an EffectPool now (I just created an empty one, I only use 1 effect in NormalMapCompressor). Also the paramerters have changed a bit.

And now the only thing I couldn't resolve yet. If anyone has ANY tips or tricks to do this, please tell me!
I could not find out how to do TextureLoader.Save or any texture save functionality at all. I need this to save the generated textures as dds files (compressed of course), saving bmp files is no problem (just locking the texture data and building a bitmap with it, then saving that bitmap). I already tried to contact specialists like Tom Miller or ZMan, but no answer yet ^^

When that problem is resolved I will release the new version of the NormalMapCompressor.

Rocket Commander Beta 2

by Benjamin Nitschke 12. December 2005 08:25
I've improved the Beta a bit, added a couple of levels and the online highscore. The cool thing is it took only half a day to implement the webservice for Rocket Commander, then implement that into the game and finally create the whole website and database for it. Last time (with .Net 1.1) this took a couple of days. There are really some great improvements made for webservices, creating aspx websites and using webservices.

Anyway, I hope the beta testers will enjoy the new version and try to compete about archiving the best highscore on www.RocketCommander.com. Let's see who got the biggest balls, erm, skill :D

Rocket Commander Beta-Test

by Benjamin Nitschke 8. December 2005 21:21
The internal Beta-Test for Rocket Commander started this week. I'm happy to hear everyone is enjoying the game. Even I'm surprised that the game is more fun than I thought 2 weeks ago. Sorry for not posting a new screen last week, you will get 2 nice screens this week instead :)

The website for the game and online highscores will be finished up this week too. A couple of minor bug fixes did drive me a bit mad today, like copying a 1 week old level file into the beta instead of the real updated one, omg ^^

Don't ask me when the game and sourcecode are available for the public, I just don't know yet. You may have to wait till January/Feburary until VS 2005 is released here in germany (since the game and sourcecode is included with the product, cool ehh?).

More on the Rocket Commander website in a couple of days when everyone is trying to archive the highest highscore.

German developer price: Deutscher Entwicklerpreis 2005 - Pics

by Benjamin Nitschke 1. December 2005 15:47
Yesterday was the second german developer price event (german: Deutscher Entwicklerpreis 2005).

Christoph (my intern) and me made some pictures. Enjoy! Btw: This pictures are uploaded faster than the ones on http://www.deutscher-entwicklerpreis.de/. That's slow dudes!



We arrived. Unpack everything and letz go! It was freaking cold outside.



This is the "Lichtburg" and the entrance to this big event (last year 205 visitors, this year over 650). The green carpet wasn't really for us, only the camera people were allowed to walk there. Wtf? But we heard that the nominees could walk on into the Lichtburg after driving around in a limosine. ^^



Another view from the inside. We did make it pretty early and had some time to walk around and make some interviews (e.g. with Gamers FM).



This was the cellar where some XBox 360 could be played. But as I said before this was very early in the evening and not much people were around yet.



The event started and we took a picture of the prices, looks like the same ones from last year. Maybe they had some left?



After the first few prices were thrown out to handy developers some drummer guys made really loud music. But we were already drunk and this way the music was fine :)
Btw: Thanks to Dirk who invited me and some programmer from blue byte (man, why did I forget his name?) up to the Microsoft XBox 360 loge. First the hostess wouldn't let us in because they thought Microsoft and XBox are 2 completly different companies and we laught our ass off as Dirk had to explain to them that everything is Microsoft.



Quick wrap to the end, this is the best german game 2005, never heard of it ...
Hmm, what else to say? I think last year the competition was a lot bigger.



This are all the winners from this year, there were 23 prices (last year over 30 I think). They look pretty happy and deserved the prices (ok, for the most part, since I still can't understand why EA gets the community price every year? Maybe you should ask some C&C fans about the "great" support.).
The green prices on the right are the XBox 360 community prices from Microsoft. Pretty funny, the first place was made by the guys how made one of the first mod chips for the XBox.



Some talking at the end, we stayed pretty long till 1 o'clock and talked with a lot of people. On this picture you can see our interns (Christoph and Enrico) talking with Dirk Primbs.



And this is how the 3 hours drive back home looked like when you drank enough.

Disclaimer: The opinions expressed in this blog are own personal opinions and do not represent the companies view.
© 2000-2011 exDream GmbH & MobileBits GmbH. All rights reserved. Legal/Impressum

Poll

Which platform should Soulcraft be released on next?











Show Results Poll Archive

Recent Games

Soulcraft

Fireburst

Jobs @ exDream

Calendar

<<  April 2014  >>
MoTuWeThFrSaSu
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011