头图

1)为什么不应将游戏逻辑写在FixedUpdate中
2)关于il2cpp.so裁剪的问题
3)3DMax怎么统计Unity的顶点数量
4)Unity拉起SDK后,导致场景贴图丢失


这是第417篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。

UWA社区主页:community.uwa4d.com
UWA QQ群:793972859

Script

Q1:请问在向别人解释不要把游戏逻辑放在FixedUpdate,而应正常地放在Update里,除了Input事件外,我还能使用哪些理由呢?

A1:FixedUpdate只处理物理相关的逻辑,Input事件应该放Update。

感谢如此而已@UWA问答社区提供了回答

A2:如果卡,FixedUpdate会在一帧里执行多次来追上更新次数,可能导致严重的掉帧和发热。若想慢点更新,建议用携程或者用UniTask。

感谢Max.Jon@UWA问答社区提供了回答

Q2:我需要一些硬性的不能做的理由,目前想到的就只有Input事件会重复或被跳过。

A3:那Update里面干什么?而且位置更新不放到Update和渲染匹配不上,看着应该会有顿的感觉。

感谢小波@UWA问答社区提供了回答

A4:FixedUpdate不能动态锁帧,全放里面手机发热发烫耗电也快。

感谢好虫@UWA问答社区提供了回答

Script

Q:我们最近在关注包体问题,发现il2cpp.so里有1/4的代码是Generics GenericMethods,请问有什么方法能减少这些代码生成的同时,运行不报错呢?

另外对于APP,有没有人测试过IL2CPP Code Generation的两个选项OptimizeSize和OptimizeSpeed对于运行时影响有多大呢?

A:你应该先说明一下自己的Unity版本。

我测试过Unity 2022版本的IL2CPP Code Generation的Fast(Small)Builds可以在牺牲少部分性能的情况下减少很多泛型代码。

我们泛型代码也比较多,可以减少1/3以上。

感谢邹彬@UWA问答社区提供了回答

Editor

Q:请问3DMax是怎么统计Unity的顶点数量的呢?

A:视窗左上角点加号-视窗设置,然后第二张图勾选显示:

然后就有了:

感谢龙@UWA问答社区提供了回答

Platform

Q:请问有朋友遇到过Unity拉起SDK后,导致场景贴图丢失的问题吗?

输入的贴图全黑,变成UnityBlack了:

我是觉得不相关,但是现在复现的手法确实是,拉起SDK以后再回到游戏,贴图就丢了。也不是所有手机都这样,内存比较小的手机会这样,而且也没有用Compute Shader:

我不太理解资源重建这个,但是我试过直接切后台和拉起SDK做比较,切后台再切回游戏是正常的,但是拉起SDK再回到游戏资源就丢失了。感觉像是拉起SDK的时候,Unity这边释放了内存,然后复现的设备有一个这样的报错:

A:参考下图:

感谢小波@UWA问答社区提供了回答

封面图来源于网络


今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859


侑虎科技
65 声望21 粉丝

UWA官网:[链接]