Reword Dawn of Chaos

This commit is contained in:
Fabien Freling 2019-06-23 22:38:36 +02:00
parent 0e05b97feb
commit 2db6350a6d
3 changed files with 28 additions and 28 deletions

View file

@ -1,16 +1,20 @@
--- ---
title: Dawn of Chaos title: Dawn of Chaos
date: 2004 date: 2004
dev: delphi, directx
--- ---
For the first of undergraduate study we have to develop a project in either During the first year of undergraduate study at Epita we have to develop a
Delphi or OCaml within a team of four during one year. This is the only year project in either Delphi or OCaml within a team of four to validate the year.
when we are allowed to make a video game. That the reason why we decided to Since this is the only year we are allowed to make a video-game, we chose to
create a Diablo-like in Delphi as our school project in 2004. create a Diablo-like in Delphi as our school project in 2004.
The development has been quite hard, because at the time we had no programming For most of the student, and for my team, this is the first programming project
skill. Moreover, our team rapidly exploded, with one member quitting the school we do ourselves. As such, we were lacking best practices and we learned along
after a few months and another one not willing to work. the way. The development was quite hard, because at the time we had no
programming skill. Moreover, our team quickly fell out, with one member quitting
the school after a few months and another one struggling with programming. It
ended up being a two-persons project.
Nevertheless, this was a truly rewarding experience since I learned the basics Nevertheless, this was a truly rewarding experience since I learned the basics
of video game creation and DirectX programming. of video game creation and DirectX programming.
@ -23,20 +27,22 @@ We had the choice between DirectX and OpenGL for developing our graphic engine.
Most of the students chose OpenGL but we thought DirectX was more suitable for a Most of the students chose OpenGL but we thought DirectX was more suitable for a
Windows game because we had no intention to port the project to Linux. Windows game because we had no intention to port the project to Linux.
We used the Jedi Project headers as a means to use DirectX with Delphi. The We used the [Jedi Project](http://www.delphi-jedi.org/) headers as a means to
first contact with DirextX was harsh but after carefully reading the SDK use DirectX with Delphi. The first contact with DirectX was harsh but after
documentation I was quick to learn the basics. I would like to thank Buckman for carefully reading the SDK documentation I was able to grasp the basics. I would
helping me figure the logic of DirectX out. like to thank my fellow student Buckman for helping me figure the logic of
DirectX out.
The 3D models should have been generated with Maya but our graphic member was The 3D models should have been generated with Maya but we were not able to
not able to produce anything. So we search graphism websites for simple models produce any good 3D assets by ourselves. So we searched graphism websites for
and we modified them with Maya. For the texturing part and the conversion of the simple models and we modified them with Maya. For the texturing part and the
Maya file format to the DirectX one, we used Deep Exploration. conversion of the Maya file format to the DirectX one, we used Deep Exploration
(by Right Hemisphere).
In order to make things dynamic, we just added a game loop with mutable In order to make things dynamic, we just added a game loop with mutable
variables (by pressing keys for moving the camera for instance). Unfortunately, variables (by pressing keys for moving the camera for instance). Unfortunately,
the game loop was not set on the time but on the cpu cycles. As a result, it the game loop was not set on the time but on the cpu cycles. As a result, it
runs as fast as your cpu can, making things lagged. runs as fast as your cpu can, making things lagging.
Finally, I added a 2D display for game informations such as health. It was done Finally, I added a 2D display for game informations such as health. It was done
using DirectSprites and DirectFonts. A bug with the proportions forced me to using DirectSprites and DirectFonts. A bug with the proportions forced me to
@ -54,9 +60,9 @@ not, make a boolean map on which I applied the pathfinding.
SOUND ENGINE SOUND ENGINE
------------ ------------
"Sound engine" is a big word for what was done. At first I thought I would use "Sound engine" might sound a bit fancy for what was done. At first I thought I
the DirectSound library since our graphic engine was done with Direct3D but I would use the DirectSound library since our graphic engine was done with
quickly changed my mind. Direct3D but I quickly changed my mind.
DirectSound allows you to use incredible 3D sound effects like reverberation but DirectSound allows you to use incredible 3D sound effects like reverberation but
it was a nightmare to use it. I spent an entire night just for trying to play a it was a nightmare to use it. I spent an entire night just for trying to play a
@ -81,10 +87,10 @@ hero is getting away (the hero is of course faster than any enemy).
WHAT WAS DONE BY OTHERS WHAT WAS DONE BY OTHERS
----------------------- -----------------------
My friend who actually worked created a truly rich map editor that was used for My friend created a truly rich map editor that was used for making the game. He
making the game. He also created the elements of the world. He was then able to also created the elements of the world. He was then able to define position and
define position and rounds for the enemies directly from his editor. Our graphc rounds for the enemies directly from his editor. Our game engine only had to
engine only had to get his data from the editor in order to generate the levels. get his data from the editor in order to generate the levels.
At last, he was in charge for the management of the hero: life, equipment, etc. At last, he was in charge for the management of the hero: life, equipment, etc.
@ -95,9 +101,3 @@ LAST WORDS
Our game was quite pretty but it was very slow due to the too detailled models Our game was quite pretty but it was very slow due to the too detailled models
used for the hero and the enemies. It lacks animation too. I really wanted to used for the hero and the enemies. It lacks animation too. I really wanted to
incorporate animation but I wasn't able to. incorporate animation but I wasn't able to.
TECHNOLOGIES
------------
[DirectX](https://en.wikipedia.org/wiki/DirectX): the official multimedia API from Microsoft

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 KiB