POPPUR爱换

标题: GDC 2008 主要讲座 [打印本页]

作者: Edison    时间: 2007-12-20 00:46
标题: GDC 2008 主要讲座
https://www.cmpevents.com/GD08/A.asp?option=C&V=1&AdS=0&Kword=&SPids=0&DLnts=0&scTKs=0&scFMTs=0&scLVs=0&GetDaysC=0&scTKs1=0&scFMTs1=0&GetDaysC1=0&Ssp=&SB=4a

Voice of an Angel: Next-Gen Audio Processing and Effects for SINGSTAR on PS3

Using Wavelets on the Xbox360 for Current and Future Games

The CRYSIS of Audio

Starting with SPUs. Exploiting the Power of the Cell Sponsored by Sony

Procedural Data Generation in FAR CRY 2

One Man Army: The Characters of CRYSIS

Next-Gen Tile-Based GPUs

Lightmap Compression in HALO 3

Lighting and Material of HALO 3

Insomniac's SPU Programming Practices

From DOOM to RAGE: Pushing Boundaries

FABLE 2 ?The Big Three Features Revealed

CRYSIS Next-Gen Effects

CRYSIS in the Making

Core Techniques and Algorithms in Shader Programming

Advanced Visual Effects with Direct3D

'Do, Don't Show' ? Narrative Design in FARCRY 2
作者: yyloveyou    时间: 2008-2-14 01:54
老大给粗略翻译一下讲课内容啊
作者: ayanamei    时间: 2008-2-14 02:32
=.= 如果需要翻译 看这个也没有意义吧
作者: lcd21    时间: 2008-2-14 09:50
CRYSIS 有两个讲座哪,看来热点就是热点。
作者: codxk    时间: 2008-2-14 22:52
PS3和XBOX360的也不少啊
作者: 蚂蚁搬家    时间: 2008-2-15 17:37
没有中文的么???
作者: iiiiuuuu    时间: 2008-2-16 01:23
期待完整版的PDF
作者: Edison    时间: 2008-3-1 13:15
AMD 文档下载:

GDC 2008






NVIDIA文档下载:

GDC 2008











作者: Edison    时间: 2008-3-2 11:50




















































































简单地提取一些要点:


GS not designed for large-expansion algorithms like tessellation
   Due to required ordering and serial execution
   See Andrei Tatarinov’s talk on Instanced Tessellation

Remember you don’t need to use a GS if you are just processing vertices

Be aware of appropriate ALU to TEX hardware
instruction ratios:
4 5D-vector ALU per TEX on AMD [AMD承认是5D Vector,不再像press release的时候说是scalar了]
10 scalar ALU per TEX on NVIDIA GeForce 8 series

Check for excessive register usage
    > 10 vector registers is high on GeForce 8 series [GF8存在大约10个顶点寄存器的时候,shader性能会受到影响的现象]
    Simplify shader, disable loop unrolling
   DX compiler behavior may unroll loops so check output



AMD: Clears
   Always clear Z buffer to enable HiZ
   Clearing of color render targets is not free on
Radeon HD 2000 and 3000 series
  Cost is proportional to number of pixels to clear
  The less pixels to clear the better!
Here the rule about minimum work applies:
  Only clear render targets that need to be cleared!
  Exception for MSAA RTs: need clearing every frame
RT clears are not required for optimal multi-GPU usage

AMD: Depth Buffer Formats
Avoid DXGI_FORMAT_D24_UNORM_S8_UINT for
  depth shadow maps
  Reading back a 24-bit format is a slow path
  Usually no need for stencil in shadow maps anyway
Recommended depth shadow map formats:
  DXGI_FORMAT_D16_UNORM
    Fastestshadow map format
    Precision is enough in most situations
    Just need to set your projection matrix optimally
DXGI_FORMAT_D32_FLOAT
  High-precision but slower than the 16-bit format




NVIDIA: Clears
Always Clear Z buffer to enable ZCULL
Always prefer Clears vs. fullscreen quad draw calls
Avoid partial Clears
  Note there are no scissored Clears in DX10,they are only possible via draw calls
Use Clear at the beginning of a frame on any rendertarget or depthstencil buffer
  In SLI mode driver uses Clears as hint that no inter-frame dependency exist. It can then avoid synchronization and transfer between GPUs

NVIDIA: Attribute Boundedness
Interleave data when possible into a less VB streams:
    at least 8 scalars per stream
Use Load() from Buffer or Texture instead
Dynamic VBs/IBs might be on system memory accessed over PCIe:
    maybe CopyResource to USAGE_DEFAULT before using (especially if used multiple times in several passes)
Passing too many attributes from VS to PS may also be a bottleneck
    packing and Load() also apply in this case

NVIDIA: Depth Buffer Formats
Use DXGI_FORMAT_D24_UNORM_S8_UINT
DXGI_FORMAT_D32_FLOAT should offer very similar performance, but may have lower ZCULL efficiency
Avoid DXGI_FORMAT_D16_UNORM
  will not save memory or increase performance
CSAA will increase memory footprint

NVIDIA: ZCULL Considerations
Coarse Z culling is transparent, but it may underperform if:
  If depth test changes direction while writing depth (== no Z culling!)
  Depth buffer was written using different depth test direction than the one used for testing (testing is less efficient)
  If stencil writes are enabled while testing (it avoids stencil clear, but may kill performance)
  If DepthStencilView has Texture2D[MS]Array dimension (on GeForce 8 series)
  Using MSAA (less efficient)
  Allocating too many large depth buffers (it’s harder for the driver to manage)

:charles:
作者: Edison    时间: 2008-3-2 12:22
NVIDIA的Tessllation:p




















欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4