Creeper world 3D

Started by rex4, July 18, 2011, 06:03:37 AM

Previous topic - Next topic

TonyP2000

I always thought if the first Creeper World was remade with 2.5 D graphics. The game would still be in a top down view but the terrain would have more depth, while the in game objects would be three dimensional models instead of sprites.

The creeper would be more "rounded" instead of squared cells. You would be able to see it flow over and bury your structures and weapons and watch them crumble.

As for a 3D creeper world, the idea of seeing an unstoppable wall of creeper blot out the sunlight as it devours your structures would be cool, but we do not have the technology to run something like that.
Vote Tony!

Ebon Heart

Quote from: TonyP2000 on July 19, 2011, 05:07:55 PM
I always thought if the first Creeper World was remade with 2.5 D graphics. The game would still be in a top down view but the terrain would have more depth, while the in game objects would be three dimensional models instead of sprites.

The creeper would be more "rounded" instead of squared cells. You would be able to see it flow over and bury your structures and weapons and watch them crumble.

As for a 3D creeper world, the idea of seeing an unstoppable wall of creeper blot out the sunlight as it devours your structures would be cool, but we do not have the technology to run something like that.
Yet... So for now, we have to use our imaginations.
When the going gets tough, the tough get going. The smart left a long time ago.
Check out the amazing A Tragedy Forgotten CW2 map series!

thepenguin

We have become the creeper...

Grun

I read a few people who suggest CW3D and i see people for and against. The main reason that comes up is
if you make it 3D you lose one aspect that makes CW so great, the ease of it to play.

As for it not being posible/comps would die etc. That is not the concern, comps can quite easily handel it
its just finding a programmer who got the time as it is quite complex to program such to work efficently.

The calculations for the creeper flow would actualy be very very similar to how it is currently in CW, making
it 3D dont change that. The render of the creeper is where it is dependent on how much it would take/complexity.

Ok, now the techy computer jargen bit to explain.......

The creeper would simply be a 2 demensional array of a struct holding the height/volume within each area of terrain.
Like CW you could split each terrain further down which on a terrain 60-60 which i belive is similar sized grid
for CW you could split that by 5 and would only be looking at 90,000 crepper structs to deal with.

Ok that sounds like a lot, but if you say a model for a building is 1k+ polys, that only like 90 units on screen/across
the map in an RTS, and with animations etc the calculations are quite a lot more. Also the creeper would not need to
spread each frame, so sepearating update of each area could be split across frames which would be the case anyway
to slow the creeper down.

As for the drawing of the creeper, the bulk/central areas would be easy enough done altering the alpha lvl of the
texture in comparison to its depth. The edges is where it a little trickyer. You could use simple squred cells in same
way CW manages it, or could calculate averages along edge to give a more round feel. Other alternative which is
way i would do it is if the particle is on the outside of the creeper place a simple particle effect moving outwards. This
would hide the edges in a nice effect which if done right would make it look like it was pushing forward violently.

......... ok people who made it this far well done :P I try to keep it as simple as I can.

Hope this clears up some misconseptions.

Grun

Grun

Guess my tech speek scared everyone off :P

Well I probably put a little too much thought into it that I should, but curiosity and the challenge beat me so.......

http://www.youtube.com/watch?v=Ns8g9r69hkw&feature=youtube_gdata

It not great but a start and shows what is posible. It based on an old framework I made in openGL and simple model loader for the emmiters. Apart from that it all what i tryed to explain in previous post. There a few bugs in the way is spreads etc.

One thing to note which isnt very clear on the video is the average FPS counter stays around 50 FPS. I could get that a lot higher through optomising the code etc, and the video was taken with the compiler it was written in open, Fraps, Photoshop, 3dsMax, Milkshape, about 100 web pages :P and most importantly CW2 running in background, so think you get the idea.

In relation to my amazing super awseome video editing skills, not need to discuss such, I know how good such is :P

Grun

Echo51

That just looks like you made a 3d model for the emitter, and made a plane onto which you spawn the creeper, which still seems 2d/flat. 3d creeper should add up to form like a wave or hills of fluid ;)
Join the chat! :D
- The only echo present here...

Grun

Can make another vid when back on my other comp which I use to make such, the creeper has height, camera angle it set at is what i use for other fps games i worked on. Yes the emmiter is a simple model i put together in like 2 min :P The terrain is not actualy a plain it a triangle strip which maps from a height map. Not included hills etc as this was more a deomnstration to show it is posible etc. and not done calcs for change in terrain etc.

The idea that it a wave etc, well way it works is the emmitter keeps adding at there posistion and as that position grows in height, and yes that height is shown in 3d, it compares to the surronding area and increases height around while reducing itself for equal ammount.

As I say, there was not intention to do such apart from the amount of people saying it couldnt be done.

Grun

Ebon Heart

Quote from: Grun on July 23, 2011, 04:35:49 PM
Can make another vid when back on my other comp which I use to make such, the creeper has height, camera angle it set at is what i use for other fps games i worked on. Yes the emmiter is a simple model i put together in like 2 min :P The terrain is not actualy a plain it a triangle strip which maps from a height map. Not included hills etc as this was more a deomnstration to show it is posible etc. and not done calcs for change in terrain etc.

The idea that it a wave etc, well way it works is the emmitter keeps adding at there posistion and as that position grows in height, and yes that height is shown in 3d, it compares to the surronding area and increases height around while reducing itself for equal ammount.

As I say, there was not intention to do such apart from the amount of people saying it couldnt be done.

Grun

Holy crap Grun!!! That's amazing!
When the going gets tough, the tough get going. The smart left a long time ago.
Check out the amazing A Tragedy Forgotten CW2 map series!

Kamron3

I still say no to a 3D CW.

thepenguin

I'm getting convinced, that looks awesome!
We have become the creeper...

Grun



Sry for delay, been little busy over weekend, but screenshot taken from lower camera angle showing that the creeper actualy has and displays the height in 3d enviroment. Also I dropped the Emitter on the right side down to the surface hoping to show the transparancy but it not that clear in pic as creeper quite dense by time i ajusted the camera. Guess a pause/speed option would be nice :P

Since making a lot of this have thought of better way to render it, which should look better and improve performance. If I get chance will have a look at changing such. Also another problem with it in its current state is the creeper seems to act more like sand rather than a liquid :P so it piles up rather than spreads.

Grun

thepenguin

#26
well, how you do that depends on how you store your camera angle (X,Y,Z is much easier to code than Xtilt, Ytilt, Ztilt (though both are possible (seperately or simultaneously)))


although, the flow algorithim could be a little easier
We have become the creeper...

Grun

#27
The posistion and tilt for the carmera are all stored within a Matrix. The Matrix is the manipulated and altered currently with the position altered by moving the mouse to the edge of the screen and number pad to zoom in and out (would change to mouse wheel).

Grun

For the interested, this is a quick explanantion of how such works, again very boring to some.

The camera is made up of multiple classes which all inherite of a single base class. The base class holds the matrix and a virtual update function. Each class handels a diffrent calculation to be made to the camera Matrix, this way the code for zoom, X/Y (well X Z it happens to be but everyone thinks in terms of X Y) and any tilt can all be done seperatly. Then once all calculations done the Matrix is then passed to the main class to be passed to and openGL camera which is how its all displayed. Reason I done in such way is the camera can be switched to be used in other games/programs, such the zoom can be used in an FPS for scope site etc.

Ebon Heart

Now there's still the matter of calculating for large chunks of the creeper being destroyed by blasters and launchers and the likes... as well as the issue of unit controls in a 3d environment.
When the going gets tough, the tough get going. The smart left a long time ago.
Check out the amazing A Tragedy Forgotten CW2 map series!

Ranakastrasz

This may be helpful in determining how to simulate the creeper better
http://knucklecracker.com/forums/index.php?topic=304.0