Zelda: WindWaker, Sid Meier's Pirates, and LockOn:Air Combat all have pretty good volumetric clouds. What perspective in particular are you looking for?
By perspective they might have meant, locked like a side scroller or RTS. Or moving around and thru the smoke like a flight sim or first person shooter. Since you are asking for VOLUMETRIC clouds I'm a bit confused since thats not really an artist thing?
From my experience with smoke there are a few ways to do it and most of them are engine specific and require many an hour put in by both the art and code.
- Animated Facing planes or sprites. One of the oldest tricks in the industry but still works pretty good but you still have to work with a coder to get it working correctly. Things are getting pretty advanced where you have more of these being emitted out of some type of particle emitter so the sprites have a life cycle and can be scaled, play different animations, even fade out and disappear over the life span. How you make the art that goes onto the mini facing planes is up to you, the coders and your art department petty cash budget. I think the most common is to render out some higher end smoke effects using smoke plug-ins for max or lightwave on alpha then applying them to large sprites. Coders like this because its easy for them to do. Players hate it because it looks fake. Most of the time they do a full screen fog effect in front of the camera as you get closer to the source. But again that depends on the coders.
- Clouds created ONLY by code/the engine. Some places invest heavily in making clouds that artists never have to touch. From what I understand it handles them much like Max handles the Atmospheric Helper. Which is just a box with parameters to the level artist. This is often very processor heavy but light on the art department since it's all just colors and code noise.
So I guess the questions falls back to you, are you looking for coder clouds or sprite/particle emitter clouds? Both are engine specific and can't be done by the art department alone. How friendly are you with the code monkey, and how much does he/she know about making smoke. More than likely the lions share of the burden falls on them with some art on the side.
Honestly your question is one that grips the industry and is as broad as how do you export art for games? Or what are the poly counts for next-gen? Answer: Every place is different and it normally requires more than just an artist to answer that.
Sorry Daz, I should have been more specific. By perspective I meant the player Point of View. How close is he getting to those clouds, from what and how many angles, etc.
Anyhoo, another game, (that's not even out yet) does volumetric smoke really well. (Same general idea, right?) When it hits, be sure to check out Ghost Recon Advanced Warfighter 2. Any 'cloudlike' particles in that game share an interesting effect in which if they collide with any geometry, they'll blend out, rather than clip right through said geometry. Makes for some very convincing volumetric effects comprised of simple sprites.
Jane's WWII Fighters had some nice looking volumetric clouds, but since it was 1998 and the world wasn't ready for such things yet it was pretty damn slow
I was working for the MS Flight Simulator team when my lead first started doing the volumetric style clouds. It's pretty low tech really, with multiple facing sprites. He wrote a pretty cool little script where you place large boxes to describe the overall shape of the cloud, then hit a button and it fills that bounding area with a bunch of facing planes with a cloud puff texture on them. Depending on the type of cloud, you could change how many sprites there were, and also swap the puff texture.
Thanks all for the help, especially Vig. Although I'd be inclined to disagree that my question was as broad as all that. Perhaps I wasn't specific enough whether or not I was looking at it from the code or Art side, but my response to Ryno possibly clarifies. I'm confident that there aren't literally thousands of different ways that volumetric clouds are approached in games, but several.
Poop, that looks awesome at a quick glance. I'll have to investigate further. Thanks for the link.
Ryno, that's just the kind of thing I was looking for thanks. I was looking at MS fs yesterday and it struck me that their cloud solution seemed to be much more of an Art centric solution than a programmatical one.
I was once trying to do the same thing and came up with a quite nice solution.
I used spheres in 3dmax to define a cloud shape and made a blobmesh of it.Then it was optimized by hand where needed and vertex painted on the bottom and in the places where the cloud would be occluded.Then in engine i rendered a sprite at each vertex that took its colour from the vertex channel.
Got rid of the cloud looking like an uniform white blob quite nicely.You could use some vertex noise to give it motion too.
Yeah, Niniane was the programmer who basically wrote the code for displaying facing sprites and how the light would tint them, then kind of took credit for the whole system. This kind of pissed off the entire art team, as it was our technical art lead, Adrian Woods who figured out the whole system, wrote the Max Script, and told her how to do the whole thing. But he's not much of a self-promoter, so didn't say anything when she wrote up the Siggraph paper and took more credit than she deserved.
it's not so über, as most stuff pimped, but it only requires a simple vertex-shader and billboards, ie pretty cheap. I tried to reverse engineer the volumetric smoke stuff of SOTC, which is illustrated here http://edusworld.org/ew/ficheros/2006/paginasWeb/making_of_sotc.html
Think of it like Speedtree, but for weather. True volumetric clouds. The way it handles the HDR of the sun is awesome.
[/ QUOTE ]
Just as a follow-up:
LindenLabs (the creators of Second-Life) have acquired the makers of Nimble and will release the entire system under a open-source license (GPL) as soon as it is integrated into the Second-life client (also GPL).
Replies
http://www.jenovachen.com/flowingames/cloud.htm
Its well worth a look.
What perspective in particular are you looking for?
[/ QUOTE ]
Perspective? Sorry If it wasn't clear. The perspective of trying to understand different techniques used to create clouds in videogames.
Thanks for the pointers guys. I should have googled first really. I think I've found some useful stuff.
From my experience with smoke there are a few ways to do it and most of them are engine specific and require many an hour put in by both the art and code.
- Animated Facing planes or sprites. One of the oldest tricks in the industry but still works pretty good but you still have to work with a coder to get it working correctly. Things are getting pretty advanced where you have more of these being emitted out of some type of particle emitter so the sprites have a life cycle and can be scaled, play different animations, even fade out and disappear over the life span. How you make the art that goes onto the mini facing planes is up to you, the coders and your art department petty cash budget. I think the most common is to render out some higher end smoke effects using smoke plug-ins for max or lightwave on alpha then applying them to large sprites. Coders like this because its easy for them to do. Players hate it because it looks fake. Most of the time they do a full screen fog effect in front of the camera as you get closer to the source. But again that depends on the coders.
- Clouds created ONLY by code/the engine. Some places invest heavily in making clouds that artists never have to touch. From what I understand it handles them much like Max handles the Atmospheric Helper. Which is just a box with parameters to the level artist. This is often very processor heavy but light on the art department since it's all just colors and code noise.
Papers on real time volumetric clouds
http://schpok.net/research/purpl/clouds/
http://graphics.cs.brown.edu/games/CartoonSmoke/index.html#bibtex
http://www.markmark.net/cloudsim/
http://nis-lab.is.s.u-tokyo.ac.jp/~nis/cdrom/sig00_cloud.pdf
So I guess the questions falls back to you, are you looking for coder clouds or sprite/particle emitter clouds? Both are engine specific and can't be done by the art department alone. How friendly are you with the code monkey, and how much does he/she know about making smoke. More than likely the lions share of the burden falls on them with some art on the side.
Honestly your question is one that grips the industry and is as broad as how do you export art for games? Or what are the poly counts for next-gen? Answer: Every place is different and it normally requires more than just an artist to answer that.
Think of it like Speedtree, but for weather. True volumetric clouds. The way it handles the HDR of the sun is awesome.
Anyhoo, another game, (that's not even out yet) does volumetric smoke really well. (Same general idea, right?) When it hits, be sure to check out Ghost Recon Advanced Warfighter 2. Any 'cloudlike' particles in that game share an interesting effect in which if they collide with any geometry, they'll blend out, rather than clip right through said geometry. Makes for some very convincing volumetric effects comprised of simple sprites.
Poop, that looks awesome at a quick glance. I'll have to investigate further. Thanks for the link.
Ryno, that's just the kind of thing I was looking for thanks. I was looking at MS fs yesterday and it struck me that their cloud solution seemed to be much more of an Art centric solution than a programmatical one.
I used spheres in 3dmax to define a cloud shape and made a blobmesh of it.Then it was optimized by hand where needed and vertex painted on the bottom and in the places where the cloud would be occluded.Then in engine i rendered a sprite at each vertex that took its colour from the vertex channel.
Got rid of the cloud looking like an uniform white blob quite nicely.You could use some vertex noise to give it motion too.
http://ofb.net/~niniane/clouds/
Thanks all for the help.
http://crazybutcher.cottages.polycount.com/wip/fakevolumebb4.jpg
it's not so über, as most stuff pimped, but it only requires a simple vertex-shader and billboards, ie pretty cheap. I tried to reverse engineer the volumetric smoke stuff of SOTC, which is illustrated here
http://edusworld.org/ew/ficheros/2006/paginasWeb/making_of_sotc.html
http://www.gamedev.net/community/forums/topic.asp?topic_id=439168
looks pretty neat, but probably eats lot of performance as true raytracing is done on the cloud volumes.
http://www.windwardmark.net/index.php
Think of it like Speedtree, but for weather. True volumetric clouds. The way it handles the HDR of the sun is awesome.
[/ QUOTE ]
Just as a follow-up:
LindenLabs (the creators of Second-Life) have acquired the makers of Nimble and will release the entire system under a open-source license (GPL) as soon as it is integrated into the Second-life client (also GPL).
http://lindenlab.com/press/releases/05_21_07