游戏工厂 第23章 难题(2/2)
r> 在程序里面,只要牵扯到动态问题,无疑都会让程序员头痛不已。
程序内部,各条指令环环相扣,动态函数不计其数,越多的使用动态函数无疑会加大cPu的运算负担。
假如独角兽的正面为1,那么为1的部分进入gPu进行运算。背面则为0,不进行计算。
当独角模型转动的时候,正面转到了背面,那么要如何让计算机来判定呢?
温斯顿的做法是调用模型的旋转坐标函数,根据坐标的变化,来判断模型的朝向,以此来判定那个部位应该进入gPu进行计算。
那么独角兽变形的时候呢?独角兽作出各种战斗动作的时候呢?
这个时候就需要调动更多的坐标,方向函数,乃至于缩放函数。
如此一来,cPu的运算负荷极具增加。
凌晨3点,温斯顿完成了动态遮盖技术,文羽在测试了效果以后,也是无奈的摇了摇头。
在进入最后阶段,FPs只能维持在23-26帧左右,虽然有了很大的提升,可依然无法满足30帧的最低要求。画面一旦低于30帧,给玩家造成的伤害可是致命的。
文羽抓着头皮,在地下室反复的踱步,时间不停的在流逝。这时外面响起了鸡鸣声。
文羽打开ue4引擎后台,开始查看硬件工作数据信息。一大串的数据像是刷屏一般的快速掠过屏幕。
按了下暂停,文羽拿出眼药水滴了几滴,眨巴了眼见,然后重新按下开始,继续快速查看。
文羽知道目前“动态遮盖”其实已经完成,他确实可以减少当前场景40-45%gPu占用率,而且程序起到了该有的作用,将一开始的15帧提升到了几乎25帧。
其实问题出在“动态遮盖”程序自己的身上,由于大量的调用各种动态函数,因此这个程序在运行的时候,降低了gPu的负载,却增加了cPu的负担,因此这个卡顿是来自cPu的。
请下载app访问,点击下载app
程序内部,各条指令环环相扣,动态函数不计其数,越多的使用动态函数无疑会加大cPu的运算负担。
假如独角兽的正面为1,那么为1的部分进入gPu进行运算。背面则为0,不进行计算。
当独角模型转动的时候,正面转到了背面,那么要如何让计算机来判定呢?
温斯顿的做法是调用模型的旋转坐标函数,根据坐标的变化,来判断模型的朝向,以此来判定那个部位应该进入gPu进行计算。
那么独角兽变形的时候呢?独角兽作出各种战斗动作的时候呢?
这个时候就需要调动更多的坐标,方向函数,乃至于缩放函数。
如此一来,cPu的运算负荷极具增加。
凌晨3点,温斯顿完成了动态遮盖技术,文羽在测试了效果以后,也是无奈的摇了摇头。
在进入最后阶段,FPs只能维持在23-26帧左右,虽然有了很大的提升,可依然无法满足30帧的最低要求。画面一旦低于30帧,给玩家造成的伤害可是致命的。
文羽抓着头皮,在地下室反复的踱步,时间不停的在流逝。这时外面响起了鸡鸣声。
文羽打开ue4引擎后台,开始查看硬件工作数据信息。一大串的数据像是刷屏一般的快速掠过屏幕。
按了下暂停,文羽拿出眼药水滴了几滴,眨巴了眼见,然后重新按下开始,继续快速查看。
文羽知道目前“动态遮盖”其实已经完成,他确实可以减少当前场景40-45%gPu占用率,而且程序起到了该有的作用,将一开始的15帧提升到了几乎25帧。
其实问题出在“动态遮盖”程序自己的身上,由于大量的调用各种动态函数,因此这个程序在运行的时候,降低了gPu的负载,却增加了cPu的负担,因此这个卡顿是来自cPu的。
请下载app访问,点击下载app
转码声明:以上内容基于搜索引擎转码技术对网站内容进行转码阅读,仅作介绍宣传,请您支持正版
来源:88dushu