首页 > 其他分享 >为什么同一个Camera有两个RenderSingleCamera的耗时

为什么同一个Camera有两个RenderSingleCamera的耗时

时间:2024-10-17 10:47:59浏览次数:7  
标签:社区 耗时 Camera 内存 UWA RenderSingleCamera uwa4d

1)为什么同一个Camera有两个RenderSingleCamera的耗时
2)Unity 2022中SBP打包报错问题排查
3)Application.lowMemory在什么时候会生效
4)一般iOS机型要超过其运行内存的多少会容易崩溃


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

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

Rendering

Q:我们发现项目里有对同一个Camera的两个RenderSingleCamera的耗时,这是合理的吗?且全程RenderPipelineManager.DoRenderLoop_Internal这个函数每帧会执行2次还有可能执行4次的。

因此有以下疑惑:
1. RenderPipelineManager.DoRenderLoop_Internal什么情况下可能每帧执行多次?
2. 两个耗时有何区别
我在RenderDoc里也抓了下帧,确实有重复的Colour Pass,看起来明明已经画了一遍了,然后又画了一遍,Unity的FrameDebug只能看到一次。

A:RenderLoop在堆栈里面看到执行多次的情况通常是有Camera设置了RT作为其RenderTarget。

这两个是URP执行的两个阶段,前面可以看做初始化和Culling阶段,后面是提交Drawcall的阶段,以前在Built-in管线,前面的各种逻辑都是写在Native层的,URP把这个阶段封装了C#,方便开发者自己管理。

针对以上问题,有经验的朋友欢迎转至社区交流:
https://answer.uwa4d.com/question/66f8cf8f682c7e5cd61bf8e8


AssetBundle

Q:Unity 2022使用SBP打包总是报错:Assertion failed on expression: 'info.preloadSize == loadInfo.includedObjects.s。

环境:
Unity 2022.3.30f1
SBP 2.01、SBP 2.1.4,使用CompatibilityBuildPipeline打包

问题:
打没有缓存的资源,很容易出报错:

Assertion failed on expression: 'info.preloadSize == loadInfo.includedObjects.size() + loadInfo.referencedObjects.size()'

UnityEditor.Build.Pipeline.CompatibilityBuildPipeline:BuildAssetBundles (string,UnityEditor.AssetBundleBuild[],UnityEditor.BuildAssetBundleOptions,UnityEditor.BuildTarget)

A:结论:同一个包里不允许资源重名(我们所在的版本里资源记录没有路径也没有拓展名)。

下面放两张对比图,跟问题到底错在哪里无关,只是说明下二者的差别。

我尝试通过解包的内容确定出错的根本原因或者表现,但是没有成功。只在中间某个环节推测是重名问题,并进行了一系列测试,确认了这个结论。


2022里有问题的内容列表

 

 


2018里正常的内容列表

 

感谢题主Walker@UWA问答社区提供了回答


Memory

Q:Application.lowMemory这个方法大家有测过吗?如何生效?

A:由于Application.lowMemory仅在内存极其紧张时触发,因此不应该过度依赖这个回调来管理内存,尤其可能比较常见但其实有问题的、在回调中调用RUUA回收Unused资源的做法,不但降低内存的效果有限还会触发卡顿。正确的做法是通过优化资源管理、减少不必要的内存占用等方式来预防内存问题;或调用Resources.UnloadAssets或AB.Unload(True)的方式定向卸载内存。

针对以上问题,有经验的朋友欢迎转至社区交流:
https://answer.uwa4d.com/question/66f8cd1a682c7e5cd61bf8e6


Memory

Q:想问下,大家有没有测过iOS机型一般超过其运行内存的多少(比如50%)容易崩溃的数据吗?

A:我们项目测试过,但是有一些项目组反馈证明,即便是4G以上的中高端iOS设备,在内存超过1.8GB时闪退风险会比较高。

针对以上问题,有经验的朋友欢迎转至社区交流:
https://answer.uwa4d.com/question/66f8ce43682c7e5cd61bf8e7

封面图来源于网络


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

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

标签:社区,耗时,Camera,内存,UWA,RenderSingleCamera,uwa4d
From: https://www.cnblogs.com/uwatech/p/18471591

相关文章

  • Spring Cloud Gateway关键点全局Token过滤器,局部过滤器接口耗时,全链路跟踪TraceId日志
    一.全局Token过滤器在SpringCloudGateway中,实现全局过滤器的目的是对所有进入系统的请求或响应进行统一处理,比如添加日志、鉴权等。下面是如何创建一个全局过滤器的基本步骤:步骤1:创建过滤器类首先,你需要创建一个实现了GlobalFilter接口,创建一个全局token过滤器。@Slf......
  • 【web服务】耗时任务基于API与worker模式
    场景:当我们爬虫或者获取数据需要很长的时间计算或者等待,这种情况情况下基于API与worker模式完成交付1.API端:用flask框架importjsonimportuuidimportredisfromflaskimportFlask,request,jsonifyapp=Flask(__name__)pool=redis.ConnectionPool(host='127.0.0......
  • 设计方案:283-基于XILINX K7 XC7K325T的PCIe_CameraLink图像模拟源
    ​一、板卡概述       本图像模拟源板卡基于Xilinx公司的FPGAXC7K325T-2FFG900芯片,pin_to_pin兼容FPGAXC7K410T-2FFG900。主要的功能是实现系统能够接收外部相机的噪声数据,经过图像转换板拟通过PCI-E接口输入到上位机。​编辑 二、功能和技术指标:    1、用于......
  • 请问Rviz中No transform from [camera] to [base_link]要怎么解决
    本人ros小白一枚,ros版本是melodic,最近跟着赵虚左老师学习ros,在学到joint这一节的时候遇到很大的问题:RobotModel一直显示Notransformfrom[camera]to[base_link]launch文件:如果将joint_state_publisher_gui改为joint_state_publisher,就会出现这种情况:试过sudoapt-ge......
  • 【LVIO-SLAM】Mars 实验室研究:FAST-LIO、FAST-LIO2、MLCC、HBA、Livox Camera Calibra
    【LVIO-SLAM】Mars实验室:多传感器融合分享笔记1.小结1.FAST-LIO2.FAST-LIO23.MLCC(Multi-LiDARCalibratedConsistency)4.HBA(HierarchicalBundleAdjustment)5.LivoxCameraCalibration(Livox_camera_calib)6.VoxelMap7.LI-init(LiDAR-InertialInitialization)2.......
  • 征程 6E/M 快速上手实战 Sample-Camera
    01Camera模块简述本文档简单介绍Camera子系统软件架构、列出已支持的Camera模组,并提供相应的配置说明,同时引用Sensor点亮调试方法介绍一颗新模组接入的步骤,再按根据重要功能按专题介绍接入方案限制、EMB接收等,并最终汇总平台已有单板的Camera接入使用说明,用于指导征......
  • [ABC274G] Security Camera 3
    [ABC274G]SecurityCamera3给你一个\(n\timesm\)的网格图,\(n,m\le300\),每个空地上可以放任意多个任意方向的监控,一个监控视野覆盖对应方向最长连续空地,问监控覆盖所有空地最小化监控数量。对于一个极长的连续空地,我们一定是在边边放置一个监控,而且两边是一样的,因此我们只......
  • 【Bevy实战】2D场景下Camera实践
    Bevy,一个用Rust构建的令人耳目一新的简单数据驱动游戏引擎。如果你是一名Rust开发者,同时又对游戏开发比较感兴趣,那么Bevy一定是你会接触甚至是使用的游戏引擎。当然,本文关注的重点并不是来介绍Bevy,以及它的一些基本概念,关于这块的内容读者完全可以到Bevy的官网、Github主页进行学......
  • Camera ITS场景0_test_solid_color_test_pattern测试失败
    也会导致cts中CtsSensorPrivacyTestCases模块中两个单项报错,testOpStartsRunningAfterStartedWithSensoryPrivacyEnabledtestOpGetsRecordedAfterStartedWithSensorPrivacyEnabled这两项metadata加上MTK_SENSOR_TEST_PATTERN_MODE_OFF,MTK_SENSOR_TEST_PATTERN_MODE_BLACK就......
  • cameralink卡设计原理图:287-基于FMC接口的1路Base cameralink输入1路Base cameralink
    基于FMC接口的1路Basecameralink输入1路Basecameralink输出子卡  一、板卡概述      该板卡是我公司自主研发的1路Basecameralink输入,1路Basecameralink输出的FMC子卡,LPC-FMC连接器。FMC连接器是一种高速多pin的互连器件,广泛应用于板卡对接的设......