面向对象vs面向数据

本文探讨了面向对象编程与面向数据编程在性能优化方面的差异,强调了数据结构内存对齐、SIMD技术、Cache友好性的重要性。同时,提到了SOA与AOS在性能上的优势,以及class与struct的性能考量。并讨论了并行化计算的必要性,包括模块划分和任务划分,以及如何通过减少内存占用和优化带宽来提升性能。
摘要由CSDN通过智能技术生成
最近看了 OGRE2.0的一个PPT , 触动挺大的
其实OGRE一直以来所为人诟病的性能问题, 何偿不也是我们引擎存在的问题
虽然很多时候我们都拿OGRE和GameBryo的效率当反面教材, 但是自己也没有做到极致
相对于GPU的性能优化来说, CPU的性能优化难得多
就好比游戏开发的书籍, 讲API/渲染的多, 讲架构&逻辑的少
可能很多人以为, 做引擎开发就是做图形开发, 对于国内的游戏来说好像没错
但是如果真正做下来, 资源管理, 场景管理, 动画, 物理, AI, UI, 音效, 脚本, 甚至技能系统等都是非常有深度的
这也就是导致了, 很多自研引擎能够把GPU的性能优化得很好, 玩起来却仍然不流畅
究其原因, 大多数是对数据的处理存在瓶颈

最早让人觉得"毁三观"的是 Battlefield3的一个PPT, 打破了传统基于树/图的场景管理模式
15000+的物体, 并行Bruce fo
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值