自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (6)
  • 收藏
  • 关注

原创 【Unity优化(二)】渲染优化

https://www.cnblogs.com/alan777/p/6204759.htmlCPU受限开启Player Settings中的Graphics jobs。在Player settings中的Graphics jobs选项决定了Unity是否使用工人线程去执行一些原本需要在主线程或者渲染线程中执行的任务,在支持这个功能的平台上,它能够提供可观的性能提升。如果我们希望使用这个功能,我们应该分别对开启或者关闭此功能进行性能分析,以观察这个功能对性能的提升效果。发送命令到GPU降低要渲染的对

2024-04-15 17:02:50 226

原创 【Unity优化】模型

1.最小化面数,不需要微三角形面(一个三角面包含个位数像素),三角面尽量分布均匀。8.不需要rigs和BlendShapes尽量关闭。6.FK与IK节点分离,导出时删除IK骨骼节点。6.Skin Weights受骨骼影响个过多。2.合理的拓扑结构与平滑组,尽可能是闭包。1.尽可能的将网格合并到一起,()9.如果可能,禁用法线或切线。4.不必要不要开启网格读写。3. 不要使用网格碰撞体。5.使用合理的LOD级别。4.尽可能少的蒙皮网格。5.尽可能少的骨骼数量。2.尽可能使用共享材质。3.尽量少的材质个数。

2024-04-08 15:38:39 304

原创 【Unity渲染】渲染管线原理

顶点数据在GPU中进行转换(顶点shader),由模型空间定点,先转换到裁剪空间,再转换到屏幕空间坐标,然后进行图元装配和光栅化,片元着色器(片元shader)进行着色,然后合并输出到屏幕。CPU 应用程序阶段,剔除,排序,提交模型数据,绘制调用,向GPT提交SetPass Call(使用shader和混合模式等渲染方式) 和DrawCall(使用哪些模型数据进行渲染)顶点处理将模型空间顶点转化为屏幕空间(模型空间-世界空间-裁剪空间-屏幕空间。光栅化阶段 三角形裁剪,背面剔除,图元装配,光栅化。

2024-04-08 15:16:10 520

原创 在线的max文件转换fbx网站,Unity打开.max文件

在线的max文件转换fbx网站。很不错 可以转换小模型。

2023-03-01 17:14:34 4545

原创 【HDRP】自动生成的光照探针——Probe Volume

HDRP中,增加了Probe Volume,可代替旧版的光照探针Light Probe Group。使用此功能的物体,不再需要光照贴图。

2023-01-30 13:30:27 1525 1

原创 【Unity】Cinemachine混合导致的LateUpdate中计算异常

CinemachineBrain中默认的BlendUpdateMethod是使用LateUpdate更新,我们常用的也是此模式。我们所写的其他脚本默认执行顺序为0。所以我们的LateUpdate其实是在CinemachineBrain位置混合之前执行。但在此模式下,由于Cinemachine插件默认将此脚本的执行顺序设置为100。如果此时通过主相机,进行坐标切换,如本地转世界,世界转本地,则会导致结果异常。应将编写的脚本的脚本执行顺序调整到CinemachineBrain之后。

2023-01-05 16:04:31 369

原创 【Linux(Centos7)Unity】报错 加载共享库时出错:libc++.so.1:无法打开共享对象文件:没有共享对象文件或目录

unity在linux上,加载共享库出错

2022-07-11 15:15:37 4453

原创 【Unity】网格合并后位置偏移问题

网格合并后位置偏移问题

2022-05-26 17:12:57 799

原创 【Unity编辑器扩展】禁用某个控件(禁用按钮,禁用文本框)

API:使用API :EditorGUI.BeginDisabledGroupBeginDisabledGroup参数填True,则为禁用Begin至End直接的功能。在untiy面板上置灰。代码: float jumpHeight = 0f; EditorGUI.BeginDisabledGroup(true); jumpHeight = EditorGUILayout.FloatField("Jump Height", jumpHeight);

2022-05-17 15:52:45 1498

原创 【Unity】中断AssetBundle的加载

如果我们在协程里面,使用AssetBundleCreateRequest 加载ab包。就算我们停止了协程。AssetBundleCreateRequest 并不会停止加载,而是会运行到ab包加载完成。参考Unity文档中AssetBundleCreateRequest.assetBundle的说明https://docs.unity.cn/cn/2020.3/ScriptReference/AssetBundleCreateRequest-assetBundle.html在AssetBundleCre

2022-05-10 13:08:05 645

原创 【Unity编辑器拓展】Unity创建自定义包问题

包清单,package.json中的name的值,必须全为小写,大写会报错。name的值与文件夹名字无关,name值必须全为小写,文件夹名字,大小写随意。displayName的值是在PackageManager和Pacages文件夹中显示的文件名字。如需显示中文,则需要使用UTF-8代码。http://www.jsons.cn/utf8/将转换后的%去掉,使用\分割前方的字母和UTF-8代码...

2022-05-06 15:19:42 299

原创 【Unity】NavMeshAgent寻路路径获取异常

使用NavMeshAgent对象的path属性,可以获取和设置当前路径。但是如果刚刚设置了destination,目标位置,则path属性在当前帧无法获取准确的路径。经测试,甚至在50帧之后也有概率得到的路径不准确。可使用NavMeshAgent.CalculatePath(),或者NavMesh.CalculatePath(),计算路径...

2022-04-24 10:57:49 3051

原创 【Unity编辑器拓展】两种数据缓存方式EditorPrefs与EditorUserSettings的区别

EditorPrefs.GetString \ SetString可缓存指定字符类型。适用类型:位置、大小、Unity Editor的环境设定(类似于Preferences里面的东西)。即使是单独的Asset但有与环境相关的设定的话,也请使用 EditorPrefs。需要注意的是,EditorPres里面保存的都是明文。因此绝对不要把密码之类的重要信息保存在里面。适用范围:此电脑的同一大版本Unity。存储方式存储到Windows注册表中,以大版本划分存储,如4.x版本,5.x版本。(不过我使

2022-04-24 10:51:41 1326

原创 【Unity代码】使用txt文件保存和读取游戏数据

使用二进制存储数据1.创建需要存取的数据类: public class SaveData { public int i = 11; public string str = "save"; } SaveData data = new SaveData(); data.i = 12; data.str = "ccc";2.获取数据存取路径Application.persistentDataPath官方文档:https://docs.un

2022-03-14 15:21:04 6011

原创 【Unity渲染】前向渲染和延迟渲染的区别及切换

前向渲染和延迟渲染通道的区别,主要在对于光源的处理上。Unity默认是前向渲染通道,如果光源特别多,可以使用延迟渲染。前向渲染使用前向渲染路径时,被照亮的对象将在单独的通道中进行渲染。根据场景中的光源数量以及它们是否影响游戏对象,有些对象可能会渲染多次。使用前向渲染的优点是渲染速度非常快。这有助于降低对硬件的要求。前向渲染提供多种自定义着色模型,而且可以快速处理透明度。该渲染路径还用于处理多样本边缘柔化 - 这是一项创建图形时使用的技术,旨在改进图像质量(该技术在“延迟渲染”路径中不可用)。前向渲

2022-02-16 20:52:05 6514

原创 【Unity渲染】自定义屏幕后处理

自定义屏幕后处理其实并不难,步骤分为两个部分,1.设置用于画面处理的材质球和Shader;2.在C#代码中使用OnrenderImage函数对摄像机画面进行处理。

2022-02-15 17:00:14 1983 1

原创 【UnityShader】shader基础关键字和算法

1.时间_Time_Time是float4类型,_Time.x表示当前时间 / 20,_Time.y表示当前时间,_Time.z表示当前时间 * 2,_Time.w表示当前时间 * 3;

2022-02-15 16:19:01 958

原创 【Unity Shader】Properties属性定义中bool类型无法使用的替代

在shader中,无法使用bool类型变量,如下写法会报错。_IsTrue("Istrue", bool) = true可以使用float类型+toggle标签来代替[Toggle(_True)]_IsTrue("Istrue", float) = 1增加Toggle标签后,在Inspector面板中,该变量为复选框。勾选即为默认值,取消勾选则不是默认值。在需要判断的地方,判断_IsTrue是否为默认值即可。...

2022-02-15 14:57:26 5391

原创 【Unity URP】Unity URP中透明物体开启阴影

Unity URP 默认的透明材质无法投射阴影。

2022-02-10 20:09:59 2144

原创 【UnityAPI】设置贴图渲染质量QualitySettings.masterTextureLimit解释

QualitySettings.masterTextureLimit用于设置贴图渲染质量。*只适用于贴图,不适用于UI图片。QualitySettings.masterTextureLimit默认为0,表示不对贴图渲染限制;设置为1,是渲染1/2的画质,相当于压缩贴图1/2大小。设置为2则是 1/4;设置为3则是1/8;以此类推。注:对项目内所有贴图进行渲染限制*QualitySettings.masterTextureLimit用于设置贴图渲染质量。只适用于贴图,不适用于UI图片。Quali

2022-02-10 20:08:49 1292

原创 【Unity优化】Unity图集打包(2020新版本和旧版本)

对于Unity中UI使用的图片精灵,打包成图集,可以降低DrawCall,提高性能。Unity2019以前的版本一、开启图集功能默认图集是不开启的,需要在Editor>Project Settings设置中,将SpritePacker的Mode修改为Always Enabled(总是启用)或者Enabled For Builds(在构建时启用)。二、设置图片的图集名称在Texture Type为Sprite的图片设置中,填写Packing Tag字段。Unity会自动将Packing

2022-02-09 18:11:49 12122 2

原创 【Unity主程手记学习】第一章——软件架构

架构无处不在,它实质上就是解决生活和工作中问题的一种方式。、如果把软件比作书,那么软件架构就是书架。一、架构的好坏由五个因素决定:1.承载力能承载多少逻辑系统,能承载多少个程序员同时开发,访问量承载力如何。2.可扩展性能适应不同类型需求,添加不同类型系统、子系统。3.易用性使用起来是否方便,开发效率要高。4.可伸缩性服务器角度:可以根据访问量需求,随时改变承载力大小,来节约成本。客户端角度:可以多人协作开发大项目,也可以几人合作开发小项目。5.容错性以及错误的感知力。能发现潜在错误

2022-02-07 12:49:05 1532

原创 【Unity API】四元数Quaternion的乘法规则详解,含代码案例演示

四元数相乘有两种方式1.四元数之间相乘public static Quaternion operator * (Quaternion lhs, Quaternion rhs);旋转之间的相乘,不满足交换律。q3 = q1 * q2表示,将q2选转q12.四元数与向量相乘public static Vector3 operator * (Quaternion rotation, Vector3 point);...

2022-01-13 17:19:20 4227

原创 【Unity 知识】设置射线检测层级,Physics.Raycast的layerMask含义

射线检测我们经常使用,可以得到射线碰撞检测到的信息。Physics.Raycast(Ray ray, out RaycastHit hitinfo, float maxDistance)但如果有些物体并不需要被射线检测,但它显示在需要被射线检测物体之前,并且还拥有碰撞体,会导致射线检测无法达到我们预期的效果。我们就需要用到他的第四个参数layerMask。Physics.Raycast(Ray ray, out RaycastHit hitinfo, float maxDistance,in

2021-11-26 14:27:50 6848 2

原创 【Unity WebGL】打包异常:il2cpp.exe did not run properly

Unity打包WebGL总会有各种各样的异常。今天的异常是:Failed running D:Unity编辑器/build/deploy/net471/il2cpp.exe–convert-to-cpp --dotnetprofile=“unityaot” --compile-cpp --libil2cpp-static --platform=“WebGL” --architecture=“EmscriptenJavaScript” --configuration=“Release”Excep

2021-11-19 16:13:43 7159

原创 【Unity知识点】通俗解释delegate,事件event,Action,Func和UnityAction,UnityEvent

委托,像类一样,可以声明一种方法类型。委托对象可以被赋值,注册和注销方法。委托对象必须被赋值才可使用。委托的使用类内和类外无差别。事件,是对委托的一个限定,事件对象不需要被赋值,也不能被赋值,只可以注册和注销方法。不论声明为public还是private,事件对象在类外只能在+=号和-=号的左边,意味着在声明此事件的类外,无法使用,只能注册和注销方法。...

2021-11-18 22:14:49 9751

原创 【Unity2020 WebGL无法加载异常】 Uncaught ReferenceError: unityFramework is not defined at HTMLScriptElement

问题Unity2020 打包出WebGL,打开项目会卡在读条界面,无法进入场景。控制台报错UncaughtReferenceError: unityFramework is not defined at HTMLScriptElement与Uncaught SyntaxError: Invalid or unexpected token。这是因为:从 Unity 2020.1 开始,Unity WebGL 项目默认不再启用 gzip 和 brotli 的软件解压缩回退。由于许多 Web服务器配

2021-11-17 15:09:36 8120

原创 【Unity2020 WebGL无法加载异常】 both async and sync fetching of the wasm failed问题

我出现这个问题是在使用Unity2020打包的时候。Unity自从2020对WebGl做了一些修改。单单从打包后的文件来看,也可以看得出不同。这个问题是在打开本地文件时出现,谷歌浏览器报错,在火狐浏览器可以正常进入。虽然已经设置了谷歌浏览器可以打开本地html,但还是出了这个异常。解决把WebGL文件上传到服务器,通过网址链接进入,得以解决。...

2021-11-16 17:25:53 4934

原创 【Unity插件: UniWebView】安卓无法加载http链接,报错ERR_CLEARTEXT_NOT_PERMITTED

原因出现ERR_CLEARTEXT_NOT_PERMITTED这个报错的原因,在于安卓。从Android 9.0(API级别28)开始,默认情况下禁用明文支持。因此http的url均无法在webview中加载。解决方案所以我们需要在安卓的清单中AndroidManifest.xml,添加可以加载http的标签。在Unity中完成修改AndroidManifest.xml在Unity中无AndroidManifest.xml文件的情况下。Unity默认情况会根据插件中的所有 Android 清单,和

2021-11-10 16:10:06 6676 4

原创 【Unity优化(一)】 内存和GC优化

整理自官方教程翻译 https://www.cnblogs.com/alan777/p/6155501.html⏳内存和垃圾回收原理内存分为栈内存和堆内存,栈用来存储短期的和小块的数据,堆用来存储长期的和大块的数据。Unity自动内存管理:1.当一个变量被创建时,会在栈或堆内存池上申请一块内存空间。(值类型存在栈上,引用类型存在堆上。)2.只要这个变量在作用域内,可以被代码访问。分配给它的内存在使用中,则称这款内存已被分配。根据内存空间位置,被称为栈上对象或者堆上对象。3.如果这个变量不在作用域

2021-10-28 21:27:52 1687

原创 Unity animation动画编辑器快捷键

Ripple快捷键 :2018(包括2018)之前,拖拽选中的关键帧,若想要前方和后方关键帧可以跟随被选中关键帧移动,小按住R键进行拖拽。2019以后,Unity将此快捷键改为了2和Shift+2, 2键和之前使用方法一样。Shift+2,则作为开启关键帧跟随的开关。...

2021-10-24 08:07:46 2301

原创 Quaternion.LookRotation作用

Quaternion LookRotation(Vector3 forward, Vector3 upwards);forward表示z轴朝向的向量,upwards表示y轴朝向的向量。public Transform Cube0; //被改变的cubepublic Transform Cube1;public Transform Cube2;public void Update(){ }

2021-10-20 08:16:14 907

原创 Unity WebGL网页背景透明化(2021更新)

针对上一篇文章Unity网页透明化,做进一步补充完善。

2021-09-14 22:22:32 2889 12

原创 Unity WebGL解决由于分辨率过低导致的模糊问题

背景通常情况下,我们制作的界面要做为子网页,或者内嵌网页给到前端同学使用。有时前端同学的界面分辨率做的比较低,我们必须制作符合他要求的分辨率。而Unity制作的webgl,打包后设置的分辨率会影响画面精度。这就引发了一个问题,若我们按前端的分辨率制作,会导致我们画面精度很低,如果是大屏类项目,则更会模糊不清。所以我想到一个好办法,那就是把Unity做好的html网页分辨率乘n倍,然后给Unity网页加个壳(用一个html将Unity网页嵌入进去),把整体的外壳网页缩小n倍。解决方案以需要给前端1

2021-09-12 07:31:06 3666

原创 Unity WebGL 获取当期时间DateTime.Now异常问题

使用DataTime.Now,并截取字符串要注意:编辑器中和WebGL中,时间格式顺序不同。编辑器中顺序为年月日,WebGL中顺序为月日年。若不注意,打包后会出现莫名的Bug。建议不要截取字符串,使用直接使用DateTime.Now.Day和 DateTime.Now.AddDays(num),获取字符串。

2021-09-12 06:52:54 594

原创 Unity使用ContentSizeFitter组件无法获取大小等属性

ContentSizeFitter组件修改Text大小,不会立刻修改大小,需要等待一帧,立刻获取大小得到的长宽都为0。可以调用方法UI.LayoutRebuilder.ForceRebuildLayoutImmediate立刻强制重建此组件,在获取大小

2021-09-12 06:44:07 977

原创 unity打开项目异常问题和射线检测层级问题

unity it looks like another unity instance is running 问题1.删除temp文件夹,再打开。2.如果文件夹设置成只读了也会这么提示。射线检测层级问题设置physics.raycast的layermask参数,将需要检测的添加进去。...

2021-05-25 22:43:04 696

原创 UnityUI高级效果特效UIEffect

Github网址:https://github.com/mob-sakai/UIEffect

2021-05-25 22:11:46 1339

原创 UnityWebGL在谷歌火狐等浏览器无法打开本地网页问题

原因是这几个浏览器默认无法打开本地网页,如果把网页放到服务器,通过html链接进入可以打开。或者可以进行下面的操作,以打开本地网页。火狐1.在导航栏中输入about:config2.搜索security.fileuri.strict_origin_policy参数3.单击该参数将其更改为false谷歌1.如果您没有台式机上的Chrome浏览器,可以为其添加快捷方式2.右键单击快捷方式,然后选择属性3.选择目标文本框,到最后,添加一个空格并添加-allow-file-access-from-

2021-05-25 22:08:06 3162

原创 阿里云服务器搭建使用教程(四)域名使用及备案

搭建自己的网页肯定要有自己的域名(网址)了,不然链接都是一堆ip地址很丑的。不要看阿里云上域名1元/年起就购买了。先看下注意事项。0.购买域名前的注意事项域名:必须备案才可正常使用域名备案:要求服务器有效时常3个月以上如果你是试用的一个月服务器,就算购买了域名也没有用。不然进入网址无法看到网页,会出现下面的样子。所以购买域名之前还需要购买3个月以上的服务器。点击下面链接可以领取优惠券和直达超低价新人优惠界面,非学生也可以90作用一年。大额新人优惠券新人福利专场开发者成长计划我是点击

2021-04-08 11:48:48 903 1

Unity Global Snow 2 v8.3.1 下载地址

Unity Global Snow 2 8.3.1,UPR最新版积雪插件下载地址,非免费

2023-05-19

Unity Global Snow 2 v8.3.1,UPR最新版积雪插件

Unity Global Snow 2 8.3.1,UPR最新版积雪插件

2023-05-18

Enviro 3 - Sky and Weather3.0.5(unity插件)

Enviro 3 - Sky and Weather3.0.5(unity插件) 供学习交流使用,请支持正版。

2023-03-28

透明数字贴图三个(测试用)

透明数字贴图三个(测试用)

2023-03-28

背景透明数字4(测试用贴图)

背景透明数字4(测试用贴图)

2023-03-28

背景透明数字3(测试用贴图)

背景透明数字3(测试用贴图)

2023-03-28

背景透明数字2(测试用贴图)

背景透明数字2(测试用贴图)

2023-03-28

TriLib 2 动态加载FBX

TriLib 2 动态加载FBX

2023-03-28

Vectrosity画线插件

Vectrosity画线插件

2023-03-28

Line Renderer Pro 1.0画线插件

Line Renderer Pro 1.0画线插件

2023-03-28

Fast Line Renderer画线插件

Fast Line Renderer画线插件

2023-03-28

用于phthon测试的圆环透明通道图片

用于phthon测试的圆环透明通道图片

2023-03-13

ShaderGraph渐变材质

ShaderGraph渐变材质 模型从顶部到底部的颜色渐变

2023-03-07

A-Pathfinding-Project-Pro-v4.2.17(最新版)

Unity寻路插件 A_Pathfinding_Project_Pro_v4.2.17(最新版)

2023-02-27

Simple Traffic System 1.0.56(Unity交通插件)

Unity交通插件Simple Traffic System 1.0.56

2023-02-27

Mobile Traffic System1.3.3(Unity交通插件)

unity交通插件Mobile Traffic System1.3.3

2023-02-27

Unity插件Shapes最新版 4.2.1

Unity插件Shapes最新版 4.2.1

2022-11-29

UnityWebGl与Web前端通信,互通消息

Unity与WebGl通信工具脚本 测试Demo 教程https://blog.csdn.net/boyZhenGui/article/details/114374111?spm=1001.2014.3001.5501

2021-03-05

AVPro Video 1.11.4最新版视频播放插件

AVPro1.11.4最新版视频播放插件。 播放本地视频和在线视频。 支持多个平台。 测试可用。

2020-09-21

网格生成器,通过边界顶点生成网格

网格生成器,通过边界顶点生成网格。 传递世界坐标数组(边界顶点数组),来生成网格。 得到生成的GameObject。

2020-08-09

UnityWebGL背景透明(画布透明)Demo和项目

Unity WebGL版,背景透明化(画布透明),显示Html网页背景。内含Demo和项目文件。unity版本2018.4.2,测试通过。

2020-04-16

UnityWebGL播放在线视频m3u8两种方案

UnityWebGL播放视频两种方案, 第一种方案,AVProVideo,非webgl也可用 第二张方案,使用html的内嵌网页

2020-04-15

Unity WebGl播放m3u8在线视频(监控,直播)的项目和Demo

Unity WebGl播放m3u8在线视频(监控,直播)链接Demo和项目,unity新版链接和旧版链接都有

2020-04-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除