如何优化.so mmap内存占用

news2024/12/24 4:05:08

1)如何优化.so mmap内存占用
​2)模拟器下物理碰撞失效
3)Unity RenderTexture的释放在安卓上并不能使GL内存完全回落
4)数字人中,怎么做到胡子固定在嘴巴皮肤上


这是第319篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。

Memory

Q:项目PSS内存过高,使用adb指令抓取内存构成,发现.so mmap部分达到了180MB。这块有没有优化建议?

A1:可以从以下三个方向查一下:

1. 泛型Template用的是否较多
2. 自动化生产的代码是否较多
3. Lua生产的Wrapper代码是否较多

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

A2:还有以下两点:
1. 删除无用插件、代码
2. IL2CPP是否进行裁剪

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


Physics

Q:在雷电模拟器下,有大概率车与动态创建物体没碰撞,但是很奇怪的是某些相同Layer有的可以碰撞。

后面直接空场景打包模拟器运行,创建cube + rigidbody赋值不同Layer模拟,有时候是有的Layer之间全部没有碰撞,还会出现同一个运行每次会碰撞的Layer都不一样。

查了好久没啥思路,有没有大佬遇到相似问题?

以上问题有哪位大拿也曾经做过类似的测试,欢迎转至社区交流分享


Memory

Q:Unity RenderTexture的释放在安卓上并不能使GL内存完全回落?

Unity版本:2020.3.21.f1
测试机:HUAWEI P30
内存统计工具:Perfdog

问题详情:
情况1:创建RT并立刻卸载,此时GL内存完全回落。
情况2:创建RT不卸载,此时GL上升并稳定。再创建RT并立刻卸载,此时GL上升,但回落时(也有可能不回落)不会回到之前位置,会有一部分残留,类似于泄漏的情况。
想请问下为什么会发生这种情况?

我搭建了一个测试场景,主要测试了两个函数,第一个函数只生成RT不卸载、第二个函数生成RT并立刻卸载。

在真机上测试结果:

可以看到前三次,调用方法2对应了情况1,此时内存回落正常。但在调用方法1后再调用方法2,则会产生内存无法回落到原位置的情况。

目前查到的资料:参考了UWA上的一篇文章《分享一次查找GfxDriver内存暴涨的经历》

里面是这样解释的:

对于GL显存,里面说到回落不到原位置的原因是只卸载了Main Memory,而不卸载Pinned Memory,那有什么方法卸载掉Pinned Memory使内存完全回落的方法吗?

我对Main Memory和Pinned Memory具体是什么不太了解,想请教一下大家。

以上问题有哪位大拿也曾经做过类似的测试,欢迎转至社区交流分享


Animation

Q:数字人中,怎么做到胡子固定在嘴巴皮肤上?口型控制应用时,胡子怎么跟着嘴巴皮肤同步运动变形?

A:在数字人模型中,胡子的运动变形可以通过在嘴巴皮肤模型上添加骨骼来实现。首先,您需要在嘴巴皮肤模型上创建一些骨骼,并将它们附着在相应的位置。然后,您可以使用骨骼动画功能,在口型控制时通过控制骨骼的运动来实现胡子的跟随变形。

为了保证胡子能够固定在嘴巴皮肤上,您可以在创建骨骼时,在骨骼根部和嘴巴皮肤模型之间添加控制点(Control Point)。控制点可以用来连接骨骼和嘴巴皮肤,并使得骨骼的运动对嘴巴皮肤产生影响。通过添加控制点,您就可以在保证胡子固定的同时,让胡子能够随着嘴巴皮肤的变形而变形。

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

封面图来源于网络


今天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题也许都只是冰山一角,我们早已在UWA问答网站上准备了更多的技术话题等你一起来探索和分享。欢迎热爱进步的你加入,也许你的方法恰能解别人的燃眉之急;而他山之“石”,也能攻你之“玉”。

官网:www.uwa4d.com
官方问答社区:answer.uwa4d.com

 

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

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

相关文章

docker容器入门介绍

一、什么是docker容器 容器(Container)是基于镜像创建的运行实例,一个容器中可以运行一个或多个应用程序(jdk开发的java应用 程序)。 Docker 可以帮助你构建和部署容器,你只需要把自己的应用程序或者服务打…

对外投资数据集

一、2009-2018年各省省际对外非金融类直接投资流量情况数据来源: 中国商务年鉴2、时间跨度:2009-2018年3、区域范围:全国各省份二、2003-2018 OFDI对外直接投资存流量(分国家)与分省份对外直接投资存流量1、…

一个在关键路径上面隐藏了11个月的BUG:DragonOS进程切换查错

前言的前面 DragonOS是一个从0开始研发内核及用户态环境的,独立自主的,面向服务器领域的开源操作系统,提供Linux兼容性。 官网:https://DragonOS.org 代码仓库:GitHub - fslongjin/DragonOS: 一个64位的操作系统。A…

基于jsp+sevlet+mysql实现用户登陆和增删改查功能

基于jspsevletmysql实现用户登陆和增删改查功能一、系统介绍二、功能展示1.用户登陆2.用户列表3.查询用户信息4.添加用户信息5.修改用户信息6.删除用户信息三、其它系统四、获取源码一、系统介绍 系统主要功能: 用户登陆、添加用户、查询用户、修改用户、删除用户 …

用javascript分类刷leetcode4.贪心(图文视频讲解)

什么是贪心算法 贪心法,又称贪心算法,贪婪算法,在对问题求解时,总是做出在当前看来最好的选择,期望通过每个阶段的局部最优选择达到全局最优,但结果不一定最优 适用场景:简单的说,…

手把手YOLOv5输出热力图

环境要求 我的版本是YOLOV5 7.0 先看结果: 结果仅供参考 具体步骤一: 首先配置好YOLO V5环境 这个采用pip install requirements即可 具体配置环境可以看我其他的博客有详细介绍 GPU环境自己配置 步骤二: 运行YOLO 没问题,输…

Excel表格的导入导出——EasyExcel

参考视频 csdn参考地址 一、导入依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.0.5</version> </dependency>二、实体类 方式一&#xff1a;Excel Property&#xff08;&…

Kubernetes Pod 底层实现原理

文章目录前言一、探索 Container1.1 设置实验环境&#xff08;playground&#xff09;1.2 探索容器的 namespace1.3 探索容器的 cgroupsCheck the memory limit.二、探索 Pod2.1 设置实验环境&#xff08;playground&#xff09;2.2 探索 Pod 的容器2.3 探索 Pod 的命名空间2.4…

UDP协议重点总结(附实例)

文章目录前言一、网络的原生情况二、UDP协议2.1 UDP的特点2.1.1 不可靠性2.1.2 无连接&#xff08;不是缺点&#xff09;2.1.3 面向数据报&#xff08;优点&#xff09;2.1.4 缓冲区2.1.5 大小受限2.2 UDP协议端格式2.3 关于校验和2.4 基于UDP的应用层协议三、UDP总结&#xff…

P2279 [HNOI2003]消防局的设立

[HNOI2003]消防局的设立题目描述2020 年&#xff0c;人类在火星上建立了一个庞大的基地群&#xff0c;总共有 n 个基地。起初为了节约材料&#xff0c;人类只修建了 n-1 条道路来连接这些基地&#xff0c;并且每两个基地都能够通过道路到达&#xff0c;所以所有的基地形成了一个…

HTML5本地存储详解

html5 本地存储。前言一、localStorage 对象二、sessionStorage 对象三、localstorage 与 cookie 的区别四、localStorage 和 sessionStorage 二者的区别总结前言 ☀️本地存储是指在客户端存储数据&#xff0c;HTML5 为我们提供了两种 API&#xff0c;分别是 localStorage 与 …

算法是如何炼成的?

一、算 法 简 史算法可以追溯到古代埃及人和古希腊人使用的算术方法。在古代埃及&#xff0c;人们使用简单的加减法来解决基本的数学问题&#xff0c;而在古希腊&#xff0c;人们开始使用更加复杂的算术方法&#xff0c;比如平方、立方、平方根和立方根。随着数学的发展&#x…

css元素转换(旋转函数、rotateX 和 rotateY 的使用、移动函数、缩放函数、过渡、动画)详解

文章目录旋转函数rotateX 和 rotateY 的使用移动函数缩放函数过渡transition-timing-function 属性动画旋转函数 在 CSS3 中&#xff0c;使用 rotate 函数能够让指定的元素对象绕原点旋转&#xff0c;主要在二维空间内进行操作。 其语法格式如下所示&#xff1a; transform: …

【C++常用算法】STL基础语法学习 | 查找算法

目录 ●find ●find_if ●adjacent_find ●binary_ search ●count ●count_if ●find 1.功能描述&#xff1a; 查找指定元素&#xff0c;如果找到则放回指定元素的迭代器&#xff0c;若未找到则返回结束迭代器。 2.查看find定义下底层代码的函数原型&#xff1a; 3.…

Day849.ThreadLocal线程本地存储模式 -Java 性能调优实战

ThreadLocal线程本地存储模式 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于ThreadLocal线程本地存储模式的内容。 民国年间某山东省主席参加某大学校庆演讲&#xff0c;在篮球场看到十来个人穿着裤衩抢一个球&#xff0c;观之实在不雅&#xff0c;于是怒斥学校的…

用于安全医疗保健系统的基于机器学习的可伸缩区块链架构

文章目录背景相关技术简介区块链扩张性电子病历数据安全安全医疗保健的架构基于可扩展区块链架构的机器学习概述基于可扩展区块链架构的机器学习工作流程小结摘要从3.0到4.0的工业革命已经改变了医疗保健环境。患者电子健康记录(EHR)与医学研究机构共享&#xff0c;用于临床研究…

12月榜单丨B站UP主排行榜(飞瓜数据B站)发布!

飞瓜轻数发布2022年12月飞瓜数据UP主排行榜&#xff08;B站平台&#xff09;&#xff0c;通过充电数、涨粉数、成长指数三个维度来体现UP主账号成长的情况&#xff0c;为用户提供B站号综合价值的数据参考&#xff0c;根据UP主成长情况用户能够快速找到运营能力强的B站UP主。飞瓜…

Python:python简介

1&#xff1a;特点 一种解释型&#xff0c;面向对象&#xff0c;动态数据类型的开源高级程序设计语言 其特点就是&#xff1a;优雅&#xff0c;明确&#xff0c;简单&#xff0c;完善的基础代码库和大量的第三方库。 2&#xff1a;解释VS解释 3&#xff1a;应用场景 python…

基于androidstudio校园快递APP系统的设计与实现

1.课题背景及研究的目的和意义 1.1 课题背景 在其发展速度可谓一日千里的电子商务时代&#xff0c;大学生群体已成为网络购物群体中不可或缺的一部分。因此&#xff0c;高校师生对网购的需求也愈来愈强烈&#xff0c;校园快递的问题也成为了焦点&#xff0c;其中校园快递代理…

98%的数据被浪费,企业该如何释放数据价值?

在数字经济时代&#xff0c;对于广大企业来说&#xff0c;数据就是生产资料&#xff0c;算力则是生产力。飞速增长的业务数据&#xff0c;为现代企业提供了最具价值的资产。然而另一方面&#xff0c;如何存储、清理、管理、挖掘、运用数据&#xff0c;也给广大企业提出了艰巨的…