Game Design - Wipeout Clone
Miscellaneous Forums/General Discussion/Game Design - Wipeout Clone
As we don't have a design section here I guess this will be best suited here.
As my next project I want to try to create a small Racinggame a la Wipeout and am wondering what would be the best way to handle the design.
My biggest concern is the actual handling of the vehicle contra the track. What would be the best way to keep the vehicle smoothly floating above the track even if the track could have some small details on the sides (wall ornaments etc). Should I use a transparent track which handles all the collisions with the vehicle?
Another question is how to optimize the track. Render the whole track just doesnt seem to be a good idea... right?
I've got a couple of tips for you.
Firstly, I'd have one low res transparent version of the track to handle collisions. Split this into smaller parts so that collision meshes can be "hidden" if required to prevent any checks at all on that part of the track- In our racer this sped up collision checking somewhat but using a decent engine this may not be required
if you are using B3D then one thing i'd certainly say as a *minimum* to do is optimise the surface count to find a nice performance balance.
On one hand you might not want to render the whole track in one go, where you have the entire track in 1-2 surfaces, but high polycount- this will max out low end systems.
On the other hand you don't want to split your track into 500 surfaces either as this hits lower end systems systems with blitz too.
With our racer we split the track up into several parts, say 9. The blitz renderer can then cut out each part of the track that doesn't need to be rendered automatically and will save you time on calculations and rendering.
It's worth a shot :)
I would like to see a game design forum, to discuss and develop ideas.
Are there any other forums out there dedicated to game design / ideas?
Sonicfactory: Gamedev has big sections for this but I found them not really useful.
Cygnus: B3D will probably be my choice of engine atm. So by setting the drawdistance fairly low and split the track up into several... entities(?) I could achieve better, right?
So if the track aint there, how do you calculate the cpu-vehicles position? Guess collision detection still apply on not visible entities (not in sight) but do they apply on hidden.
If you are "hiding" collision meshes, collisions can't happen on those parts. I "UNhide" collision meshes when a vehicle gets near it and "hide" it again when the vehicle leaves it. You have to ensure your logic doesn't eat up the advantages of this though.
if your collision mesh is of low enough poly you won't need to worry about it though!
Just alpha the collisioned entity. alpha of 0 will make it invisible (hidden), yet still count in collision checking.
Is Archon2160 finished, or is this a sideline project?
Archon 2160 is not finished as I'm actually looking for someone to join me with it. I've come to the point where netcode is necessary and as I want to focus on the art on that title I am waiting to find someone that could join up with me on that title. Meanwhile I've finished 'Ultimate Snowdown' for the Devcrunch Compo and am trying out this project with my brother just to introduce him into Blitz3D.
Also, if someone would be interested in working on a "Wipeout-clone" on B3D (programmingside) I would gladly focus on the art and I'd be pretty sure we could be a good team.
Have you looked at BlitzPlay? I used the Pro version for the networking in my Archon remake. I think it's pretty much a dead project now (the author vanished iirc), but that doesn't mean it's not a capable piece of software.
Good luck with you projects. I'm personally interested in seeing them both come to fruition.
Thanks Bobby.
Yes, I will look into Blitzplay as everything that could help me out with netcode is welcome. I've figured out that there will be probably one unique interpolationcode for each unit which makes it pretty heavy to code.
Also, Blitz3D is totally new to me and I would appreciate another coder instead of me.