Sign in to follow this  
IronFox

Zenon (draft name)

Recommended Posts

IronFox    148
Hi everyone,

I think it's about time to make my current project a tiny bit more known ;)
It's a car racing game I named 'zenon', although the name is about as much a prototype as the rest of the 'game'.
So far what is done are the physics (using PhysX), the prototype of a track (and editor), a car, sound, and visual-only sky&ocean. Also multiplayer.
Here's a screenshot of what it looks like atm:
[img]http://www.delta-works.org/gallery/Screenshots/zenon.jpg[/img]

As you can see, there are no real reflections at this point, and no shadows (I keep pushing these two topics away as much as possible ;P ).
Win32 binaries can be downloaded here, in case you are interested in giving it a try:
[url="http://www.delta-works.org/download/?&details=zenon"]Zenon Download[/url]

When using the editor (Crystal Edit) please refer to the 'readme.txt' file that is included in the archive to get an idea of how to use its (however sparse) functionality. To allow the editor to directly start zenon with an edited map please put the extracted folders from both archives into the same parent directory. Specifically, '..\zenon\zenon.exe' should correctly point to the zenon-executable, as seen from the editor executable. Otherwise you will have to edit the file 'config.cfg' of the editor to adjust it to the correct zenon-directory (it's a txt file, technically).
As for the game (zenon.7z), I recommend executing the bat file to automatically start in server mode and spawn a car. This is the closest you'll get to offline more - there is no real offline mode at this point, but the game has no feature to automatically connect anywhere, unless specifically instructed otherwise. It will, however, accept connect-requests while in server-mode, unless blocked by firewalls.
To connect to another instance of the game enter a valid user name (anything longer than 3 characters that you can type in will be accepted), and remote address (ip or url, where it says 'localhost' by default) and hit the connect button. If there is a server instance of the game on the other end, it should connect correctly. In its current pre-beta-state, you need to manually make sure that both instances have the same track data. Otherwise, you will see funny things like cars driving through the air and stuff. The track data is located in the 'composition' folder of zenon.
Both the editor and the game us OpenGL for rendering.
Controls are relatively straight forward: Arrow keys to navigate. 'c' is a hotkey to quickly change camera modes. Mouse buttons and keyboard are required to control the GUI.
The physics are using the NVidia PhysX library, and [b]I can absolutely not guarantee that this thing runs on non-NVidia-hardware[/b].
You will probably eventually notice that the walls on the sides of the tracks are about twice as high as they look. It becomes quite evident when you start seeing skid marks in midair. I am considering removing those, since they are a remnant from a time when it was considerably more easy to lose control and just hop off the track. Should you manage to fall off, you will notice that the water has no consistency, and the car will just fall into infinity. I would recommend resetting the car when that happens ;P

On the off-chance that you are interested in how a certain functionality is implemented I will answer questions here as my time permits it. I also have absolutely no trouble disclosing details of the source code, but will not put the entire sourcecode up for download, simply because it's too much to find the relevant details (it heavily depends on my own super-library, and that thing is pretty damn big by now).
Anyway, I will keep updating the archives until I get bored and start something else (which isn't going to happen until it's a something you can actually call a game ;) )

Regards, and have fun ;)

Share this post


Link to post
Share on other sites
Nikke    387
I'm afraid I couldn't launch :(

First I got an OpenAL error, and then this:

Fatal exception in line 1479 of renderer\opengl.cpp::Engine::OpenGL::bindMaterial()
"shader.isEmpty() || instance!=NULL (with shader.report()='
-- program construction --
Fragment shader(s) linked, vertex shader(s) linked.


-- program validation --
Validation failed! - Different sampler types for same sample texture unit in fragment shader

validation failed
') evaluates to false"

Share this post


Link to post
Share on other sites
IronFox    148
Hi Nikke,

Sorry about all of that :(
The OpenAL problem can probably be removed by updating your audio drivers (had a friend of mine complain about that until he updated his drivers).
If new drivers don't fix the issue then I'm afraid you'll have to use the application without sound, since I have no real options there. It's a single function in the dll, and either it works or it doesn't.
The OpenGL problem, however, sounds like a peculiar difference between how NVidia likes to validate shaders, and how ATI does. I uploaded new versions that hopefully address this issue. However, since I have never run the application on ATI hardware, you're bound to run into more trouble.
I'll keep fixing until I run out of ideas :D

Regards

Share this post


Link to post
Share on other sites
Sign in to follow this