简单地说,摊子铺得太大,又要赶时间,人手还不够。相比程序员,测试团队的责任更多。
有人提到 Scott Forstall 的离开,他主要负责 iOS 项目,与 Mac OS X 关系不大。
Mac 软件部门其实从2011年 Bertrand Serlet 离开后就有些问题,不过主要还是人手不够的同时系统二变四( macOS / iOS / tvOS / watchOS)还要每年更新导致。苹果的团队出了名的一人多能人员精简,WebKit 团队十几年来专项负责就三四人,iOS 与 macOS 团队近几年经常被报道为按时发布新版系统互相借调人手。十几年前苹果就一个 Mac OS X,还不一定保证年年更新,直到与 iOS 5同期的 Mac OS X 10.7 Lion, 距前一版发布隔了差不多两年。
Eddy Cue 主要是与 iTunes Store / Apple Music / Apple TV 涉及的媒体内容提供商沟通,软件层面管得不多。iTunes 是典型的历史包袱太重承载的功能又太多导致不敢轻易下狠手,Finder ?这个真洗不了,就是不好用。
微软拥有业内如此庞大和专业的研发维护团队和(曾经的) Dogfood / Selfhost 测试传统都无法保证万无一失,苹果出现问题并不奇怪。当然微软那边 Azure 部门出身的 Satya Nadella 撤销了专门的测试团队将其合并到开发组对软件质量的影响也众说纷纭。
正常。苹果是一家设计师主导的公司了。boss是搞采购的,二当家的是搞设计的。真正的程序员工程师地位不高。没啥话语权。
从简单的说,“渲染多内容”的优化主要方法是剔除(culling)和细致程度(level of detail, LOD)。
不在视角范围的物体可剔除、被其他物体遮挡的物体可剔除、占据屏幕面积太小的物体可(有损地)剔除。
LOD 则是(有损地)缩减较远距离的物体表示方式,除了减面,可用较简单的 shader,也可换成 billboard/imposter 等。
还有一些要改变渲染器的架构。详情请看RTR3 和 GEA。