timeslicing算是我进入业界一开始接触到的技巧之一吧
非常实用且几乎每天都会摸到
简单来说就是有必须反复执行的轻量批次逻辑
不用每个frame全部执行,可以分多个frame执行,分担负担
像是100个NPC不用每个frame都全部执行,每frame处理20个可省下80%决策运算时间
反映NPC决策的动画层,因为与决策层中间透过接口沟通
这种几个frame决策延迟并不会被玩家注意到
(除非你在做无法容忍延迟的格斗游戏,那你是要100个NPC干嘛啦XD)
时域切割 同步/异步 的 资料读取输入/储存输出,又有四种排列组合
本文有精美动画供参考 :)
那就废话不多说了(好像已经讲了一堆)
连结在此 http://wp.me/p4mzke-14V
动画生成原始码在此 https://github.com/TheAllenChou/timeslicing
这是游戏程式系列文的一部分 http://allenchou.net/game-programming-series/
请多指教 :)
这个技巧应该一堆人不晓得 不然国产游戏效能不会悲剧这么长一段时间 XDDD这个技巧可以算是执行绪的延伸概念
作者:
laikyo (六元)
2017-03-23 17:17:00有用推
作者:
LayerZ (無法如願)
2017-03-23 17:24:00没到效能瓶颈应该都不会去试这个吧XD,而且瓶颈与其在计算
作者:
zseineo (Zany)
2017-03-23 17:24:00推
到处都是效能瓶颈阿 说真的我觉得国产游戏真的只会硬干所有功能 看看那精美的仙剑六
作者: eugenelinrmx 2017-03-23 21:44:00
好文推!
作者:
LayerZ (無法如願)
2017-03-23 22:17:00了解,一开始架构就做好了
作者:
riveranb (River)
2017-03-24 06:18:00推!
作者: Frostx (Naga) 2017-03-24 09:48:00
实用推,感谢CJ花时间分享!
作者: RadiationXen (Xen) 2017-03-24 10:48:00
实用推
作者:
windkey (揪噜噜)
2017-03-26 00:06:00感谢分享~
作者:
MADAOTW (MADAO)
2017-03-26 18:00:00感恩
作者:
sakyer (石理克)
2017-03-27 14:19:00感谢分享
10几20fps的 Lichdom Battlemage 太性感,难得遇到平均帧率低成这样的现代家机游戏 之前特价直接买来当宝XD
AI决策跟网络同步很常用这个技术 不要太看轻国产游戏XD