sketch_intro.png

Titor's Equilibrium

It’s a dream, isn’t it?

The matter is clustered in a nebular structure, a rarefied cloud which deflects the light coming from the outer space. A tiny layer of yellow fog lies upon your eyes. You are a ghost, a spiritual work, energy in a condensed form.

Three concentric halos of the size of a small moon take up the space around you. They keep still, waiting. In comparison you are nothing more than a grain of sand, but somehow you feel as if they were expecting you. Suddenly, a green planar structure, a glowing regular lattice, pops up. It’s relatively small, but you know that the three halos generated it. You admire it’s perfection; that pulsing grid is alive and breathing. A compound of planar section grows around you; an hole spectrum of geometrical elements hack the space in a dynamic composition, building a fascinating framework.

Inside it, the "hosts" appear. They are simple geometrical objects, of the size of a man, and seams pretty solid and heavy. Their surface is smooth, and clean, as if it were made of some sort of metallic stoneware . Rectangular engravings form some sort of picture on it. The veins of the leaves filled with black lymph; those bodies are alive too. They rest, like the ibernated element of a timeless photograph.

Then the sound comes. A low frequency, so deep that it seems to come from the matter itself. The halos are moving! Rotating, around you, around the framework. And everything wakes up...

Deliverables

This section covers the deliverables for the game class.

Part 1: Project Proposal

Project Critics

Part 2: Design Specification

Part 3: Interim Report

In this session we discuss how the game development has gone on, so far.

We consider the three fields Physics, Graphics and Gameplay separately.

Physics

The first milestone we have reached, was to convert the C++ code to C#. The process was somehow heavy, in the sense that most of the workaround feasible in C++ didn’t find a one to one mapping toward C#, so things had to be tweaked.

At that point we simply tried to run a scene similar to the ChuckBox one, and we immediately saw that the performances were drastically lower, even worse than what we had expected at the beginning. Talking with the other groups, and googling around, we decided to bring everything from classes to structures, to gain advantage of the stack and use the heap the least possible. Actually this step improved the performances almost twice, bringing the physical engine to a “feasible” state.

physics test video

The physics is basically composed by two C# Library. One handles Matrices and Vectors, the other handles the physical engine itself, from the Rigid Bodies to the LCP solver. The current structure is quite final, and no drastic changes are in plan.

An other thing we managed to implement are the joints, which work quite well.

joint screenshot

Graphics

Several things were achieved in this field.

First of all we tested some animated texture, which we are going to use for the veins of the objects. The current implementation might be changed if we have additional time in the future. It’s not too bad the way it is, but there is space for improvement. After that it was a matter of building a complete emissive + diffusive + specular + normal shader. The current implementation makes use of object space normal maps, which make it faster than the tangent space, with the slight disadvantage that the normal maps are more complex to be built.

boxes/spheres shader video

One field we also went far in are the particles. We planned to use particles for the ghosts, and since we wanted to have them like in the concept art at the top of the page, we had to find the right effects combination. At the current point the ghost are created by a double pass, one additive for the aura, and one subtractive for the black body. The particle related classes were rewritten a couple of time, and are now in a semi final structure. It’s a bit dirty, but hey, it’s a game, not a software engineering sculpture.

basic particle video

The last milestone we mention is the post processing tests. In order to display all the gravity related powers of the game we wanted to make use of post processing distortion of the space. The scene is at the moment rendered into an image which is then distorted. We are now improving it so that the depth information contained in the Z-Buffer is used and only the right part of the scene is distorted. We expect it to work fine, and we are excited about it.

gravity point video

gravity line video

Gameplay

As soon as the physics was in place, we started doing test about the powers. This was a way actually to test both the correctness of the physics (we spotted some bugs thanks to this phase) and the fun component related to gravity fields in a deeper way than what we did in the past with ChuckBox.

After the first point we discussed several things. One big topic was the camera system; we are still wondering about it and we need to do some testing to really understand what is good for the game. An other big milestone was to define the Gameplay structure in detail. We did implement a first structure for the gameplay, and the matter was simply to get the game mode running.

But, actually, the hole structure of the game was, at that point, a God class featuring spaghetti code and a blind oarsman, who was beating with his paddle anyone who wanted to change something. Said in an other way, we started rewriting almost everything, but this time with a clear idea in mind about what we wanted.

At the moment we are fighting against the god of the programming, to achieve a playable demo before the deadline.

Layered Development Status

Physics: We are in the desirable target, and we have dropped the space coherence goal. We are in time as planned, and we are now concentrating on else.

Graphics: We are between desired and high target. The plan has been reached and surpassed.

Gameplay: Although most of the goals from the minimal to the desired target have been tested separately, we lack a “all together” solution. We are late with respect to the plan, but we expect to close the gap.

Sound: We discussed it, but there is nothing working at the moment. Once the gameplay is more solid, this aspect will be taken in account seriously.

Part 4: Alpha Release

To follow.

Part 5: Playtesting and Final Paper

Project Status

Done.

Attachments

  • Arena with some special volumes:
    special_volumes.png

  • particle test for ghosts:
    ghost_test.png

  • Cube sketch
    cube.png

  • Test Area for physics experiments 8]
    test_scene.png

  • cubes_sphere.png:
    cubes_sphere.png

  • ghost4.avi: ghost with additive and subtractive particles

  • (post processing) image blur:
    9x_blur_post_processing.PNG

  • torus_arena.png:
    torus_arena.png

  • aura.PNG:
    aura.PNG

  • news.png:
    news.png

  • skybox4.png

Trying to get the space less claustrophobic...
I Attachment History Action SizeSorted ascending Date Who Comment
Texttxt Marino_Alge_-_projects_critique.txt r1 manage 3.5 K 2007-04-06 - 13:32 UnknownUser  
Microsoft Word filedoc Games_Critique_Alessandro_Rigazzi.doc r1 manage 3.9 K 2007-04-06 - 11:08 UnknownUser  
PNGpng ghost_particle2.png r1 manage 7.1 K 2007-04-20 - 12:57 UnknownUser  
Quicktime movieavi energy_bar.avi r1 manage 30.0 K 2007-04-19 - 10:55 UnknownUser sketch for the energy bar
PDFpdf gioacchino_noris_projects_comments.pdf r1 manage 50.5 K 2007-04-04 - 11:49 UnknownUser project comments
PDFpdf sketch.pdf r1 manage 82.5 K 2007-03-25 - 21:08 UnknownUser Assignement 1
PNGpng Concept2.PNG r1 manage 110.2 K 2007-04-01 - 12:50 UnknownUser a possible gameplay concept by Riga
PNGpng ghost_test.png r1 manage 141.7 K 2007-04-19 - 00:13 UnknownUser particle test for ghosts
PNGpng cube.png r2 r1 manage 157.9 K 2007-04-21 - 01:41 UnknownUser cube sketch
PNGpng joints.PNG r1 manage 162.7 K 2007-05-13 - 21:37 UnknownUser  
PNGpng test_scene.png r1 manage 167.1 K 2007-04-22 - 13:36 UnknownUser test area we will use to check the physics
PNGpng torus_arena.png r1 manage 225.4 K 2007-05-17 - 15:39 UnknownUser  
PNGpng aura.PNG r1 manage 444.4 K 2007-06-03 - 18:24 UnknownUser  
PNGpng news.png r1 manage 477.3 K 2007-06-05 - 04:11 UnknownUser  
PNGpng cubes_sphere.png r1 manage 496.4 K 2007-04-30 - 17:28 UnknownUser  
PNGpng 9x_blur_post_processing.PNG r1 manage 544.1 K 2007-05-10 - 13:46 UnknownUser (post processing) image blur
PNGpng special_volumes.png r1 manage 564.3 K 2007-04-08 - 11:46 UnknownUser Arena with some special volumes
PNGpng sketch_intro.png r4 r3 r2 r1 manage 566.8 K 2007-04-13 - 18:29 UnknownUser  
Quicktime movieavi animated_texture.avi r2 r1 manage 1110.0 K 2007-04-21 - 21:47 UnknownUser test on animation texture
PowerPointppt Equilibrium_First_Presentation.ppt r1 manage 1417.0 K 2007-04-03 - 23:47 UnknownUser  
PDFpdf second_assignement.pdf r1 manage 1549.1 K 2007-04-15 - 18:57 UnknownUser Gameplay Specification, Layers and feedback
Quicktime movieavi complete_shader.avi r1 manage 1768.0 K 2007-04-22 - 03:32 UnknownUser ambient + diffuse + specular (bump)
PDFpdf Formal_Proposal_beta.pdf r1 manage 1883.6 K 2007-03-30 - 18:45 UnknownUser beta of the formal proposal
Quicktime movieavi shaders.avi r1 manage 2348.0 K 2007-04-30 - 17:31 UnknownUser close up to cubes and spheres
Quicktime movieavi particle_one.avi r1 manage 2388.0 K 2007-04-16 - 17:49 UnknownUser Particle test movie (xvid)
Quicktime movieavi space_distortion.avi r1 manage 2660.0 K 2007-05-10 - 03:08 UnknownUser post processing test
Quicktime movieavi cubes.avi r1 manage 2680.0 K 2007-04-21 - 04:29 UnknownUser first cube shader
PDFpdf Formal_Proposal.pdf r1 manage 2685.1 K 2007-04-01 - 20:53 UnknownUser Formal Proposal of the game
Quicktime movieavi particle_four.avi r1 manage 3424.0 K 2007-04-19 - 02:30 UnknownUser particle test (+split screen, +sorting)
Quicktime movieavi ghost3.avi r1 manage 3688.0 K 2007-05-06 - 20:37 UnknownUser added medusa motion
Quicktime movieavi particle_five.avi r1 manage 3918.0 K 2007-04-20 - 23:57 UnknownUser implemented a proto movement...
Quicktime movieavi particle_three.avi r1 manage 4286.0 K 2007-04-18 - 03:40 UnknownUser  
Quicktime movieavi particle_two.avi r1 manage 4898.0 K 2007-04-16 - 19:24 UnknownUser improved particle test
Quicktime movieavi torus2.avi r1 manage 5396.9 K 2007-05-17 - 21:32 UnknownUser New Level
Quicktime movieavi ghost2.avi r1 manage 5628.0 K 2007-05-06 - 12:24 UnknownUser  
Quicktime movieavi ghost.avi r1 manage 6244.0 K 2007-05-05 - 23:32 UnknownUser  
Quicktime movieavi physics.avi r1 manage 6254.0 K 2007-04-24 - 03:29 UnknownUser first version of the physics engine
Quicktime movieavi gravity_hole.avi r1 manage 6970.0 K 2007-05-11 - 18:57 UnknownUser first attempt to get some graphic feedback of the powers
Quicktime movieavi post_processing.avi r1 manage 7156.0 K 2007-05-10 - 02:23 UnknownUser  
PDFpdf final_report.pdf r1 manage 7567.7 K 2007-06-29 - 13:12 UnknownUser Final Report of the game
PDFpdf final_report_corrected.pdf r1 manage 7567.7 K 2007-06-29 - 22:12 UnknownUser corrected orthography and typos
Quicktime movieavi ghost4.avi r1 manage 7658.0 K 2007-05-10 - 11:26 UnknownUser  

Page URL: https://twiki.graphics.ethz.ch/bin/view/GameClass/Group5MainPage
2025-08-04
© 2025 Eidgenössische Technische Hochschule Zürich