Tex2D Rotating Header Image

Recovering a mythical post from anaitgames

There was a time when a mythical post on anait games arised.

When I’ve looked for it in the internets and i’ve found the layout isn’t kept anymore, so I’ve decided to put it here with a better layout for future references

Here you can find the original post:

Chiconuclear y Xavi Robles llegan de fiesta y se encuentran con esto en el post del Crackdown 2.
Creemos que se merece una entrada como mejor post de la historia de AnaitGames.
Geras ha hecho una lista con 47 elementos que deberían aparecer en Crackdown 2. Temures de viejo. Hoygan:

1 motos
2 aviones
3 taxis q te lleven a donde quieras
4 humers
5 traker
6 feraris
7 bbicis
8 patines
9 patinetas
10 barcos
11 q tu puedas crear tu propio personaje
12 q el mapa sea muy grande
13 q allan islas
14 q allan deciertos con sus animales
15 q allan animales por la calle coomo pérros o gatos 16 q allan niños
17 q puedas comprar tu casa 18 q allan peluquerias
19 q puedas comprarle ropa
20 q gane dinero por cada q mata a un malo o un enemigo
21 q puedes elejir entre ser un pacificador o un pandiloco
22 q allan elicopteros
23 q naden mejor
24 q allan animales en el mar como peces ballenas
25 q se pueda sumerjir en el agua
26 q llueva o q granice
27 q cambie de clima
28 q tengan los dias del año para q en diciembre neve y llegue santaclos jaja
30 q alla jaloweeen
31 q festejen los dias con desfiles o q allan desfiles asi por nomaqs
32 q allan carreras de caballos y q te los puedas robar y meterte en la carrera
33 q allan cuadrunees
34 q allan lanchas
35 motos acuaticas
36 jet pack
37 q puedas modificar tu auto
38 q allan camiones monster
39 q allan pitserias o amburgueserias
40 q se pueda jugar de 1 a 4 jugadores sin interconeccion
41 q te puedas sentar
42 q pueda aser ejercicio
43 q balla a un jimnacio
44 q allan clubs deportivos
45 q allan parques
46 q puedas entrar a las casas o a los edificios
47 q allan tuberias a las que puedas entrar

Status Update

As I said on my last post, I was pursuing animation, and guess what: I have it!

Even when I haven’t implemented frames interpolation yet the animations look funny. So let’s start with the usual postmortem of what went wrong.

First I started parsing the md5 anim files, and guess what I don’t like it either. It’s not hard to parse, it’s just nonsense. It starts with a hierarchy and a base frame, well, everything seems ok until here, right? But then you have the frames, defined as a series of floats that, with some kind of obscure craft applied over the base frame and with the information in the hierarchy gives you the skeleton for the given frame. Sure it works, sure it has few data and sure: WHAT THE HELL WERE YOU THINKING OF? I think, honestly, that it would have been simpler to have an skeleton for each frame, easy and simple. Why do people think that being clever is ALWAYS the right way? Sometimes a simpler approach makes life easier :)

Well, once I have it loaded I faced another decision: coupling an animation and a model with a custom file or being a real macho man and loading the doom 3 def files? Obviously I’m a macho and def files was the way to go :).

And what are the def files? Def files for models at least define the entity informatio, in particular you can find there for each model what mesh and animations it uses. I have to say that this is the first file format that likes me :). It’s simple and does what it has to do. For each model defines a mesh and a series of animations, and for each animation what events applies and in what frames. Wonderful! :)

So I made a little loader for it and here’s the result:

Amorphous blob from the pitt!

Amorphous blob from the pitt!

WTF!?! I had a correct skinning system! What was happening here? At least I have to say it was indeed animated :)

[youtube v22hFAkbT9w]

YEAH! I have videos, thanks to glc capturing application, fraps-like for GNU/Linux. Well, it looked really weird, didn’t it? So I checked the def file and I discovered that it contained 3 imps models, so click click click I just hacked the loader a bit to have them separated and what did I got? Well, this:

[youtube kFr1xnMZMGY]

Which… well, looked at least strange :) The first 2 imps remind me that Edvard Munch painting: The scream

I didn't know Id inspiration for imps came from expressionism!

I didn't know Id inspiration for imps came from expressionism!

Well, once they were separated I was wondering what failed, because the only model that was animated was the right-most one, but in fact it wasn’t properly animated but somewhat convulsing :S.

Well, it was due 3 little bugs

  1. Quaternions, my friends, are composed of 4 floats, and when I was reading frames I was just missing one component
  2. When I readed a frame and I send it to process, I only processed it when it had movable parts (that is, was different from the abse frame). But the base frame wasn’t processed so I had to process the base frame to get good results.
  3. The tutorial I was following said something like “I assume that parent index < current index so parents are always processed”. So did I, and when I was processing a frame I assumed that parents had been previously processed. Well that’s simply not true, so I had to do some adjustments to have a correct processing.

With all that fixing here and there I ended with this:

[youtube gC5hXRQ2rqs]

It was ok, just that it wasn’t moving due the first 2 models had an animation with 0 frames, nice isn’t? So i did a little more fixing-typing-hacking to cicle among all models’ actions to get this:

[youtube n0y3m10KYPc]

And finally I decided that watching a single model was nicer, so I loaded a single model and put a better camera:

[youtube Jda_taLd1qc]

So, at the end I got the model animated… but with no sound, and wouldn’t be nice if it had sound? Well, that’s the next thing to do! Stay tuned!