Sign in to follow this  
Sock5

Does Crysis 3 have a volume texture cover the entire level for particle turbulence?

Recommended Posts

Sock5    162

For my particle systems I'm using a relatively small 3d texture that pretty much stores the info about the turbulence field around the particle system.The issue with this is that it has a limited size(the confines of the particle cloud), so it wouldn't take too much memory and that it is kinda slow to update from the application(at least for me), and it gets problematic when I have a lot of particle systems running at the same time, but in Crysis 3 the vegetation/particles/cloth react everywhere, also the nex APEX(or whatever it's called) system for particle turbulence seems to not suffer from the limitations I experience.So how do they do it?Even with cascades, to get that fine effect from the videos at close range, you would need a gigantic texture and they even had multiple particle systems mixing around at close up blink.png .Any ideas?

Edited by Sock5

Share this post


Link to post
Share on other sites
Sock5    162

Are you sure they don't calculate this on the fly based on some procedural approach?

http://www.youtube.com/watch?v=qq3mYmzOelI yeah here's a reference video, at 0:49 they show wireframes of the "turbulence nodes", but as you can see they can stretch infinitely as long as the particle trail is, so if the character goes very fast, they can stretch the entire room, not to mention there are multiple such systems running at the same time.Also notice the fine detail at 1:15 and later on, it has to be some really dense field/grid...

(I used an Unreal Engine video, cause the Crysis 3 videos don't show it mich, it has to be seen in-game, but I think it's the same concept)

Edited by Sock5

Share this post


Link to post
Share on other sites
Hodgman    51234

With APEX, they might not be using a grid at all to store/propagate turbulence, it could be using something like SPH instead. If so, SPH requires each particle to inspect the state of it's nearby neighbours, so they would likely use a grid to accelerate the neighbour search. However, this grid could be built from scratch every frame, with a different size each frame. Each frame, they could use the bounding box of the particle system as the bounding region of the grid, so that as the particles occupy a larger space, the grid cells simply increase in size to accommodate it. This wouldn't change the behaviour of an SPH system at all, it would only decrease the efficiency of the neighbour search in dense areas.

 

With crytek's foliage, etc, I'd guess they're using procedural turbulence effects. e.g. an explosive creates a spherical force emitter, which points can test themselves against over time to calculate the forces imparted on them.

Edited by Hodgman

Share this post


Link to post
Share on other sites
InvalidPointer    1842

Grass recieves special treatment in Crysis 3-- a 16x16x16 turbulence grid centered on the player, IIRC, but as far as I know common vegetation still uses something like this for procedural animation. Objects have a wind vector/time value, and sub-object detail is all shader trickery.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this