自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

光的博客

整理Unity中的知识点和心得

  • 博客(50)
  • 资源 (1)
  • 收藏
  • 关注

原创 Unity资源-音效初识

音视频的数字信号单位,值越大,信号传递越快,对应的文件也越大,内存占用也会大。

2023-04-09 01:05:11 717

原创 Unity资源-模型初识

模型资源在导入后添加了骨架,并且是在运行时实例化,会自动添加一个Animator组件,引擎在每一次的Update都会调用Animator,造成非必要的浪费,非类人性模型在导入时可设置不生成骨架。

2023-04-09 00:49:32 148

原创 Unity资源-纹理压缩格式

纹理压缩格式像ETC、DXT、ASTC等都使用块压缩方案,将一整张纹理以像素块划分为一个单独的区域进行独立存储,比如4*4,6*6,12*12等等,块压缩方案可以在访问纹理数据时,减少内存占用,并且单独块的大小都比较小,加载速度快。3、DXT(X):例如DXT5等,与BC(X)相似,适用于PC,优点在于每像素为可以选择4(RGB为4位/像素(BC1又名DXT1), RGBA为8位/像素(BC3又名DXT5))。1、真彩值:不经过压缩算法,直接使用真彩值,内存占用大,纹理质量非常高。

2023-03-22 00:13:45 874

原创 Unity资源-纹理初识(原理篇)

开启Mipmap之后,纹理所占内存比原大小多 30%,原因为Mipmap是将一张纹理进行多级生成,并每级差异为2次幂,举例一张1024 * 1024的纹理,生成512 * 512,256 * 256,128 * 128,64 * 64,32 * 32,16 * 16,8 * 8,4 * 4,2 * 2,1 * 1 ,后几级相加内存占用总和约为原纹理的 30%纹理压缩格式Unity常见为 ETC,PVRTC, ASTC等,也可称为纹理压缩算法 ,用于CPU解包后给GPU提供的纹理渲染数据。

2023-03-16 00:01:59 708

原创 Unity旋转 欧拉角和四元数

欧拉角产生死锁的主要原因是欧拉角值变化时,Y轴的变换时在模型坐标系中变换,其他轴是在世界坐标轴中变换,所有会在某些时刻发生模型坐标系的某个轴与世界坐标系的某个轴发生共面关系,也就是同轴、旋转面平行,这种情况下导致某个轴的自由度消失,也就是失效,无法进行正常的变换,但四元数不存在这个问题,四元数表示的事3D空间下的旋转值。欧拉角旋转在Unity中的固定旋转顺序为Z, X, Y,例如要旋转到(1,2,3)旋转过程是(0,0,3)(0,2,3)(1,2,3),由于欧拉角旋转会出现。

2023-03-13 23:21:33 1425

原创 面向对象(一):面向对象的基础概念

面向对象是从事程序开发必不可少的一个话题,但什么是面向对象却不是每一个从业者都能充分的理解,大多数都是用着面向对象编程语言,书写着面向过程的脚本。首先确定一个统一的认知:面向对象语言并不等价于面向对象编程。这二者都不是针对编程语言来讲的,是思维方式。面向过程:数据结构+算法面向过程指的是我们在解决一个问题或者要完成一个事项的过程中,所有的步骤都依次执行,直到结束,例如手机流水线,要先安装好主板,再安装CPU等零件,再安装屏幕,再到检测,再到装盒,最后塑封(过程可能有遗漏,重点是讲述这个模式)。每一个步骤都需

2022-07-10 17:25:45 854

原创 UGUI深度学习(二)-- 浅谈特效穿层问题

浅谈特效穿层简单理解:图示显示为particle和UI并不处于同一渲染队列中,整体是分开渲染的。处理方案:让二者处于同一渲染队列中进行统一渲染管理测试:public class APIS : MaskableGraphic{ Mesh mesh; // Start is called before the first frame update void OnEnable() { ...

2022-03-06 16:46:27 4208

原创 Unity编辑器(一)-- 自定义UI拖拽

没有专门处理UI界面岗位的情况下, 开发者需要自己拼合界面,但是Unity默认的UI创建方式有些不太舒服,需要先Create再选中UI最后才能选中自己想要的UI生成出来,而且创建列表内容较多,没办法直接一眼找到,所以做了一个自定义的UI拖拽,先上示例。//视频上传维护中。。核心思路:1.创建一个单独编辑器面板2.可自定义配置UI资源,包括自定义的UI界面3.可通过拖拽的方式生成对应UI技术点梳理:1.EditorWindow,用于制作单独编辑器面板2.DragA...

2022-03-06 16:22:39 4896

原创 XLua接入笔记

近期项目升级到Unity2018之后,需要使用IL2CPP进行打包,导致之前使用的直接替换 .dll 的更新方式无法继续使用,决定接入XLua进行热更,此篇文章做个简单的爬坑记录。目录一、更换热更方式的原由二、选择热更框架三、XLua导入工程四、XLua接入 1、luaconfig 2、pdf重写 3、Bridge桥接类五、坑点梳理(持续更新) 1、事件使用 2、pdf增加xlua交互...

2021-12-13 20:35:44 1358

原创 Unity 物理效果插件OBI使用记录,包含OBI-Rope绳索,OBI-Fluid,OBI-Cloth

做项目过程中需要用到一些物理效果,最终找到了OBI物理插架系列,在这里做一个使用记录。一、OBI-Rope绳索插件(版本3.2)Rope插件提供了很强大的绳子物理模拟效果,具体的案例可以参考插件里面的实例场景了解,这里为了帮助更好的了解Rope插件,做一个参数详细介绍:使用Rope绳索,首先需要在Hierarchy面板创建一个Rope,右键 --> 3D Object --&g...

2021-11-03 14:50:29 4155 2

原创 Shader学习随笔(二)

目录1、初尝Shader--重点梳理1.1 漫反射光照模型1.2 高光反射光照模型1.3 单张纹理1.4 凹凸纹理1.5 渐变纹理(类似卡通风格)1.6遮罩纹理2、Shader透明--重点梳理2.1 渲染顺序基本概念2.2 透明度测试2.3 透明度混合2.4 渲染顺序问题处理--Unity中1、初尝Shader--重点梳理在《Shader入门精要》一书中,初级篇包含:标准光照模型,漫反射光照模型,高光反射光照模型,单张纹理,凹凸映...

2021-10-28 17:15:40 1440

原创 Shader学习随笔(初)-- 持续更新

根据项目当下的需求,以及自己的兴趣,开始了Shader的学习历程,在逐步的学习过程中,整理出一些知识点在这里存档一下。目录一、Shader基础概念 1、渲染流水线简述2、对于学习Shader数学基础的见解3、初尝Shader--重点梳理漫反射光照模型4、初尝光照--重点梳理一、Shader基础概念 1、渲染流水线简述 计算机渲染流程从硬件上分为CPU(...

2021-10-28 17:15:12 1538

原创 Unity WebGL爬坑(终)

制作Unity WebGL已经有一段时间了,在之前也写过一些难点和卡点的文章,这篇将整个经历过的WebGL问题进行一个总结1、WebGL对于内存的要求比较高,主要是看浏览器支持的内存是多少,表现最好的是火狐和Google,基本上项目内存在1G以内是基本OK的。2、WebGL的网络连接需要使用WebSocket,这块服务器和客户端都需要进行处理。3、WebGL的互通在Unity的手册中有示例,不清楚的可以看下之前的文章。4、WebGL没有本地概念,只有缓存,需要定时清理缓存。5、Uni..

2021-02-23 14:07:03 1794 3

原创 Unity 时装换色

在处理游戏时装换色功能时,遇到了颜色不受脚本控制的问题,最后定位到问题是在纹理贴图上。由于贴图没有进行Alpha值划线,并且shader使用的是Unity自带Shader无法进行Shader处理,所以导致纹理贴图错误混合了色值。解决方案:美术对纹理图片进行划线,如果是不需要换色则将纹理去除透明通道。...

2021-02-23 13:54:55 458

原创 Unity2019 AB资源动画报错

错误日志:The Animator Controller (BSDS_attack03_03) you have used is not valid. Animations will not play在低版本升级到Unity2019.4之后出现AB资源中的动画数据错误问题,具体的操作是在Unity编译器失去焦点之后,再次恢复焦点会进行一次资源导入,这次资源导入导致AB资源动画错误。解决方案:在Editor->Preference->General->Script Change.

2021-02-23 13:50:13 1198

原创 Unity A*寻路插件简单解析

在使用最新版A*寻路插件时发现一些问题,本篇记录一下:使用的A*寻路插件是4.2.15 Pro版本根据插件自带的文档有个简单的了解 之后在操作中有些小问题统一归纳一下:GraphGraph一共是分为五种,GridGraph,Layered Grid Graph,NavmeshGraph,PointGraph 以及Pro版本特有的RecastGraph。五种Graph的区别从名称中就能了解,在项目中使用的是NavmeshGraph,也试用过其他几种,但是NavmeshGra...

2020-07-21 11:20:00 1556

原创 Unity发布WebGL爬坑杂记(七)

这几天在家办公很多东西都得自己搞定,这里遇到一个JS和Unity互调的问题,之前是前端负责JS部分的脚本,遇到一个问题之后索性自己去写了JS部分的内容,结果发现没有办法实现互调,查了很多资料,看了官方文档,之后问题解决了,这里就记录一下整个过程:首先我遇到的问题是需要JS传输一段数据给Unity,官方文档上面是这样写的:这个写的很清楚,就不过多解释了,但是如果直接在index.htm...

2020-02-19 12:09:16 1382 1

原创 Unity发布WebGL爬坑杂记(六)

在这段时期的开发过程中有很多和web端进行混合开发的功能实现,如何调用web端的接口/函数,以及web端如何调用Unity的函数,在此记录一下,PS :web端开发使用的是js、首先需要增加一个jslib,在unity特殊文件夹Plugins下新建一个jslib文件,内容如下:var MyPlugins = { sendScore:function(str) { /*va...

2019-10-21 10:44:32 1190

原创 Unity UGUI杂记——小地图

在小地图上面不通过摄像机的方式实现人物位置准确定位匹配,找了点资料但是实现出来的效果不太理想,最后发现其实很简单。。。代码如下:/// <summary> /// 地图显示 /// </summary> /// <param name="pos"></param> /// <returns>&l...

2019-10-21 10:24:31 245

原创 Unity发布WebGL爬坑杂记(五)

Unity发布WebGL必然会与Web端有通信,也就意味着要与js脚本有互相调用,这方面Unity官方文档中有相关资料https://docs.unity3d.com/2018.3/Documentation/Manual/webgl-interactingwithbrowserscripting.html与浏览器之间的通信分两部分,一是Unity脚本调用js脚本函数,二是js脚本调用Uni...

2019-09-10 10:35:57 1700 2

原创 Unity发布WebGL爬坑杂记(四)

之前的项目中有一个功能是实现在Unity中登录,输入信息之后要对账号和密码进行认证,这里采取的方式是使用Token,Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回 Token 给前端。前端可以在每次请求的时候带上 Token 证明自己的合法地位。这里做一下记录,代码如下(其中包含了之前在文章中写过的Sha256加密):p...

2019-08-06 13:46:38 1309

原创 Unity加密(Sha256方式加密)

之前在项目中涉及到了加密处理方面的知识,在这里做个记录,加密方式采取的是Sha256方式,是比较常用的加密,代码如下:public void Save() { Debug.Log(user.text+":"+ pass.text); if (user.text == null || pass.text == null || u...

2019-08-06 10:25:29 1976

原创 Unity 2D高亮

https://blog.csdn.net/lyh916/article/details/51487918感谢博主分享

2019-07-29 10:03:16 1395

转载 Unity时间显示的几种方式

https://blog.csdn.net/wlz1992614/article/details/51692162

2019-06-24 11:52:32 2996

原创 Unity开发WebGL平台爬坑(三)

一个很详细,较为完整的WebGL说明:https://www.jianshu.com/p/24d7df9c54be

2019-05-22 10:05:52 3246

原创 Unity判断指定物体是否在屏幕范围内

Unity判断物体是否在屏幕内

2019-05-09 17:06:26 9541

原创 Unity UGUI点击穿透处理

开发中遇到的问题是,3D物体挂载的脚本是使用OnMouseDown()函数实现点击,但是在打开UI界面的情况下点击3D物体发现UI界面被击穿了,3D物体的点击被触发了,解决方案如下:/// <summary> /// 检测是否点击在UI上 /// </summary> /// <returns></returns> ...

2019-05-08 16:35:26 6540

原创 Unity发布WebGL爬坑杂记(二)

Unity在发布了WebGL项目之后,在网页运行时会发现模型质量不高,锯齿较为严重。发布项目之前要看看Unity的QualitySettings是否设置正确,我出现的问题是模型锯齿比较明显,所以调整Anti Aliasing为8倍,默认是2倍,另外为了发布出来的项目更加适合于WebGL,将Name也就是上面的Level设置为对应的选项,我这里是Very High最为适合WebGL,因为是绿色...

2019-05-08 16:28:19 4205 7

原创 Unity实现动态改变DoTweenPath路径

接触DoTween不多,一般项目中没有使用很多,这次使用DoTween遇到一个问题,要实现一个路径功能,在指定路径位置要停止做操作,做完操作之后还要继续使用路径动画,查了官方API发现没有这方面的函数和接口(如果有大佬知道的话,麻烦评论区留言告知,感激感激!),之后就想了个办法,思路如下:在官方文档里找到了一个动态指定路径的函数DoPath(),就想看能不能动态指定路径实现这个功能 建立一...

2019-04-22 17:50:56 5504 5

原创 Unity实现类似于LookAt 的功能

Unity内置的LookAt函数可以让摄像机或者其他物体一直看向于指定的一个位置点,但是这个操作是在一帧的时间内完成的,我说需要实现的效果是在一个指定时间内,看向那个物体,显然LookAt是无法实现的,4个重载中没有指定时间这样的重载,所以就依据LookAt 的实现原理,自行规定时间,旋转过程使用Lerp进行处理。大致的思路是:先确定目标点和当前位置的向量值 根据所求出来的向量值使用四...

2019-04-22 17:41:39 3306

原创 雨松文章使用链接

http://www.xuanyusong.com/archives/950

2019-04-12 14:29:33 192

转载 Unity开发WebGL杂记——实现截屏功能

实现截屏功能,思路是截取当前画面的像素信息,保存到一个图片中,进行存储,使用时读取图片。private void Update() { if (Input.GetMouseButtonDown(0)) { //IsCapture = true; StartCoroutine(ScrrenCapture(...

2019-04-12 14:15:22 2310 8

原创 Unity发布WebGL爬坑杂记(一)

Unity发布WebGL端的项目的坑点比较多,目前的官方资料也很有限,刚开始进攻这个方向所以计划一边开发一边记录。想要发布WebGL一定要在安装Unity的时候把WebGL的SDK下载上,其他基本没什么需要设置的地方。 WebGL的打包很慢,要耐心等待,WebGL的打包需要注意PlayerSettings-->OtherSetting中的Strip Engine Code,百度有一大...

2019-04-12 10:43:37 5761 36

原创 Unity鼠标控制物体旋转要点记录

在开发过程中,完成了鼠标控制物体旋转之后发现点小BUG,因为物体720度旋转需要“Mouse X”和“Mouse Y”一起执行,为了使旋转的效果更为舒服使用了Rotate函数进行实现,但是相应的问题就出现了,Rotate是旋转函数,说明在执行控制物体旋转的时候物体是会一直进行旋转的,包括鼠标此时没有移动的时候或者在鼠标移动的时候,都会出现有物体自转的异常现象,我对解决这个小BUG的具体思路是:...

2019-03-22 15:20:31 3006 3

原创 Unity通过WWW进行外部Json操作

转载请备注原地址,谢谢!对Json数据的操作细分为,读取Json数据,写入Json数据,改Json数据。1.对Json数据的读取IEnumerator GetData() { WWW getDate = new WWW(url); yield return getDate; if (getDate.error != null)...

2019-03-22 15:11:50 1316

转载 Unity打包IOS爬坑记录

转载:https://blog.csdn.net/liuxiongtao_1124/article/details/72373800转载:http://gad.qq.com/article/detail/45575

2019-03-15 12:35:16 714

转载 UnityShader学习记录(三)

这篇文章主要说一下Shader里面的透明效果,透明效果在UnityShader中有两种方式,透明度测试和透明度混合,透明度测试是比较霸道的透明算法,它只有透明和不透明两种情况,也就是说这个UnityShader能实现的不是透明就是不透明,不会存在半透明现象,所以它的值就只有0和1两种。那么要想实现半透明效果的话就需要用到透明度混合了,透明度混合的值不像透明度测试一样只用0和1,它是可以存在中间值...

2018-09-25 09:45:01 234

转载 UnityShader学习记录(二)

在接触了一段时间Shader之后,简单的shader基本上是可以自行完成,比如漫反射,高光反射,纹理算法,凹凸算法,渐变纹理,遮罩纹理,透明效果,双面渲染的透明效果等等,记录一下。ps:本篇文章采自《UnityShader入门精要》一书。漫反射计算有两种,一种是逐顶点计算,一种是逐像素点计算。逐顶点计算:计算公式为 Diffuse = (light * diffuse)*ma...

2018-09-19 17:18:03 258

转载 UnityShader中的数学(矩阵)

PS:本文章摘取自《UnityShader入门精要》一书。对于UnityShader中的数学,矢量,标量什么的在之前的文章中已经有过介绍这里就不在叙述,这里重点的说一下矩阵,矩阵是什么东西,什么时候要用到矩阵,矩阵的存在能帮我们解决什么问题,下面就解释这些:Shader中使用的矩阵有平移矩阵,旋转举证,缩放矩阵,其中平移矩阵和旋转矩阵比较好理解简单一点,从名字中就能看出每个矩阵的功能...

2018-09-13 19:25:55 683

转载 UnityShader学习记录(一)

PS:本文章摘取自《UnityShader入门精要》一书。之前一直想Shader是一个很难的东西,在接触《UnityShader入门精要》之后感觉也不是想象中的复杂,但是想要学好shader是一个漫长的过程,基础篇和初级篇看完之后感觉收获挺大,为此,记录一下。在进入shader之前,需要把渲染流水线搞清楚,什么是渲染流水线?渲染流水线包括什么?渲染流水线举个例子,比如一个工厂做一个产品,...

2018-09-13 18:01:21 214

NGUI插件+NGUI_HUD_Text+案例

NGUI插件+NGUI_HUD_Text+案例 内含插件和案例,用来学习和参考

2018-07-11

空空如也

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

TA关注的人

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