Page 1 of 2 12 LastLast
Results 1 to 10 of 17

Thread: AlphaBlending and Vegetation Guide by Acid | Forums

  1. #1
    DOES ALPHABLENDING POSE A THREAT TO PERFORMANCE?

    Not necessarily. I've had alphablending turned on, with 10+ different types of vegetation, with a total of about 40,000 vegetation objects present on the terrain and still no noticeable drop in performance.

    It's all going to depend on your system, but I honestly do not believe that AlphaBlending is capable of as large of a performance drop as everyone thinks. Actually I would bet on it.

    Plus, you have the option of leaving sprites on and determing at what distance the vegetation becomes a sprite. Sandbox gives you lots of freedom about how you want vegetation to render, and at what distance it does it.



    IS ALPHABLENDING NEEDED AND DOES IT ACTUALLY MAKE VEGETATION LOOK BETTER?

    Is Alphablending "needed"? There is no true answer to that question. That is up for you to decide because it is your map and your the creator. You decide what is needed.

    Does Alphablending make your vegetation look better? There is a LARGE misconception about this matter and I have to say that those of you that say AlphaBlending should not be used, have not seen what AlphaBlending can and can not do.

    I personally have performed several test's with AlphaBlending and documented those tests with screenshots. Although I can not post the screenshots because I do not have webspace to do so (unless someone wants to offer space for these small images), I can give you proof that AlphaBlending in many cases is required for "good looking" vegetation and in some cases it just comes down to preference.



    VEGETATION

    After a lot of experience with using Sandbox I have a "preferred" way that I do things. Since we are on the subject of alphablending I am going to explain some of my technique for how I set vegetation.

    When I get to the stage of mapping where I want to place vegetation and begin placing vegetation objects I place the first object of that type (shift+click) on the terrain, zoom in closely so that the entire object is fitted to the perspective window and start to set the properties for that object.

    The first thing that I normally do is set Bending for 1. This is a setting you will have to experiment. Usually a good setting is somewhere in between .3 and 1.0. A setting of 1.0 is usually a very realistic "bending in the wind" effect for your trees, palms, and grass.

    If this is a large object such as a tree I will usually side Hideable to True so that AI can hide behind this object.

    Brightness, I won't touch until I Generate Surface Textures. Normally after Generating Surface Textures those veggies which start out too bright will get darker.

    I've also been experimenting with CastShadows + RealTimeShadows. With 1000's of vegetation objects (mostly the trees, and bushes) set to CastShadows+RealTimeShadows (which are shadows that move in real time with your vegetation) there was also no significant performance drop. None at all that I could determine.
    You will have to experiment on your own, but I like to set CastShadow for True and RealTimeShadow for True.

    Next, I will switch AlphaBlending to TRUE and FALSE several times making a comparison from a few different distances. Whether AlphaBlending looks better always depends on the SPECIFIC vegetation object your using it on. Some look better with it and others look better without it. There are a few that you won't be able to tell a difference at all so it is better to just leave it set for False on those objects, so that your not using up those "precious resources" everyone talks about.

    SpriteDistRation, ShadowDistRatio and MaxViewDistRatio are settings you will have to experiment with depending on what the rest of your settings are, your map, etc. If your using AlphaBlending, CastShadow and RealTimeShadows, then you obviously want to pick these settings wisely so that your vegetation isn't becoming a sprite at a very far distance. You want your object to become a sprite at a distance where you won't notice a difference of whether it is a sprite or not (usually 1 is fine, or even .7) for SpriteDistRatio. Your vegetation should become a sprite at the lowest possible distance without losing overall visual appeal. MaxViewDistRatio's setting for Trees needs to be set for a larger setting than that of grass. Obviously trees are large and realistically you would be able to see a tree for a MUCH longer distance than a few blades of grass.

    UseSprites: Set this for Yes. If you don't like those ugly boxes that appear with sprites set on then you can click Tools, Reload Terrain. You don't have to Generate Surface Textures to get rid of these boxes. Reload Terrain will suffice and it is much quicker. You could also set SpriteDistRatio to a larger number, but it's not very logical to do so just because you dont want to see those boxes. They will go away once you Reload Terrain, Generate Surface Textures, etc and you won't see them in the game.

    After getting the settings how I want them I begin setting objects down one by one (shift+click). I do this one by one, because usually I don't like to use distribute vegetation. Then each time I place a veggie I will CTRL+click+drag to scale the object. You may also use the Size and SizeVar settings if you want vegetation to be placed at random sizes.

    That is all for now. :-)


    System Used:
    Athlon XP 2600+
    512MB PC2700
    ATI Radeon 9700 Pro

    [This message was edited by AcidOsmosis on Sun April 18 2004 at 11:10 PM.]

    [This message was edited by AcidOsmosis on Mon April 19 2004 at 11:14 AM.]
    Reply With Quote Reply With Quote

  2. #2
    DOES ALPHABLENDING POSE A THREAT TO PERFORMANCE?

    Not necessarily. I've had alphablending turned on, with 10+ different types of vegetation, with a total of about 40,000 vegetation objects present on the terrain and still no noticeable drop in performance.

    It's all going to depend on your system, but I honestly do not believe that AlphaBlending is capable of as large of a performance drop as everyone thinks. Actually I would bet on it.

    Plus, you have the option of leaving sprites on and determing at what distance the vegetation becomes a sprite. Sandbox gives you lots of freedom about how you want vegetation to render, and at what distance it does it.



    IS ALPHABLENDING NEEDED AND DOES IT ACTUALLY MAKE VEGETATION LOOK BETTER?

    Is Alphablending "needed"? There is no true answer to that question. That is up for you to decide because it is your map and your the creator. You decide what is needed.

    Does Alphablending make your vegetation look better? There is a LARGE misconception about this matter and I have to say that those of you that say AlphaBlending should not be used, have not seen what AlphaBlending can and can not do.

    I personally have performed several test's with AlphaBlending and documented those tests with screenshots. Although I can not post the screenshots because I do not have webspace to do so (unless someone wants to offer space for these small images), I can give you proof that AlphaBlending in many cases is required for "good looking" vegetation and in some cases it just comes down to preference.



    VEGETATION

    After a lot of experience with using Sandbox I have a "preferred" way that I do things. Since we are on the subject of alphablending I am going to explain some of my technique for how I set vegetation.

    When I get to the stage of mapping where I want to place vegetation and begin placing vegetation objects I place the first object of that type (shift+click) on the terrain, zoom in closely so that the entire object is fitted to the perspective window and start to set the properties for that object.

    The first thing that I normally do is set Bending for 1. This is a setting you will have to experiment. Usually a good setting is somewhere in between .3 and 1.0. A setting of 1.0 is usually a very realistic "bending in the wind" effect for your trees, palms, and grass.

    If this is a large object such as a tree I will usually side Hideable to True so that AI can hide behind this object.

    Brightness, I won't touch until I Generate Surface Textures. Normally after Generating Surface Textures those veggies which start out too bright will get darker.

    I've also been experimenting with CastShadows + RealTimeShadows. With 1000's of vegetation objects (mostly the trees, and bushes) set to CastShadows+RealTimeShadows (which are shadows that move in real time with your vegetation) there was also no significant performance drop. None at all that I could determine.
    You will have to experiment on your own, but I like to set CastShadow for True and RealTimeShadow for True.

    Next, I will switch AlphaBlending to TRUE and FALSE several times making a comparison from a few different distances. Whether AlphaBlending looks better always depends on the SPECIFIC vegetation object your using it on. Some look better with it and others look better without it. There are a few that you won't be able to tell a difference at all so it is better to just leave it set for False on those objects, so that your not using up those "precious resources" everyone talks about.

    SpriteDistRation, ShadowDistRatio and MaxViewDistRatio are settings you will have to experiment with depending on what the rest of your settings are, your map, etc. If your using AlphaBlending, CastShadow and RealTimeShadows, then you obviously want to pick these settings wisely so that your vegetation isn't becoming a sprite at a very far distance. You want your object to become a sprite at a distance where you won't notice a difference of whether it is a sprite or not (usually 1 is fine, or even .7) for SpriteDistRatio. Your vegetation should become a sprite at the lowest possible distance without losing overall visual appeal. MaxViewDistRatio's setting for Trees needs to be set for a larger setting than that of grass. Obviously trees are large and realistically you would be able to see a tree for a MUCH longer distance than a few blades of grass.

    UseSprites: Set this for Yes. If you don't like those ugly boxes that appear with sprites set on then you can click Tools, Reload Terrain. You don't have to Generate Surface Textures to get rid of these boxes. Reload Terrain will suffice and it is much quicker. You could also set SpriteDistRatio to a larger number, but it's not very logical to do so just because you dont want to see those boxes. They will go away once you Reload Terrain, Generate Surface Textures, etc and you won't see them in the game.

    After getting the settings how I want them I begin setting objects down one by one (shift+click). I do this one by one, because usually I don't like to use distribute vegetation. Then each time I place a veggie I will CTRL+click+drag to scale the object. You may also use the Size and SizeVar settings if you want vegetation to be placed at random sizes.

    That is all for now. :-)


    System Used:
    Athlon XP 2600+
    512MB PC2700
    ATI Radeon 9700 Pro

    [This message was edited by AcidOsmosis on Sun April 18 2004 at 11:10 PM.]

    [This message was edited by AcidOsmosis on Mon April 19 2004 at 11:14 AM.]
    Reply With Quote Reply With Quote

  3. #3
    Great thread, you should post it here aswell:

    http://www.erronsplace.com/farcry/

    Reply With Quote Reply With Quote

  4. #4
    how do you scale the veggies once they are placed? also how can i otherwise rotate etc them, all i can do is move them around using the non painintg veg tool.
    Reply With Quote Reply With Quote

  5. #5
    To scale you use ALT+click&drag. I don't believe there is a way to rotate vegetation using the vegetation painter.

    Actually, excuse me, I meant ALT+click+drag. Typo, sorry to anyone that read that and got confused. :-)

    [This message was edited by AcidOsmosis on Mon April 19 2004 at 10:38 AM.]
    Reply With Quote Reply With Quote

  6. #6
    unfortunately, no, theres no rotation on painted veggies. Maybe if we all say "pretty please", they'll implement it in the future.

    would be nice, since we alrady have movement & scale abilities.

    ria.enigma
    Legion Of The Dragon
    Site Administrator

    MappingCentral.com - Coming Soon!
    ria.enigma
    (Fargo)
    -=The Old School FarCry Mapper=-
    Reply With Quote Reply With Quote

  7. #7
    Very nice guide!

    *Beach - 20% Finnished*
    Reply With Quote Reply With Quote

  8. #8
    Thank's to AE-on for the webhosting for these images! Here are the screenshots which were taken:


    http://www.planetquake.com/aeons/tmp...sis_proof1.jpg

    http://www.planetquake.com/aeons/tmp...sis_proof2.jpg

    http://www.planetquake.com/aeons/tmp...sis_proof3.jpg

    http://www.planetquake.com/aeons/tmp...sis_proof4.jpg

    http://www.planetquake.com/aeons/tmp...sis_proof5.jpg


    The following types of vegetation were tested with AlphaBlend set to True AND False and compared.

    old_forest_tree_a3: This object was determined to be "jaggy" around the edges and when compared, AlphaBlend was a very large improvement in visual quality for this object.
    BEST SET FOR - ALPHABLEND: TRUE.

    oldforest_tree_a1: This is one object which I determined to look better with AlphaBlend set to False. When looking at this object from all directions you are able to see the trunk of the tree all the way to the top as though there are no branches or leaves on the side that you are viewing from. Turning AlphaBlend to False fixed this issue.
    BEST SET FOR - ALPHABLEND: FALSE.

    cst_coconut_palm_curved_north: This object was a no contest due to the jagged edges around the leaves of this object. Looks significantly better with AlphaBlend on.
    BEST SET FOR - ALPHABLEND : TRUE

    cst_grass_spinifex: This object was very jagged without using AlphaBlend. This is one object where you can not live without AlphaBlend if you want your vegetation to be realistic and beautiful.
    BEST SET FOR - ALPHABLEND: TRUE

    lgp_basicfern_a: There was almost no change when setting alphablend to true or false with this object. If you load this object into Sandbox and click AlphaBlend several times you will be able to easily see there is a slight change but nothing which is noticeable. I determined that this object is best left set to False. BEST SET FOR - ALPHABLEND: FALSE

    As far as trees, bushes and palms it usually depends more on the specific veggie used. Grass almost always requires that AlphaBlend be set to True, or otherwise it is very "ugly" and unrealistic.

    Again, I tested a large map, with a heightmap as high as 160, with vegetation spread out across the entire map and all vegetation set for AlphaBlend: T, and there was no noticeable drop in performance for me. As I said this may depend on your system, but Alpha Blending does not pose the large threat that everyone believes.

    [This message was edited by AcidOsmosis on Mon April 19 2004 at 01:24 PM.]
    Reply With Quote Reply With Quote

  9. #9
    What settings do you need to be able to see the bending of trees? Will it work with a GeForce 2 GTS?

    *Beach - 20% Finnished*
    Reply With Quote Reply With Quote

  10. #10
    <BLOCKQUOTE class="ip-ubbcode-quote"><font size="-1">quote:</font><HR>Originally posted by KonradA:
    What settings do you need to be able to see the bending of trees? Will it work with a GeForce 2 GTS?<HR></BLOCKQUOTE>

    I can't think of a reason why it wouldn't. The bending is just animation, and not a shader or something like that which your video card may not be compatible with.

    As with alphablending, Bending will require more performance power from your PC. You should give it a try and see if you are able to notice a difference. With a Geforce2 your pretty limited to GPU performance, but I don't think bending would be a very large hit on your performance. Give it a try and see what happens :-).
    Reply With Quote Reply With Quote

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •