Unity - 记一次非正规变体优化带来的兼容性导致部分手机卡死的问题

news2024/12/28 18:06:44

文章目录

  • 问题
    • 但是我咨询过 公司中台TA大佬 - 2023.4.6
    • 然后咨询 unity 技术官方 - 2023.4.6
    • 再次遇到卡死 - 2023.5.24
  • 解决方法
  • 具体华为真机上的 DEBUG


问题

在 2023.4.6 我们的 角色展示界面 就遇到了 华为手机,red mi note 11 的测试手机上的
后 2023.5.24 再次遇到类似的问题,但是这次重现的地方很多,不单止 角色展示界面 遇到


但是我咨询过 公司中台TA大佬 - 2023.4.6

在这里插入图片描述


然后咨询 unity 技术官方 - 2023.4.6

在这里插入图片描述


再次遇到卡死 - 2023.5.24

排除过:

  • 模型
  • 特效
  • 场景
  • 人物
  • 材质

后来多次排查,发现是 PBR 所有的 变体拆分优化 的文件导致阴影部分导致的卡死的问题
(变体 拆分 文件优化的方式,可以查看我之前的文章: UBer Shader 拆分为 #define + 少量 #multi_compile 的多份 shader 优化实践结果)

回想我之前 2023.4.6 的截图:也是 和阴影有关系,但是那时候还没做 PBR shader 变体拆分
在这里插入图片描述


解决方法

这部分不用拆分,直接使用 #pragma multi_compile_fwdbase 来处理 (但是变体会多一些,真机上发现一个 shader 会比之前大 2M 左右的 内存
在这里插入图片描述


具体华为真机上的 DEBUG

(后续补上 : 在 red mi note 11 或是 华为上,真机查看 shader macro 的走向,来定位 shadow 走的 macro 分支情况,来定位卡死的变体分支)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/566813.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SSM框架学习之spring

Spring 以下是关于Spring Boot学习的一些文档和资源,希望对你有帮助: Spring Boot官方文档:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/ Spring Boot中文文档:https://www.springcloud.cc/spring-bo…

Server - 高性能的 PyTorch 训练环境配置 (PyTorch3D 和 FairScale)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/130863537 PyTorch3D 是基于 PyTorch 的 3D 数据深度学习库,提供了高效、模块化和可微分的组件,以简化 3D 深度学…

龙讯旷腾作为首批单位入驻北京昇腾人工智能计算中心

2023中关村论坛系列活动—北京人工智能产业创新发展大会圆满落幕,围绕北京AI产业发展,政产学研用各界大咖汇聚京城,中国科协副主席束为、北京市副市长于英杰、中国工程院院士廖湘科出席大会。会上,北京市门头沟区政府联合中关村发…

Kubernetes基础操作

K8S基础操作 ✨✨✨✨✨✨✨✨✨这个基础操作一切都基于各位把k8s搭建好哦,搭建的时候请一定一定一定(很重要),选定一个版本,能避免很多错,然后本章节就给大家介绍了k8s最基础的操作,有一些复杂…

基于GPTP时间同步(时钟同步服务器)技术助力智能驾驶应用

基于GPTP时间同步(时钟同步服务器)技术助力智能驾驶应用 基于GPTP时间同步(时钟同步服务器)技术助力智能驾驶应用 智能驾驶区域网关架构并未采用车载以太网总线进行连接,而是采用传统的 CAN 总线、FlexRay 或 MOST 总线…

解决若依出现Error: Cannot find module ‘@/views/xxx‘问题

问题描述: 若依 vue 版菜单点不开,报错:Error: Cannot find module ‘/views/xxx’ 。后台、vue前端启动都没问题。但是左侧菜单点不开,一直在加载中。 原因: 路由懒加载,webpack版本问题,we…

常见淘宝API文档接口使用攻略,一文搞定

探索淘宝数据的奥秘,淘宝是目前国内最大的B2C电商平台之一,每天都会产生海量的数据。借助淘宝API技术文档,我们可以轻松地获取到这些数据,从而为电商运营和数据分析提供有力支持。 1.什么是淘宝API? 淘宝API&#xf…

工作分配问题——算法设计与分析(C实现)

目录 一、问题描述 二、问题分析 三、代码展示 四、结果验证 一、问题描述 问题描述:设有n件工作分配给n个人。将工作i分配给第j个人所需要的费用为Cij。试设计一个算法,为每个人都分配1件不同的工作,并使总费用达到最小值 算法设计&a…

nodejs+vue+elementui大学生多媒体学习系统

前端技术:nodejsvueelementui 前端:HTML5,CSS3、JavaScript、VUE(1)课程学习(包括课程分类 课程目录 课程学习等相关操作) (2)课程评价 (3)课程统计 (4)相关信息管理(包括基本信息 课程编辑 注册登录等相关操作) 1、 node_modules文件夹(有np…

day18 - 使用直方图提高图像对比度

本期将使用图像直方图的相关知识来提高图像对比度,对图像进行优化,从而提高图像清晰度。 完成本期内容,你可以: 了解图像直方图的定义和计算方法了解直方图均衡化的原理学会使用直方图均衡化优化图像 若要运行案例代码&#xf…

SpringBoot 结合 mybatis-plus 实现分页功能

一、分页的原理 要实现分页功能方法有很多,但最基本的实现原理都差不多,所以在实现功能之前要先把原理搞明白。正如删除有 “逻辑删除” 和 “物理删除" 之分,分页也有 “逻辑分页” 和 “物理分页”; 1、逻辑分页&…

WalMiner插件之xlog解析恢复使用教程

WalMiner插件主要有两个功能,在此记录一下第二个功能数据页挽回(坏块修复),学习一下关于这块的使用方法,方便日后回顾。 1 环境搭建 创建WalMiner的extension create extension walminer;语句解析: 该句SQL功能是安…

Linux用户管理相关命令(全)

1、Linux用户(账号)管理 查询用户(账号)信息(判断用户(账号)是否存在) id account新增用户(账号) useradd account设置用户(账号)密码 方式1: passwd account 方式2: echo 123|passwd --stdin account; #密码为123删除用户(账…

CMS 8bit单片机C语言编写指南

0 Preface/Foreword 单片机包含两部分:程序内存(Program memory space)和数据存储器(Ram memory space)。 CMS单片机堆栈深度受限,随具体的芯片而固定。 1 CMS C程序框架及数据类型 1.1 源程序基本框架 Example: 1.2 CMS C中变…

【JS】获取 Headers 头部信息

一、应用场景 当我们请求一个接口的时候,会发现 res 里面包含一个 headers 响应头信息: fetch(url, {method: GET,headers: {content-type: application/json,X-Requested-With: XMLHttpRequest,},mode: cors,credentials: include,}).then(res > {…

【算法】字符串转int类型思路及代码

文章目录 题目分析思路完整代码 题目 给你一个字符串,如何这个字符串符合日常的整形的书写规范,那么我们需要写出将其转化为int类型的方法,并且不能使用Java提供的API,比如parseInt方法。 分析 这道题考察的其实就是parseInt的…

亚马逊测评:提升产品排名、权重和销量的秘诀

亚马逊是全球最大的在线零售平台,覆盖了世界各地主要国家和地区,而随着平台商家的不断增加,为了提高自身排名,很多卖家开始寻找人员为他们的店铺和产品进行有偿评价,从而催生了亚马逊测评行业 亚马逊测评,…

笔试强训 Day6

选择题 1.十进制变量i的值为100,那么八进制的变量i的值为() A 146 B 148C 144 D 142 本题很简单:100除8,取余数,直到商为零,最后反向的串起余数即可 2.执行下面语句后的输出为(&…

从传统开发到低代码:这是一次技术革命

近年来,随着人工智能等新兴技术的快速发展,软件开发行业也在不断演变。传统的软件开发流程需要大量的编程知识和时间,而且往往需要复杂的架构和开发环境。然而,随着低/无代码平台的出现,软件开发变得更加高效、简单和普…

服务(第三十篇)elk-elasticsearch、logstash、kiabana

rsyslog 服务器较少时使用,rsyslog日志收集,统一存放在专门存放日志的收集器中; ELK 简介 ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用…