论坛风格切换切换到宽版
  • 3531阅读
  • 3回复

喵,关于DX中DrawCall和修改顶点缓冲性能的问题。。 [复制链接]

上一主题 下一主题
离线wdnm
 
发帖
232
樱饼
0
博丽神社的喝茶券(威望)
0
春度
23
交易币
0
只看楼主 倒序阅读 楼主  发表于: 2013-09-09
比如我要渲染1000个位置经常变动的带贴图的矩形 (Bullet)  图贴都是同一个
在屏幕不同的位置,
那么是设置1000次世界矩阵 然后调用1000次DrawPrimitives来单独渲染出每个矩形速度比较快呢
还是直接在在顶点缓冲里面定义1000个矩形 存放在内存中,然后通过Lock来修改每个矩形的位置 最后调用一次DrawPrimitives来比较快呢?
如果是10000个10W个矩形呢。。。感觉应该是修改顶点比较快吧。然后Lock还要提交到显存。。
。。
另外如果Lock的话就没办法进行单个矩形的旋转和缩放之类的操作了。。
东方好玩!
离线同意注册
发帖
1271
樱饼
0
博丽神社的喝茶券(威望)
0
春度
8
交易币
0
只看该作者 1楼 发表于: 2013-09-10
没试过,不过你写一下就知道了?在测试函数开头记个时间,结尾记个时间,中间循环10000000000000......次,测一下就知道了
至少AS3写算法效率比较我就这么写.....
离线wdnm
发帖
232
樱饼
0
博丽神社的喝茶券(威望)
0
春度
23
交易币
0
只看该作者 2楼 发表于: 2013-09-11
想不到小镇还有活人,握手。。
最近看到有个文章说DX要尽量减少DrawCALL的调用和频繁的改变渲染状态来提高效率。。所以想到了这么个问题。。。

东方好玩!
离线同意注册
发帖
1271
樱饼
0
博丽神社的喝茶券(威望)
0
春度
8
交易币
0
只看该作者 3楼 发表于: 2013-09-11
哦,鉴于小镇和那啥都没人,建议有问题可以试试openGPU,每天登录有分拿,潜水登录就完了..然后收收资源...电子书不少
http://www.opengpu.org/forum.php
快速回复
限100 字节
 
上一个 下一个