楼主:
chchwy (mat)
2011-11-29 20:34:51※ 引述《QQ29 (我爱阿蓉)》之铭言:
: 请教各位
: http://www.cnblogs.com/kid-li/archive/2006/10/17/531113.html
: 我搞不太清楚 flyweight这个pattern的use case...
: 虽说举例说明
: 一个游戏可能有大量车子或是树木在场景
: 可用同一个物件代表 重复的东西
: 但我想问的是
: 我用同一个物件
: 但是物件的位置又不一样
: 用同一个物件不是没办法render再不同位置吗?
: 有没有更好的例子来说明这个pattern的用途
: 谢谢
事实上游戏正是最好的例子
游戏里面最常做的事情
就是把一个小兵模型render几百次变成大军
每个小兵位置的不同,
只要把原始模型乘上一个4x4的位移矩阵就可以解决
但是一个最粗糙的模型也有数千个面,不要说还有贴图等等
所以
1. 储存一个小兵模型 + 几百个位移矩阵
2. 储存几百个小兵模型
哪个开销比较低呢? 不言而喻