Intelligent Artifice

A blog on interactive entertainment: design, production, industry and related topics.

 

Joerg Plewe and Flying Guns September 26, 2007

Filed under: Indie, Other Web Sites, Personal, Programming — Jurie @ 7:08

Joerg Plewe currently is a senior Java and GUI developer and has been in many areas of IT ranging from embedded programming to bioinformatics and games. Joerg has studied physics and used to work with languages like C/C++, Forth, Lisp, Assembly and others in all kinds of environments.

That may be so, but I know Joerg Plewe as the programmer I used to work with over 10 years ago at Blue Byte Software. He is a very serious programmer, and almost talked me into developing an interest in FORTH. The world might have been very different if he had succeeded.

He has a blog over at java.net where he mainly talks about Java (duh), but also about physics/dynamics stacks and cloud rendering.

He is also one of the key people behind Flying Guns, an open source distributed 3D simulation framework (aka 3D action flight sim). It is based on a framework for distributed simulations, all written in Java. Pretty impressive!

 
 

Seam Carving for Content-Aware Image Resizing September 5, 2007

Filed under: Graphics, Programming — Jurie @ 1:10

Here is a SIGGRAPH 2007 presentation by Shai Avidan and Ariel Shamir on a novel way of resizing images. Arbitrarily resize an image while keeping important parts whole. It’s quite impressive, until the baby is squished. Can also be used to eliminate people from your pictures, Stalin-style. Coming soon to your Photoshop.

 
 

Checkers has been ’solved’ July 20, 2007

Filed under: Game Design, Programming — Jurie @ 9:34

New Scientist reports that Checkers has been solved and joins the ranks of Tic Tac Toe and, apparently, Connect 4. Computer games expert (in a different sense than usual within the context of this blog) and spoilsport Jonathan Schaeffer worked on the problem for 18 years!

(Via BoingBoing.)

 
 

Electronic Arts’ STL Implementation July 12, 2007

Filed under: Programming — Jurie @ 9:48

If you’re into hard-core C++ programming for games, you might be interested in reading about Electronic Arts’ STL Implementation. They wrote their own implementation of one of the most intricate C++ libaries known to man.

Back when I was into hard-core C++, STL was not well supported by Microsoft’s C++ compiler (Visual C++ 4.2, at the time), so I rolled some container and string libaries of my own while dreaming of one day being able to use the much more advanced STL. That day never came somehow as I moved away from C++ and programming.

My gut reaction to anyone announcing they are going to rewrite the STL would be to create as much distance as possible between me and the unfortunate fool (preferrably by ejecting said fool from the building). But this paper by EA makes a good case for why they felt it was necessary (and what makes game programming, specifically on consoles, different from other kinds of programming). The programmers at EA seem to know what they’re doing.

Nevertheless, I am glad that these days I can use programming languages that come with all of this stuff built in. Programming C++ is like making bricks from clay and melting steel for beams when you want to build a house. Sometimes having this extreme amount of control over your building materials is great and allows you to do things you couldn’t otherwise do. But more often this is how it’s done because that’s how it’s done.

(Via Tobi.)

 
 

AIIDE 2007 proceedings June 6, 2007

Filed under: Game Design, Programming — Jurie @ 9:40

As someone with a background in technology and game design, AI programming excites me like few other subjects, and it is a continuous source of surprise and frustration to me that I have done so little of it. Somehow, by the time gaming hardware was capable of serious AI I was already on my way to becoming a producer.

Nevertheless I get an itchy feeling in my fingers when I read about the proceedings of the Artificial Intelligence and Interactive Digital Entertainment Conference, which starts today in Stanford, California, in this blog post on AiGameDev.

Interactive storytelling using player modelling? Player-specific stories via automatically generated events? Dynamic generation of dilemma-based interactive narratives? Maybe I should try those polyphasic sleep techniques so I can get more done each day.

(Thanks, Alex!)

 
 

LOLCODE May 30, 2007

Filed under: Fun, Programming — Jurie @ 0:31

LOLCODE. Yes. Programming in kitten pidgin, like so:

HAI
CAN HAS STDIO?
I HAS A VAR
IM IN YR LOOP
       UP VAR!!1
       VISIBLE VAR
       IZ VAR BIGGER THAN 10? KTHXBYE
IM OUTTA YR LOOP
KTHXBYE

Call me easily amused, but I love it. I HAS A VAR, lol.

A compiler can’t be far behind. Bonus points if it works with Microsoft’s CLR or DLR.

(Via Boing Boing.)

 
 

Making sense March 26, 2003

Filed under: Game Design, Programming — Jurie @ 1:35

Gamasutra has an article up written by Tom Leonard, accompanying his talk at this year’s GDC. It’s called “Building an AI Sensory System: Examining The Design of Thief: The Dark Project”. I recommend it, it’s good. It goes into some of the software / game design aspects of AI sensory systems.

 
 

Article on independent game development February 23, 2003

Filed under: Development, Indie, Programming — Jurie @ 11:38

O’Reilly’s ONLamp.com has an article on independent game development. It discusses Garage Games, the Torque engine, the Independent Game Developers Conference, open source middleware, the independent game business strategy, and scripting languages.

 
 

Battle of Helm’s Deep: game technology December 19, 2002

Filed under: Game Design, Other Media, Programming — Jurie @ 23:41

I have recently been reading about Massive, the technology used to create the climactic Battle of Helm’s Deep segment in Lord of the Rings: The Two Towers, and I was struck by the similarity with game technology.

Massive, which stands for Multiple Agent Simulation System In Virtual Environment, was developed by Stephen Regelous for the Lord of the Rings movie trilogy. It is now available (more or less) as an independent product.

Rather than simulating crowds as simple particles - the state of the art until now - Massive uses a relatively sophisticated AI model to determine the actions of each individual crowd member, and then selects and blends motion-captured animations to display these actions. It also simulates both melee and ranged combat and movement on non-boring terrain, among other things.

The parallels with game technology are obvious: games have done, or tried to do, similar things for many years. However, that does not mean Massive is inferior to game technology. My impression is that it is superior to the AI in many games, although of course it does not have to perform in real-time, nor does it have to deal with irritations such as interactivity, fun, and 18 month development cycles.

One implication of this technology may be more interaction between animation software developers and entertainment software developers, in terms of people, know-how and actual technology. However, I don’t think there is a general consensus on how to effectively use this kind of technology in games, although Take Two’s State of Emergency and Electronic Arts’ Lord of the Rings: The Two Towers give some indication of what can be done.

And yes, there are now three entertainment-related software development companies called Massive-something-or-other.

Links:
An article in Popular Science.
An article in c’t (in German).
An article on Wired News.
The official homepage of Massive Software, containing links to other material.

 
 
 
Close
E-mail It