10

zSpace工程导出场景闪烁问题解决方案

 3 years ago
source link: https://gameinstitute.qq.com/community/detail/133470
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

zSpace工程导出场景闪烁问题解决方案

发表于2020-07-22
评论0 1.6k浏览

想免费获取内部独家PPT资料库?观看行业大牛直播?点击加入腾讯游戏学院游戏程序行业精英群

711501594

1.导出包后出现的问题

pv9xnU8NEEbOh3JuxDUZ.jpg

2.zSpace设备的硬件配置

电脑型号    zSpace W1847 笔记本电脑  (扫描时间:2020年06月29日)
操作系统    Windows 10 专业版 64位 ( Version 1809 / DirectX 12 )
处理器    AMD A9-9420 RADEON R5, 5 COMPUTE CORES 2C+3G 双核
主板    zSpace DSW50 ( AMD PCI 标准主机 CPU 桥 )
内存    8 GB ( 三星 DDR4 2666MHz )
主硬盘    三星 MZNLN256HAJQ-00000 ( 256 GB / 固态硬盘 )
显卡    AMD Radeon R2 Graphics ( 512 MB ) 
显示器    奇美 CMN15F4 ( 15.5 英寸  )
声卡    瑞昱  @ AMD High Definition Audio 控制器
网卡    Atheros Qualcomm Atheros QCA61x4A Wireless Network Adapter / 富士康
(显示器刷新率为120HZ)

3."撕裂"情况发生的可能原因

① 显示设备上的图像更新并不是连续的,而是类似Unity的帧一样定期更新。然而,Unity的更新不一定与显示设备的更新同步,所以有可能Unity提交了新的一帧图像,而显示设备仍显示前一帧图像。这会导致发生变化的屏幕位置出现"撕裂"的现象。可以让Unity在显示设备不更新的时候提交新的帧图像,这个时间段称为"垂直空白"。 质量设置的垂直同步选项可以同步帧切换和设备的垂直空白,或者是其他所有设备的垂直空白。后者可用于游戏需要更新多个设备以完成一帧的渲染的情况。
测试结果:单纯使用这个方法试过是不可行的,场景照样出现"撕裂"的情况。
② 我怀疑是包运行是我选择的渲染质量太高导致机子跟不上,我试着把质量选择最低,结果场景照样还是会出现"撕裂"的情况。
③ 这样只能怀疑下项目的业务代码是否有做特别的设置了,果不其然有一段代码如下:

C1IQXLkeaUygTBTVfMlC.png

在场景加载完成后代码层会对场景渲染质量在进行设置。

4.最终处理方案

屏蔽掉对场景渲染质量动态设置的代码,启动设置选择相对较低的渲染质量就可以顺利运行了。

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK