• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

海外设备上偶现的报错处理方式

android 搞代码 4年前 (2022-03-01) 17次浏览 已收录 0个评论
文章目录[隐藏]

1)海内设施上偶现的报错解决形式
​2)Shader冗余则ShaderLab占用大小问题
3)URP Renderer Feature实现二次元描边,Cutout的解决问题
4)Unity中视频播放的解决方案

这是第286篇UWA技术常识分享的推送。明天咱们持续为大家精选了若干和开发、优化相干的问题,倡议浏览工夫10分钟,认真读完必有播种。

UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)

Android

Q:近期我的项目在海内设施上偶现图片中的报错:

A:这个问题曾经确认为Unity的bug,因为最近Google Play强制推广AAB打包,所以大概率会碰到;个别测试的时候都是用APK,很容易脱漏这个最初的步骤校验。更新Unity至相应版本后即可修复:

可参考:
https://issuetracker.unity3d….

感激han@UWA问答社区提供了答复

Shader

Q:Shader冗余则ShaderLab占用也会变大吗?

A:在真机上进行试验,查看Shader冗余时ShaderLab的内存变动。
以下是Shader中有20份Standard时:

以下是Shader中只有1份Standard时:

因为Profiler中无奈看到ShaderLab的具体内容,所以谨严地来说,Shader冗余的确会造成ShaderLab内存升高。

感激Faust@UWA问答社区提供了答复

Rendering

Q:之前咱们的卡通渲染是在Shader里写多个Pass来绘制的描边,最近尝试用SRP Batcher优化时发现,SRP Batcher不反对多个Pass的Shader。于是我尝试用URP Renderer Feature来渲染所有角色的描边。

实现起来很简略,但有一个问题解决不了,就是Cutout的问题。

裙子的下边缘是用贴图的Alpha管制的,并不是真正的顶点。以前的Pass写在角色渲染的Shader里,能够用贴图来管制,但用Renderer Feature来解决后,所有角色模型的描边是用的同一个材质,不能再用模型各自的贴图的通道来解决了。显示成果就是Cutout的描边局部无奈解决:

边缘比较复杂,然而管制的顶点就只有几个,感觉不太好实现。

当初模型顶点的色彩信息我曾经用过了,RGB是描边色彩,A是描边粗细。我能想到的方法是用A的一些非凡值来非凡解决一下某些顶点(相当于Clip掉一些顶点,但必定没有相干API),但又感觉仿佛不太可行。不晓得大家有没有遇到过,或者有没有什么好方法呢?

本人尝试了用顶点信息标记点,但有瑕疵,点关联的边会受影响,描边没了:

让美术加了一些点,根本也能解决(其实外边缘还是不会显示全,但曾经看不太进去了):

但这办法还是不好。最好在Renderer Feature里能够获取到正在渲染的模型的材质信息。

是否能够把一个多Pass的Shader里的某个Pass弄到独自的Renderer Feature里画,而不是从新画一遍?比方画第一遍的时候禁用这个Pass,Renderer Feature画的时候再启用它?

A1:自定义一个LightMode,Render Feature里设置这个LightMode,这样材质球上的贴图数据什么就能有。

补充个截图大略是这样的:

对于自定义的LightMode,Unity默认疏忽,只有Render Feature里手动指定了要画这个LightMode,Unity才会去绘制。

感激jim@UWA问答社区提供了答复

A2:如下,这样SRP Batcher终于能够合批多Pass的Shader了:

不必禁用失常的渲染。

两个pass,一个失常的pass,一个自定义lightMode的pass,lightMode的pass渲染描边用ScriptableRendererFeature手动指定渲染自定义的lightmode。unity不会去渲染你自定义的lightMode。

感激题主仇磊@UWA问答社区提供了答复

Video

Q:须要在游戏内播放视频,满足一些根本的需要,比方播放近程视频,边下边播,设置视频播放速度,视频进度条,暂停之类的。

目前已知的能够用自带的Video Player、AVPro和Sofdec2这三款,想问下有没大佬零碎钻研过视频播放这一块的,能够分享一点教训,不胜感激。

A:能够思考集成 https://github.com/bilibili/i… 到Unity上进行适配播放 :
https://www.gero.pub/2017/10/…

感激mrz@UWA问答社区提供了答复

封面图来源于网络

明天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题兴许都只是冰山一角,咱们早已在UWA问答网站上筹备了更多的技术话题等你一起来摸索和分享。欢送酷爱提高的你退出,兴许你的办法恰能解他人的当务之急;而他山之“石”,也能攻你之“玉”。

官网:www.uwa4d.com
官网技术博客:blog.uwa4d.com
官网问答社区:answer.uwa4d.com
UWA学堂:edu.uwa4d.com
官网技术QQ群:793972859(原群已满员)


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:海外设备上偶现的报错处理方式

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址