Jump to content
  • Advertisement
Sign in to follow this  
nini

how to render Palms like in farcry ?

This topic is 4465 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi all, i wonder what is the technique that you use for palm rendering (billboards for palms and mesh for trunk) when i see screenshot from farcry , i think that it is a lot of tweak to adjust the billboard quads... thanx.

Share this post


Link to post
Share on other sites
Advertisement
hi;

at a far distance, the palms/trees in FarCry are rendered via imposotor's (a special kind of billboards); if the player moves closer to a an ojbect, then, several stages of a LODmesh are used.

Share this post


Link to post
Share on other sites
the best thing would be to use 360 billboards I presume. Just render your mesh from different directions, and depending on the view angle you can blend 2 different billboards (billboard atlas would seem like the best solution here); Like this you don't have to recreate your imposters that much, and can use the same imposter for all the same foliage/trees.

Regards,
Kenzo

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:

the best thing would be to use 360 billboards I presume


That not a fantastic idea. Its uses too much video memory because your texture would have to be huge. The most common is to have rotations of about 30 degrees. Since the billboards are further away, the larger step size isnt really noticable.

Share this post


Link to post
Share on other sites
Even 30 degree interval billboards are a waste of memory. That's the point of imposters, a tree is rendered to a texture from the correct angle and that texture is used on a quad for distant objects. When the camera perspective changes enough, it can be re-rendered, or when the camera gets close enough the actual mesh can be rendered. It's not limited to intervals and doesn't waste memory.

Share this post


Link to post
Share on other sites
Frankly I think for trees such imposter techniques are wasteful. Better to have just several sprites images that can be used regardless of angle.

Speedtree for instance doesnt do imposters, it just uses some generic sprites.

Think about it-- if you have 100 trees visible that's 100 render targets, yuck.
Anyway, that means you wouyld need to re-rendede the imposter when the camera moves, if you dont, what's the point anyway? I dont think Farcry works this way, and SpeedTree certainly doesnt.

Share this post


Link to post
Share on other sites
Quote:
Original post by Matt Aufderheide
Frankly I think for trees such imposter techniques are wasteful. Better to have just several sprites images that can be used regardless of angle.

Speedtree for instance doesnt do imposters, it just uses some generic sprites.


Hmmm....have you actually run the SpeedTree Valley demo? It does NOT use generic sprites. It does render each tree to an imposter texture. That's the whole point of Speedtree's tree system.

Share this post


Link to post
Share on other sites
Quote:
Original post by Matt Aufderheide
Think about it-- if you have 100 trees visible that's 100 render targets, yuck.


Think about it again, because that's most certainly what Speedtree does, and if you switch Speedtree to wireframe, you can actually see that it's using impostors. The trees are instanced, there are only a couple of different tree models. Many trees will share the same impostor; since each impostor is very small on screen, they can efficiently be stored in a single "pack" texture, or even pre-computed for different camera view angles.

Y.

Share this post


Link to post
Share on other sites
Quote:
Original post by Ysaneya
Quote:
Original post by Matt Aufderheide
Think about it-- if you have 100 trees visible that's 100 render targets, yuck.


Think about it again, because that's most certainly what Speedtree does, and if you switch Speedtree to wireframe, you can actually see that it's using impostors. The trees are instanced, there are only a couple of different tree models. Many trees will share the same impostor; since each impostor is very small on screen, they can efficiently be stored in a single "pack" texture, or even pre-computed for different camera view angles.

Y.


That's pretty much how my system works. I have several 2048x2048 textures that pack in around 256 imposters in each one, since I use a 128x128 portion for each imposter. I also have an array that stores information for each texture cell in the 2048x2048 image, such as angle and distance.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!