首页 > 其他分享 >Unity的粒子总是丢材质

Unity的粒子总是丢材质

时间:2023-11-07 10:45:05浏览次数:33  
标签:社区 粒子 Unity AssetBundle UWA uwa4d 材质

1)Unity的粒子总是丢材质
2)C#传给C++的Byte数组如何释放
3)CommandBuffer.DrawProcedural在手机上为什么不生效
4)游戏加载场景碰撞,会弹出显卡报错,驱动程序超时


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

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

Loading

Q:Unity打包AssetBundle后总是丢粒子的材质,而且不固定,有时候这个丢有时候那个丢。编辑器下引用是没问题的,内容也打进去了,资源加载也没问题,就是真机上丢引用了,先加载材质球也一样的,只能重新导入这个材质才没问题。重新导入后Meta文件和材质文件也是没有差异的,只能删除Lib文件夹。使用的是Unity 2020.4.48版本,打包的也是稳定的AssetBundleName。

有没有一样的情况?

A1:Unity打AssetBundle,如果不删除已有目录的AssetBundle,是增量打AssetBundle的,感觉是这里导致的Bug。

可以试着打包前删除上一次打的所有AssetBundle,或者用BuildAssetBundleOptions.ForceRebuildAssetBundle强制打AssetBundle试试。

感谢范世青@UWA问答社区提供了回答

A2:我们的解决方案是删除对应异常的AssetBundle(和相关依赖的AssetBundle),重新生成就可以解决(重新生成的包内容、依赖和异常时的包对比没有变化)。我们发现如果Prefab是变体最容易出现(偶发),且每次出现这个情况,几个不同的机器打包就会有一部分机器出现相同情况(不全部都是),一部分又没有问题。这个没法通过Reimport方法解决。

感谢1 9 7 3-311135@UWA问答社区提供了回答


Script

Q:游戏里用C#读取文件数据byte[],然后传给C++(unsigned char*),有点不明白,这个数组是同一份内存还是复制了一份?

在C++调用free()释放会闪退,猜想应该没有复制,如果是这样,C#这边读出来先不管,C++那边还引用着,也没释放(析构时置空引用),要怎么释放呢?

A:C#创建的非托管堆内存,在C#中通过Marshal.FreeHGlobal(InPtr)释放。

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


Rendering

Q:CommandBuffer.DrawProcedural为什么在手机上不生效?

cb.DrawProcedural(Matrix4x4.identity, material, shaderPass, MeshTopology.Triangles, 3, 1, null);

就是URP自定义的Feature Pass里Draw一个三角形来模拟BLIT(网上挺多这种节省性能的做法的文章),这个效果在Unity下播放能生效,但打包到华为NOVA6上或者雷电模拟器上运行就不生效了,不知道是不支持还是其他问题?

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


Loading

Q:游戏加载场景碰撞,会弹出显卡的报错,驱动程序超时,这是为什么呢?有什么解决方法吗?

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

封面图来源于网络


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

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

标签:社区,粒子,Unity,AssetBundle,UWA,uwa4d,材质
From: https://www.cnblogs.com/uwatech/p/17814496.html

相关文章

  • Unity DOTS中ECS核心架构详解
    最近DOTS终于发布了正式的版本, 我们来分享一下DOTS中ECS的几个关键概念与结构,方便大家上手学习掌握Unity DOTS开发。 ECS中的World  Unity DOTS ECS架构中所有的Entity都是被放到了World对象里面,每个Entity在World里面都有唯一的Id号。Unity DOTS 可以同时支持很多个......
  • Unity ECS最新DOTS环境搭建教程
    最近DOTS终于发布了正式的版本, 今天我们来基于Unity2023.1.6来搭建DOTS1.0.16的开发环境与注意事项。 1获取DOTS的在线文档   UnityDOTS的权威资料比较少,我们主要的都是基于DOTS的官方文档来进行学习和使用。UnityDOTS的官方文档的下载地址:https://docs.unity3d.c......
  • unity游戏发布调试
    详见unity手册-平台开发-独立平台1.unity内运行正常,平台运行失败-build-DevelopmentBuild勾选根据平台上的DevelopmentBuild信息,有以下原因1)第三方库与.net的依赖-playerSetting-Other-Configuration&APICompatiblityLevel2.playerSetting2.性能分析-build-AutoconnectPro......
  • 记一次Unity性能优化
    Beforeyoumakeanychanges,youmustprofileyourapplicationtoidentifythecauseoftheproblem.Ifyouattempttosolveaperformanceproblembeforeyouunderstanditscause,youmightwasteyourtimeormaketheproblemworse.——unity文档在改代码......
  • unity 点击,长按和双击
    转自:Unity单击、双击、长按事件处理_unitybutton长按事件_司军礼的博客-CSDN博客原理:1.将操作抽象成三个类:ClickButton,DoubleClickButton,PressButton并实现各自的生命周期函数:ClickButton:OnPointerDown启动监测,OnPointerUp:调用点击成功事件DoubleClickButton:OnPointerDown启......
  • 《光复合粒子对康普顿散射的理论解释(普朗克常数是变量)》 回复
    《光复合粒子对康普顿散射的理论解释(普朗克常数是变量)》    https://tieba.baidu.com/p/8678440731      1- cosθ 是什么鬼?   只听说过 1-(cosθ)²,  没听说过 1- cosθ 。 哦,   1- cosθ  是把相位反......
  • 从FrameDebugger看Unity渲染
     Unity如何渲染一个3D+2D的游戏画面,今天通过FrameDebugger来看下Unity内置渲染管线的渲染策略, 后续再出一些URP渲染管线相关的文章。    Unity渲染场景的几个主要部分    Unity内置渲染管线是基于摄像机来进行渲染的,每个摄像机按照摄像机的渲染顺序来依次渲染,渲......
  • Unity DOTS系列之Struct Change核心机制分析
    最近DOTS发布了正式的版本,我们来分享一下DOTS里面StructChange机制,方便大家上手学习掌握UnityDOTS开发。基于ArchType与Chunk的Entity管理机制  我们回顾以下ECS的内存管理核心机制,基于ArchType+Chunk的Entity管理模式。每个Entity不直接存放数据,数据全部存放到Component......
  • Unity-Android 权限相关问题
    1.生成AndroidManifestFile->buildSetting->playerSetting->Android->publishingSettings权限添加位置:<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android......
  • DC电源模块外壳材质对模块的影响有多少
    BOSHIDADC电源模块外壳材质对模块的影响有多少DC电源模块是一种常见的电子元件,被广泛应用于电子设备、通讯、计算机、医疗器械、制造业等领域,它的外壳材质对电源模块的性能和稳定性有直接的影响。本文将就DC电源模块外壳材质的不同对模块的影响作一简要介绍。首先,DC电源模块通......