jbirney
07-22-04, 10:37 AM
I thought to add this info into the current thread: http://www.nvnews.net/vbulletin/showthread.php?t=32634&page=1
But that thread was created for SM3.0 so I was not sure if I should post this info there even though it could be relevent. Anyways looks like the ATI users did not get forgotten about on this patch. A B3D user was able to take the PS3.0 shaders and covert them to PS2.0 code and run it on his FX card (with some minimal gains). He stated that you could combine the lighting down to one pass and do other prefromance saving tweaks that were done in PS3.0 in existing PS2.0 code. He was sort of upset that Crytex did not even try to get the most out of PS2.0 and instead jumped to PS3.0 Looks like Crytex figured this out as there is a new SM2.0b path in the 1.2 patch/
Found this from another user at B3D:
just read the 2 readme file in farcry/support, and yes they mention geometry instancing in sm20b one.
from ShaderModel20Beta.rtf :
What features do you use from SM 2.0b in order to increase your rendering performance and what are the average benefits in percentage over SM 2.0?
Actually we use 2 main features with SM 2.0b:
1. Pixel/Vertex shaders 2.0b used mostly in indoor scenes (where we use per-pixel lighting heavily) which allow us to draw several light sources in a single pass.
2. Geometry instancing is used mostly in outdoor scenes for vegetation. We split all vegetation to groups and draw them using a optimized code path in a single draw-call.
So in the SM 2.0b path performance in both indoor and outdoor scenes is improved. With geometry instancing we have a performance increase of up to 30%, with SM 2.0b lighting - up to 40%.
The most significant part of SM 2.0b is that it allows us to increase the lighting and geometry complexity without big performance decreases. In the current generation engine (FarCry: CryENGINE) we optimized our indoor and outdoor scenes taking into account current available hardware (SM 2.0 compliant). As a result the number of dynamic light sources in indoor scenes are limited (depends on scene). In outdoor we use aggressive LOD factors (switching from 3D-models to sprites in the near distance) to reduce the number of calls. But with SM 2.0b it’s easily possible to increase the number of dynamic lights and using more dense forest without big impact to performance.
Seems like using the above path, ATI Users should get some gains from this as show today by XBIT:
http://www.ixbt.com/video2/fc12-2.shtml
And maybe even 3Dc already in 1.2 as this the output of one B3D user that has a X800 card:
Use Hardware Shaders for ATI R420 GPU
Pixel shaders usage: PS.2.B, PS.2.0 and PS.1.1
...
HDR Rendering: MRT
MRT Rendering: Disabled
...
Using '3Dc' pixel texture format
I did not make this thread to start a pissing contest or to cause flames. Just to point out some things that will give ATI user a speed boost. Its nice to see a developer working with BOTH IHVs.
But that thread was created for SM3.0 so I was not sure if I should post this info there even though it could be relevent. Anyways looks like the ATI users did not get forgotten about on this patch. A B3D user was able to take the PS3.0 shaders and covert them to PS2.0 code and run it on his FX card (with some minimal gains). He stated that you could combine the lighting down to one pass and do other prefromance saving tweaks that were done in PS3.0 in existing PS2.0 code. He was sort of upset that Crytex did not even try to get the most out of PS2.0 and instead jumped to PS3.0 Looks like Crytex figured this out as there is a new SM2.0b path in the 1.2 patch/
Found this from another user at B3D:
just read the 2 readme file in farcry/support, and yes they mention geometry instancing in sm20b one.
from ShaderModel20Beta.rtf :
What features do you use from SM 2.0b in order to increase your rendering performance and what are the average benefits in percentage over SM 2.0?
Actually we use 2 main features with SM 2.0b:
1. Pixel/Vertex shaders 2.0b used mostly in indoor scenes (where we use per-pixel lighting heavily) which allow us to draw several light sources in a single pass.
2. Geometry instancing is used mostly in outdoor scenes for vegetation. We split all vegetation to groups and draw them using a optimized code path in a single draw-call.
So in the SM 2.0b path performance in both indoor and outdoor scenes is improved. With geometry instancing we have a performance increase of up to 30%, with SM 2.0b lighting - up to 40%.
The most significant part of SM 2.0b is that it allows us to increase the lighting and geometry complexity without big performance decreases. In the current generation engine (FarCry: CryENGINE) we optimized our indoor and outdoor scenes taking into account current available hardware (SM 2.0 compliant). As a result the number of dynamic light sources in indoor scenes are limited (depends on scene). In outdoor we use aggressive LOD factors (switching from 3D-models to sprites in the near distance) to reduce the number of calls. But with SM 2.0b it’s easily possible to increase the number of dynamic lights and using more dense forest without big impact to performance.
Seems like using the above path, ATI Users should get some gains from this as show today by XBIT:
http://www.ixbt.com/video2/fc12-2.shtml
And maybe even 3Dc already in 1.2 as this the output of one B3D user that has a X800 card:
Use Hardware Shaders for ATI R420 GPU
Pixel shaders usage: PS.2.B, PS.2.0 and PS.1.1
...
HDR Rendering: MRT
MRT Rendering: Disabled
...
Using '3Dc' pixel texture format
I did not make this thread to start a pissing contest or to cause flames. Just to point out some things that will give ATI user a speed boost. Its nice to see a developer working with BOTH IHVs.