Friday, 3 September 2010

Let's not forget about Physics

Today we released a little video that show of the physics in Amnesia: The Dark Descent. You can find the clip right below and below that I will go through the various parts a bit more detailed.



As you can see, this is pretty much the same things that we used in Penumbra. But I also hope you noticed that it is more streamlined and intuitive. Allow me to explain.

Grabbing stuff
The grab mode is what is used when interacting with objects like books, chairs and pots. In the first versions of the game, we actually had something more like in Crysis, where the object travels to a certain position when interacted with. This did not feel right though, so we want back to more like in Penumbra. We then added a lot polish to this and especially the rotating mode (when holding down a button, moving mouse rotates object). Even though the object is still moved 100% by a physics simulation, it is very smooth and you can be very exact when placing. In Penumbra there was lots of lag, but that is all gone now!

Opening doors
I think I spent a week or so tweaking how the door opening physics works. In Penumbra, you had to make sure to interact with the door at the right place to open it properly, which made it hard to close / open doors in stressful situations. Not so in Amnesia. Here you can click anywhere on the door and it will easy to control it. The way this is done is by estimating how to convert 2D mouse input into 3D forces. As you will never be able to get perfect correlation between mouse and object (you will always loose a dimension), this took some time to get right. The end results feel very nice though and the things learnt for other interaction types such as levers.

A further improvement is that doors will now stay closed / opened. In Penumbra they sometimes bounced back at you, but in Amnesia that is all fixed saving the player from many virtual/real headaches.

Desktop simulator 2000
Opening drawers is a common interaction and another area where improvements have been made. Drawers will now react faster to player movements and it is possible to have more control (in Penumbra drawers could continue sliding after you stopped moving). And just like doors, the drawers will get stay open / closed, without any annoying bouncing.

Spin round, round...
The one interaction that we got most negative feedback on in Penumbra was the wheels (valves, etc). There was the problem of where to interact as interacting at center zero leverage and made it impossible to turn. Also the actual turning movement could be hard to get right. For Amnesia, we have remade the whole system. Now it is possible to interact wherever you like and the movement required is far more intuitive. There is a special system that analyzes your mouse movements and can quickly and correctly determine which way you want to rotate. It can even approximate the speed and there is as good as no lag involved.

Closing notes
We are very proud of the physics interact we use in our games, and it is something we have worked with for almost 5 years now. It is also a very unique method, and as far as we know we are alone at using it. We will not stop at where we are now though, and hope to take physical interaction even further in the future.

Also, I'd like to mention the fantastic Newton Game Dynamics, the physics engine that makes all of this possible in the first place!

8 comments:

  1. I downloaded the demo and the german translation sucks.
    "Drücken Sie neben installieren Amnesia - The Dark Descent Demo."
    should be something like
    "Drücken Sie Weiter um Amnesia - The Dark Descent Demo zu installieren."
    or
    "Drücken sie Weiter zum fortsetzen der Installation Amnesia - The Dark Descent Demo"

    "Wenn Sie Ubuntu 10,04 müssen Sie möglicherweise zum
    Ausführen des Installer mit sudo, um in ein System
    Verzeichnis zu installieren."
    should be
    "Wenn Sie Ubuntu 10.04 benutzen müssen Sie möglicherweise sudo zum
    Ausführen des Installers benutzen, um die Dateien in ein Systemverzeichnis installieren zu können."

    For
    "Dies installiert Amnesia - The Dark Descent Demo.
    Weiter?"
    I would recommend something like
    "Wollen sie die Installtion von Amnesia - The Dark Descent Demo fortsetzen?"
    or
    "Wollen sie mit der Installtion von Amnesia - The Dark Descent Demo fortfahren?"
    "Sie haben die Installation Amnesia - The Dark Descent Demo."
    misses one "abgeschlossen"
    "Sie haben die Installation Amnesia - The Dark Descent Demo abgeschlossen."

    "Menüpunkte sind in Ihren Anwendungen-Menü unter Spiele geschaffen."
    is
    "Menüpunkte sind in Ihren Anwendungen-Menü unter Spiele erstellt worden."
    and

    'So entfernen Sie das Spiel, laufen die "uninstall.sh" Skript in das Spiel zu installieren Ordner.'

    'Sie können das Spiel entfernen indem sie die "uninstall.sh" im Installationsordner ausführen.'

    And you mention specially for all ubuntu users to use root to install in a system dir but you forget to remind them to use it to uninstall it? :P
    Anyway....
    If I can help with the translation of anything else just ask ;) I can't stand crappy translations and like to help

    ReplyDelete
  2. I didn't notice the bad quality of the translations in the installer at all. Looks like it was automatically translated. But I can say that the german translation of the game itself is quite good.

    ReplyDelete
  3. BlackLotus,

    I do apologize for the translation of the installer. It was, unfortunately mostly a quick "google translate" job. And my german is nowhere near as good as other languages.. So, if you would like to aid in cleaning up that translation I would be more than happy to provide you the RAW strings files. (actually you can get them from the installer itself by running ./amnesia_tdd_demo_1.0.sh --target Temp --keep --noexec )
    there will be in the config/lang/german folder.

    Just post the updated one to the frictionalgames.com/forum/

    ReplyDelete
  4. Good to see the doors staying shut being fixed, in the demo I kept pausing for a second when I closed them waiting for them to bounce back like they would in Penumbra. But after a while I got used to it, the clunking sound like a latch helped reinforce that the door was in fact closed :)

    The only thing I think you guys should have kept was the door pushing/pulling from closer to the hinges making it trickyer, I though that was really cool, it gave the doors and other objects like that some real weight and made you think about where you had to grab it to open it fastest (like in real life) It also made it scarier cause you actually had to opened the door the right way if you were being chased by a monster etc, and if grabbed it in the wrong place the door would open much slower.

    But yeh the physics in these games is one of the points which make them so enjoyable and dynamic.

    ReplyDelete
  5. There's a problem in the demo - it's possible to get stuck beyond the pile of stones right at the demo start.

    ReplyDelete
  6. Well I didnt ever had a problems with the valves and stuff in Penumbra, they worked realistic way, if you tryied to open it from a middle of the valve it was slower and if top of it it was easier. And the doors was difficult to close quick when enemies were after you, but it sure added more scariness to it.
    Dont know witch one is better, the Amnesias or Penumbras... Lets just see when the game is out.

    Jonez

    ReplyDelete
  7. Only 19 minutes left...

    ReplyDelete
  8. I've just played the full version of the game for 3 hrs straight and the physics work great. I had problems occasionally in Penumbra but in Amnesia they really are spot on.

    Good job!

    PS: The rest of the game is awesome too!

    ReplyDelete

Note: only a member of this blog may post a comment.