http://publications.dice.se/attachments/Introduction_to_Data-Oriented_Design.pdf
相关内容也提了挺长时间了。
data oriented相对应的就是object oriented,object oriented比较适合去表达逻辑对象,data oriented更加关注性能。
游戏engine端对性能的追求是无止境的。
基本来说就是计算能力提升的很快,尤其是在多核方向发展之后,但是在带宽上(硬盘,内存)上提升的比较慢。
现在来说,瓶颈最常见的是发生在带宽上。
所以在设计engine的时候需要从硬件的memory hierarchy出发,而非逻辑。
像把内存集中放置,集中遍历这些也很常见了。
数据导向设计与性能优化
本文探讨了数据导向设计(data-oriented design)与面向对象设计(object-oriented design)的区别,特别是在游戏引擎开发中对于性能优化的重要性。文章指出,在计算能力快速发展的同时,带宽(如硬盘和内存)的提升较慢,因此在设计游戏引擎时需要重点关注内存布局和访问模式来提高效率。
5956

被折叠的 条评论
为什么被折叠?



