开发者

3D Graphics Batching

开发者 https://www.devze.com 2023-01-24 06:27 出处:网络
A lot of sites/articles say \'batch! batch! batch!\'. Can someone explain what \'开发者_运维技巧batching\' represents with respect to shaders?

A lot of sites/articles say 'batch! batch! batch!'. Can someone explain what '开发者_运维技巧batching' represents with respect to shaders?

Namely, does

  1. changing textures
  2. changing arbitrary shader variables

mean something can't be 'batched'?


The easiest way to summarize it is to try to make as few API calls as you can to draw what you need to draw. Using vertex arrays or VBOs (not even optional in modern APIs), texture atlases and avoiding the need for state changes all contribute to that. It's really amazing how many triangles a modern GPU can draw in the time it takes you to turn around and set up the next drawing call.


There is some good info around and about. From Tom Forsyth:

http://home.comcast.net/~tom_forsyth/blog.wiki.html#%5B%5BRenderstate%20change%20costs%5D%5D

Shawn Hargreaves (On Sprite batching):

  1. Link
  2. http://blogs.msdn.com/b/shawnhar/archive/2006/12/14/spritebatch-sorting-part-2.aspxv
  3. Link

Christer Ericson:

http://realtimecollisiondetection.net/blog/?p=86

0

精彩评论

暂无评论...
验证码 换一张
取 消