Polymaniacs video *New*

Community Forums/Showcase/Polymaniacs video *New*

Stevie G(Posted 2008) [#1]
Some more footage of me playing around with some of the deathmatch vehicles. The vid also shows day/mild snow/sunny & mild/night environment effects.

http://blip.tv/file/851147/


Terry B.(Posted 2008) [#2]
gah. DEMO!

Looks kewl ;)


Buggy(Posted 2008) [#3]
Incredible.

Fix those spikey-ball collision problems and you're set, as far as I can tell.

Love the "Polywood."


Stevie G(Posted 2008) [#4]
It's not a problem as such with the spikey balls. I originally had it that the connection breaks if something is between the vehicle and the ball but you always lost the ball in trees etc..

I've considered a sort of magnetic electrical link between the two ( like pod racers in Star Wars ) so that it's plausible that the objects can still be attached even if something is between them. TBH, I'm not sure how best to handle this so open to suggestions.

Stevie


Ross C(Posted 2008) [#5]
Handle it graphical wise or code wise? I can hlep with the former, but i reckon your good enough at coding to handle the latter no probs.


Mark Judd(Posted 2008) [#6]
Looks excellent.
Environment effects are just right.

+1 looking forward to the demo.

Nit picking - no shadow beneath vehicles when on bridges - im guessing the bridges are shadow casting entities in their own right ?

cheers,

Mark


andy_mc(Posted 2008) [#7]
looks excellent, it's zeewolf for 2008


kragoth74(Posted 2008) [#8]
I hate you. This looks awesome !! We really need a demo... :-)


Stevie G(Posted 2008) [#9]

Handle it graphical wise or code wise?



Neither really I can handle both myself. I'm more interested in peoples preferences are on the linking. I like it as is but I don't want loads of linepick overheads that would be associated with other methods. I'm aiming for simplicity and speed here.


Nit picking - no shadow beneath vehicles when on bridges - im guessing the bridges are shadow casting entities in their own right ?



Yes, it's a kind of tradeoff but one I'm happy with. I'm sure people will complain about the shadows for the millionth time but afaik they're done now and I won't be returning to them. You can set them to low / med or off, med is still relatively low res but when you're in the thick of it you hardly notice them.

I'll have a demo out when I'm happy that I've got something nice to show. The AI hasn't really changed much since the old version so each vehicle is unaware of the presence of others. I'll work on this when I'm happy with all the vehicles handling. I hope to release an Alpha demo in a few weeks with just death match, I see the light and timetrail to play with. I'm actually really keen to see if anyone else gets the infrequent mav's I'm currently getting so that I can put it down to coding or graphics card issues. At least I'll know.

As you can imagine, I've still got loads to do and more features to implement but I'm very happy with everything so far.

Cheers
Stevie


Mark Judd(Posted 2008) [#10]
The shadows are more than suitable - as you say in thick of a deathmatch they are not going to register with a player - it was the only thing i could notice !

The link should certainly be magnetic - two horseshoe shaped cherry red magnets would look really good imho.

cheers,

Mark


JoshK(Posted 2008) [#11]
Having no shadows when an object is beneath a shadow caster is the more correct way to handle it. If you did something else, people would complain about the double shadows, like HL2 has.


Stevie G(Posted 2008) [#12]
I could create 2 heightmap levels and check the casters height if above the higher map to determine whether it's rendered but it doesn't really add anything other than slowdown due to the extra copyrect and additional shadow texture required.

What happens when you have a bridge over a bridge - it could get out of control so I'll just stick with what I have :)

The vehicle / object shadows are only shown within a certain range of the players as I only render 1/4 of the level around the players for speed.


Axel Wheeler(Posted 2008) [#13]
Looks sweet. The magnet method might look better, but you might need a glowing connecting line between the magnet and the object so the player knows what is happening.

Can you grab other things besides spikeys? Like dead vehicles, for instance.

Also, how about a spiral tower that players can try to climb, but there are also jump ramps aiming at the tower so others can try to bash them. And/or jump ramps coming off the tower to take a flying leap at vehicles on the ground.

As long as you are implementing a tow chain thingy; how about a gold, silver and bronze balls that players can drag around, scoring points for each second. Kind of like capture the flag a la 1SANE.

Anyhoo; nice job.


Stevie G(Posted 2008) [#14]
I've got an idea for the attachment ... kind like a lighning bolt holding the two objects together like magnets. I'll see how it goes.

You can grab gun trailers and most other objects. Grabbing other vehicles is pointless.

I like the idea of the tower - can you give me a better idea of what it would look like?

Never heard of 1sane. I hope to implement something similar to the capture the flag idea but I'll keep it to myself incase it doesn't pan out.


_33(Posted 2008) [#15]
Stevie G, I was wondering, is the water totally static, or can it wave?


Stevie G(Posted 2008) [#16]
Totally static. I could animate it but it would be expensive in terms of speed.


JoshK(Posted 2008) [#17]
You could get a much higher resolution / lower cost by rendering the shadows only for the area of the scene within the camera frustum. That's how cascaded shadow maps work.


Stevie G(Posted 2008) [#18]
@ Leadwerks - thats what I do already. Only dynamic shadows within a certain distance from the camera are rendered to a texture. It works out about 1/16 square size of the level. All static shadows are pre-rendered. At it's highest setting the shadowmap is 2048x2048 and I copyrect the dynamic 512 x 512 texture onto the shadowmap.

I could go to 4096 x 4096 but I doubt many cards will handle that size of texture at a decent frame rate. Also, due to the dynamic snapshot then being 1024 x 1024 the min resolution would be 1280 x 1024.


JoshK(Posted 2008) [#19]
It sounded like you were rendering the area all around the camera position. I meant to calculate the frustum volume and only render the area in which the camera is facing.


Stevie G(Posted 2008) [#20]
Yes, a square surrounding the camera is what I'm doing so I could get a better distance. I'm unsure how to render a Axis aligned square to get the best fit in front of the camera or calculate the frustum volume?


Murilo(Posted 2008) [#21]
This looks like great fun! The vehicles could do with some headlights in the night mode though...


Stevie G(Posted 2008) [#22]
Cheers. I did try headlights but when they clip the level it looks sh*t so I'll stick with what I have.

I've added 4 shadow detail modes ( the maximum is auto detected based on screen res and max texture size for gfx card ) and 3 shadow types for dynamic objects.

ShadowType 1 = Cube proxy
ShadowType 2 = Epsilloid proxy
ShadowType 3 = Copy of casting mesh

Detail 0 = off
Detail 1 = 512 x 512
Detail 2 = 1024 x 1024
Detail 3 = 2048 x 2048
Detail 4 = 4096 x 4096

The last mode looks nicest but probably needs a beast of a card to run at a decent frame rate. I get about 36fps with 44 vehicles, 48 objects in this mode.

Here endeth the shadow discussion.


plash(Posted 2008) [#23]
Awesome work.


Cp(Posted 2008) [#24]
Looking forward to the demo.
It looks like a great start.


Stevie G(Posted 2008) [#25]
I've added the electric / magnetic cables - they look pretty good at night. Here's a quick night death match video - it's very hectic as you can see ;)

http://blip.tv/file/857582/


JoshK(Posted 2008) [#26]
-Decide how far away from the camera you want the shadows to extend.
-Divide that distance in half and transform the vector (0,0,distance) from the camera to the world. That is the center of your frustrum volume.
-The other points in the volume are the camera position and the four points making up the base of the frustrum pyramid shape. Take one of those four points and find the distance from it to the center. This is the maximum radius of the volume.
-Center your rendering around the frustrum center, and use the radius as the width and height. It waste a lot of texture space, but not as much as if you were rendering all around the camera.


Stevie G(Posted 2008) [#27]
Got you Josh - thanks.


Yahfree(Posted 2008) [#28]
D E M O


Jerome Squalor(Posted 2008) [#29]
hey stevie is it difficult to make those shadows? ive never use shadows before. do u have a tutorial for it?


Defoc8(Posted 2008) [#30]
again...total awesomeness.
Hopefully you will track down those pesky bugs and get
a game made with your awesome physics engine..cant
wait to try out a recent demo..

goodluck :)))


Buggy(Posted 2008) [#31]
I sort of liked the spiked ball on the chain, but then again, I haven't seen the magnets. What I was talking about collision-wise was that 1) the ball seemed to sink into the ground a couple of times, but more importantly, 2) it looked like when you were on the bridge, the ball went through the bridge, but then wouldn't go through it coming up, and you got stuck.

Edit: Nevermind that second point, I re-watched it and see that the ball went around the bridge. Looks good.


Foolish(Posted 2008) [#32]
Looks brilliant


Stevie G(Posted 2008) [#33]

I sort of liked the spiked ball on the chain, but then again, I haven't seen the magnets. What I was talking about collision-wise was that 1) the ball seemed to sink into the ground a couple of times



The only difference is that it's an electric light cable rather than a cord/chain - the constraint between the two hasn't been changed but I think it looks better, especially at night. At what point does the ball sink into the ground? If you are referring to the bushes then bear in mind that the collision proxy for them is just a short stump to allow you to drive through the edges if your careful.

@ Josh, a simple change to the shadow code has allowed me to render almost twice as far into the distance with no additional overhead - thanks. No need for me to touch the shadow code again.

I've been working on a few things recently - a rain effect and at long last the AI. I'll maybe post a video later if anyones interested?

Stevie


Mark Judd(Posted 2008) [#34]
to quote a bulldog :- ohhh yes

+1 interested.

cheers,

Mark


Damien Sturdy(Posted 2008) [#35]

to quote a bulldog :- ohhh yes



LMAO. True.

StevieG - I love AI. Working on it for the Flow demo right now, so, video away! :-)


Stevie G(Posted 2008) [#36]
Ok thanks - I'll upload something when I get in later.

I purposely left the AI until I was happy with all the vehicle handling otherwise I'd be constantly tweeking it. I've laid some solid foundations for a FSM over the last couple of days and plan to get the AI almost unbeatable and then dumb them down.

Strangely it isn't so easy to blow everything up when the other vehicles are actually aware of your presence ;)

Stevie


Ross C(Posted 2008) [#37]
I can give you some cool lightning code. It simply creates a 3 tubes, with x number of segments, all the one surface, and deforms each segments vertices randomly, to give the effect of lightning/electricity. The 3 tubes use the add blend, to give a good glow.


Stevie G(Posted 2008) [#38]
@ Ross, I already do similar but just rotate on the roll axis randomly without any vertex manipulation overhead.. have you seen the video above? It's good enough for my purposes.


Stevie G(Posted 2008) [#39]
http://uploads.blip.tv/file/870565

Note - it plays at half speed for some reason!


ervin(Posted 2008) [#40]
Good lord almighty that looks fantastic!
Can't wait to play it!

Are we looking at the next great Blitz game?
Will this be released as shareware?


taumel(Posted 2008) [#41]
Beside of the shadows it looks very nice but from what you can see from the videos i don't see an enjoyable gameplay yet.


Stevie G(Posted 2008) [#42]
@ taumel, I'll prove you wrong in the end.

Quick Update :

Over the last few days I've been balancing speak / weapon damage / armour so that each vehicle can take a set number of direct hits from each different projectile / explosive. I'm very happy with the balancing but no doubt will need to sweak it at a later stage. Each army vehicle now has it's strengths and weaknesses.

I've also done alot of AI work recently. The level editor automatically calculates a grid system which will be used for waypoint and the AI tranvelling around the landscape more intelligently. I'll also be able to set up races on each level and the AI will be able to avoid obstacles / other vehicles etc.. Not sure how I'm gonna get them to go over briges yet but I'll come up with something. Boats and Sharks ( non playable ) will stay in the water. The teams now respawn on flat land in their respective corners so it feels more like a team match than a free for all.

Here's my helper texture to show you what the AI now sees ...


And without ..


I've also changed it so that the offroad can grab anything lighter than it just by making contact and you release it with a button. Means you can grab a land mine ( which has low friction ) and slingshot it like a hockey puck at the enemy - great fun.

Just thinking out loud ... I had a idea for a golf mini-game where the level is a single hole with a pin and tee and you use the golfer( a tank ) to shoot a shell at the ball ( a transit van ) to hit the pin - should be good fun.

Anywho, I've made another video showing some of the new features. It plays at full speed with sound. The AI doesn't use the grid system yet but will in a few days.

http://stevieg.blip.tv/#882307


taumel(Posted 2008) [#43]
I really like the style of your work like the cute low poly models and we seem to like the same colours. It's just that the videos didn't offer a convincing gameplay yet and it somehow reminded me of your other gameproject (the ragdoll one) were you said that you know which direction you'll go and which you seem to have stopped for now. I hope you didn't misunderstand me and i wish you the best and that it works out for this one.


Ross C(Posted 2008) [#44]
I assume:

Yellow - Easiest to drive
Green - Easy, but not the easiest
Purple - Whoa, little steep!
Red - Your having a laugh?

Looks great :o)


Stevie G(Posted 2008) [#45]
@ Ross,

There's also a blue area for water but that's pretty much it. The respawns for land vehicles are the yellow squares. I'll probably need to add a few more as I go but it will be fun when I see the AI run around without doing anything silly.


@ taumel,

Thanks. Well I worked a fair bit on the ragdoll game since I last posted a demo but I discovered a much better and quicker method of simulating friction, collisions and forces which I then applied to Polymaniacs. I've just kept going as I was having alot of fun with it. The emergent bahaviour still makes me laugh but until you play it for yourself you won't appreciate it. I will return to the other project eventually but I'm determined to finish this one.


Scott Williams(Posted 2008) [#46]
This project looks really nice.

Thinking of doing something in 3d myself at some point.

Would you mind giving some info on tool used, physics engine used etc. Any info at all would help.
Do you have a web site?

Cheers. Scott.


Stevie G(Posted 2008) [#47]
I use Blitz3d, for the tools / physics & game engine.

The physics engine is all my own work and is a particle physics variant using a ( hybrid ) verlet integration method. I think there are a few demo's using verlet integration in the archives you could look at.

So far, I've yet to see another verlet engine which is as fast, robust & versatile as mine :) I can have 50 vehicles driving around with AI @ over 50fps. Any bottleneck is the CPU, rather than the GPU.

I have webspace but not a site as such, need to get something sorted at some point.

Stevie


Scott Williams(Posted 2008) [#48]
Verlet integration? I must have a look into that. Sounds interesting. In past games I have just used Havoc. Easy to work with but you do have to fudge it to fit.

Now I plan to do an indie game I think I may have to look around for something similar. I have been looking into the ODE physics stuff. Looks very similar in operation. Also being open source I can use it if I go cross platform.

What about tools? I would be interesed to know your faves, especially for creating meshes etc.

Cheers. Scott.


Stevie G(Posted 2008) [#49]
Believe it or not, every mesh in game is created in code using native and custom primitives and then saved in my own model format. I have a lot of custom built functions built for welding / unwelding / culling / shading and colouring so it's quite a fast process. I also have alot of procedurally generated stuff done in code.


Moraldi(Posted 2008) [#50]
I believe you and I could say that there is a lot of work behind this simple(?) graphics. Keep going.


Scott Williams(Posted 2008) [#51]
erm - Maybe I'm being a bit thick here but why would you build a model in code? Once you know where the vertex is, What it is connected to and what colour/texture it is then thats it. I'm trying to imagine a situation where I would build a model in code and I can't. Are you pulling my leg?

When I say 'model' I dont include procedural models for special effects or something like that. I am really on about the sort of model that you would have to build with an external editor.

Scott.


Stevie G(Posted 2008) [#52]
No I'm not pulling your leg but I don't add individual vertices or triangles. I take a basic primitive ( like a cube ) and unweld, slice, cull, scale and colour it, do the same with a cylinder, add them together etc...

I could not be arsed learning how to use a 3d package tbh.

My landscape meshes are created procedurally, as are some of the trees & buildings, given a few paramaters.


Jerome Squalor(Posted 2008) [#53]
how do you choose where the missiles from the helicopters will be targeted?


Stevie G(Posted 2008) [#54]
The missile flies in a straight line for 1 second after launch, they then find the nearest vehicle ( excluding the vehicle that fired it ) and tracks it for at least 6 seconds.


Scott Williams(Posted 2008) [#55]
Very cool. You seem to be taking the idea doing it yourself to a new level.


Scott