自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (2)
  • 收藏
  • 关注

转载 unity3D的GC回收机制

介绍:  在游戏运行的时候,数据主要存储在内存中,当游戏的数据在不需要的时候,存储当前数据的内存就可以被回收以再次使用。内存垃圾是指当前废弃数据所占用的内存,垃圾回收(GC)是指将废弃的内存重新回收再次使用的过程。  Unity中将垃圾回收当作内存管理的一部分,如果游戏中废弃数据占用内存较大,则游戏的性能会受到极大影响,此时垃圾回收会成为游戏性能的一大障碍点。一、Unity内存管理机制简介要想了解垃圾回收如何工作以及何时被触发,我们首先需要了解unity的内存管理机制。Unity主要采用自动

2022-02-28 15:13:27 1970

原创 unity3D 引导(镂空)

已经好久没写博客今天我写新手必须写的新手引导(注:本文出自unity3D游戏开发这本数的案例)shaderShader "Unlit/Default_Mask"{ Properties { [PerRendererData] _MainTex("Sprite Texture",2D)="while"{} _Color("Tint",Color)=(1,1,1,1) _StencilComp("Stencil Comparison",F

2022-01-12 13:16:25 3198 1

原创 unity2019版本的如何打包(或打包时没Build System怎么办)

首先我们先看一下2018和2019的版本左边时是2018右边是2019我们可以看到2019看不见Build System的 如果想了解Build System的话可以看我的上一篇文章关于unity安卓(Android)打包时出现的提示(Gradle build failed. see the Console for details)_一只学习的小鸟的博客-CSDN博客这个时候我就只能用Build System.Gradle(unity默认的)那么它应该如何操作哪首先我们先点击Pla...

2021-12-21 16:42:09 6406 7

原创 关于unity安卓(Android)打包时出现的提示(Gradle build failed. see the Console for details)

最近安卓包出现这样的提示于是我上网查询了很多的前辈的怎么解决的终于在不断的查找中我得到了我想要的答案接下来我就和大家一起分享我搜索的结果首先我们先看一下我们的步骤是正确1、修改Other Settings下的 Bundle Identifier 中的com.Company.ProductName为自己的自定义的,例如:com.AB.abc。2、在Other Settings设置中选择Minimum API level,版本不能低于自己的手机版本。3、以上的设置都完成后,就可以选择B.

2021-12-21 16:05:26 5990 6

原创 unity3d Socket异步连接(附带一个案例)

socket同步同步就是有阻塞,比如接收数据时如果没有数据就等待,等到有数据了再执行下一步代码。socket异步异步就不用等待,比如指定接收数据后就会继续执行一下步代码,等到有数据了再跳出当前执行的代码转去执行异步调用。同步的话通常要配合多线程(否则在阻塞的时候当前线程会停止,如果当前线程是UI线程就表现出好像界面停止的样子)。左边是客户端右边是服务器服务器储存客户集合客户类(服务器的)using System;using System.Collections....

2021-12-14 19:54:18 2514

原创 Unity3D Socket同步连接并且处理粘包(附带一个案例)

Socket同步连接是比较常见的,Socket是什么Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。什么是TCP/IP、UDP?(本文是TCP)TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制...

2021-12-13 22:16:13 5012

原创 面向对象的简介(附带一个案例)

最近学习了《大话设计模式》让我收益颇多让我对明白了之前的自己的不足1.关于命名规范 命名规范分很多种 如比较常见的 驼峰法 下划线(_)等等(如果在工作中尽量的多学前辈的变量名 绝大多数公司有自己的一套命名)2.面向对象: 对象指的是一个自包含的实体,用一组可识别的特性和行为来标识 我们经常说要向对象,面向对象的三大特性 1.封装 2.继承 3.多态 (1)封装:将数据和操作组合到一起,并决定哪些数据和操作对外是可见的。 (2)继承:父类中的变量和行为,子类可...

2021-12-10 20:25:30 668

原创 unity3d 实现LOL英雄的寒冰的(万箭齐发)

先上效果图放到人物身上的脚本Thefanattacksusing System.Collections;using System.Collections.Generic;using UnityEngine;public class Thefanattacks : MonoBehaviour{ public string BulletOrigin;//子弹父类的路径 public string bulletModelPath; //子弹模型路径 public int

2021-11-30 20:00:44 641

原创 关于状态机和行为树的优缺点

由于最近学习的行为树让我也是徒增了很多烦恼,有的时候我一直在想行为树和状态机有啥区别都是控制人物的行为,于是我也开始上网看看前辈们的解释。下面是我的一些总结状态机:FSM :具有有限数量的状态,任意时刻都处于有限状态集合中的某一状态。(当其有事件(event)或条件发生时,将从当前状态转换到另一个状态,或者仍然保持在当前状态。)优点:编程快速简单。易于调试,很少的计算开销 ,灵活性缺点:不易于拓展,新的逻辑需要新的状态。关于这个缺点可以解决那就是在状态运行多个小Action..

2021-11-27 09:29:30 5936

原创 Hierarchy窗口扩展(给物体添加一个标识)

第一种InitializeOnLoadMethod//初始化加载方法EditorApplication.hierarchyWindowItemOnGUI 当绘制层次窗口里面Item项时候using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class Script{ [InitializeOnLoadMethod]//初始化加..

2021-11-22 16:34:04 2603

原创 unity编译器 Selection,AssetDatabase,EditorUtility (EditorUtility基础篇)

今天是最后一篇EditorUtility基础关于着个类我用的不是很多,希望对大家有所帮助using UnityEngine;using System.Collections;using UnityEditor;public class TestEditor : EditorWindow{ static string title = "一只学习的小鸟"; //DisplayProgressBar和ClearProgressBar配合运用 //DisplayPro.

2021-11-15 20:04:01 2452

原创 unity编译器 Selection,AssetDatabase,EditorUtility (AssetDatabase基础篇)

关于AssetDatabase类懂得不多我把我知道的几个Apl写了出来(等以后我了解的再深一点我会把其他APL进行补充)其中也有我对这些APl的理解using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class AssetDatabases{ [MenuItem("AssetDatabase/Contains")]

2021-11-12 10:37:33 1607

原创 Unity编辑器基础 EditorGUILayout (大部分用法)

累了不多说 (大家可以将代码复制可以看的更清楚更明白)如图效果图关于效果图最后它的代码我隐藏掉了如何想看看可以自行打开using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class Mybianyi : EditorWindow{ string PasswordField = ""; stri...

2021-11-11 11:39:36 16864 6

原创 unity编译器 Selection,AssetDatabase,EditorUtility (Selection篇)

学习目标:今天学习Selection类unity Selection类他负责你的选择朋友们我也只是写一些常用的因为关于它的用法比较多所以我也只需要掌握常用的至于其他的大家可以去官方查找API谢谢大家的观看学习内容:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class MySelection { [Men...

2021-11-10 20:21:42 909

原创 unity3d 关于如何画扇形

为啥我今天写这个画扇形主要原因是看见我的同学们为啥画一个扇形不停的找资料,可找完了又嫌弃人家写的多所以那我就花了自己两节课搞了一下,(其实我当时看别人写的一大堆也用点不太懂,主要是我数学太差了)首先我们先创建一个项目在项目中随便创建一个Cube 3d物体然后添加一个LineRenderer组件(这个组件就是一个关于画线的,这里我会说几个我知道的点,如果想具体了解这个画线的组件大家可以上官方查找资料)就如图下面的这样LineRenderer组件中的Positions他就是存储你画线的...

2021-11-02 10:41:54 2047 3

原创 unity3d 2种天空盒实现方法(详细步骤)

一.第一种1.我们将自己需要的贴图准备好放入我们的unity工程2.创建材质球将材质球的shader标签进行修改改为Skybox-》6 Sided会出现大家可以自行补充照片(左图没有附图片)(如右图附图片)3.然后我自己的是Window-》Rendering -》Lighting Settings有些unity版本或一些其他原因可能是Window-》Lighting-》Settings (其实都是一样的)4,你会看到这样的界面我们这次只需要Environment下..

2021-10-29 18:04:44 7375

原创 unity3d 九宫格切割以及如何获取切割完的图片

1.我们先将自己需要切割的图片放入我们的unity项目然后我们点击图片看图片的Inspector里面的属性首先是它的纹理类型(Texture Type)改为Sprite(2Dand UI)就是精灵 后面2Dand UI就是可以应用到2D或者 UI上然后我们将图片的Sprite Mode(精灵模式)改为Multiple(多个)然后点击 Sprte Editor(精灵编辑器)注意这时如果你点击Sprte Editor它之后如果出现了No Sprite Editor ...

2021-10-28 09:47:33 3515 3

原创 unity3d UI粒子特效裁剪

学习目标:unity3d UI粒子特效裁剪学习内容:先从unity商城中下载粒子特效unity商城有很多免费的unity商城的位置在Window——>Asset Store(快捷键Ctrl+9) 接下来步入正题(我会把粒子特效资源发到我的资源下面大家可以自行下载)1.我们先搭载好这样一个简单的场景2. 我们在滑动列表(Scroll View)的Content下面放一些item(Image)然后在其中的一个(或着多个)下面放上粒子特效(如图所示)3.我...

2021-10-26 09:48:56 2071 2

原创 unity3d 减少DC(DrawCalls)的方法之一光照贴图

首先我们先

2021-10-21 11:29:34 896

原创 unity3d 实现圆形小地图

实现圆形小地图我们需要用到渲染纹理1.渲染纹理2.RawImage图像这个时候我们就需要把渲染纹理放入rawimage图像的Texture里这还不算完接下来还需2步1.在生成一个相机,生产的相机下面有一个Target Texture 目标纹理 我们把渲染纹理给附上去就会形成正方形的小地图当然这不是我们要的最终效果最后一步生成一个image图像附上图片一张圆形的图片再让iamge添加mask组件mask是实现遮罩的 再然后让rawimage...

2021-10-14 19:10:51 1616 2

原创 unity3d 如何UI优化和减少DC(DrawCall)

首先我们需要知道什么是DC也可以叫做DrawCall,DC就是每次Cpu传给Gpu的过程就是一个DC这个时候就会有人问为啥要减少DC 减少DC能帮助我们什么,1.为啥减少DC就是减少CPU传给GPU这样的过程2.减少DC能帮助我们什么减少DC它帮助了我们让游戏性能得到很大的提升我会把我知道的都说出来首先我们常用的关于Image的贴图 ,贴图如减少DC我们可以做一个图集1.图集如何创建图集:在Project 点击右键—>Create–>Sprite At...

2021-10-13 11:46:59 2610

原创 lua写换装(合批)

最近搞换装有点头疼当然换装并不难(这是对C#而言)但我们不能局限于只换装我们也要考虑一下DC(drawcalls),我这边时间有点紧所以方法没有封装(但可以换装)大家多一理解为主接下来步入正轨首先我们在c#写的换装思想是不变的就是找材质,网格,以及骨骼,C#和lua基本上都是同样的操作,但是我在写lua的时候遇到了一些问题:1.类型,在lua里基本上没有类型的概念比如你在C#可以写int sum=1 但是lua就简单多了直接 sum=1就行,这样我们在换装的时候类型就没有办法固定这时我们需要用CS...

2021-09-25 16:30:48 153

原创 关于unity用LineRenderer画图

一.学习的知识1.LineRenderer的用法以及点击事件二.画图代码using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.EventSystems;public class Draw : MonoBehaviour,IPointerDownHandler,IPointerUpHandler,IPointerExitHandler,IPointerEn.

2021-09-19 11:09:10 809 1

原创 关于unity 3d人物换装

关于unity 3d人物换装要掌握0.认识SkinnedMeshRenderer(蒙皮网格渲染器)1.网格2.材质球3.绑定骨骼

2021-09-17 17:58:27 729

原创 2021-09-16帧同步和状态同步的优缺点

状态同步 - 优点1.它的安全性非常高,外挂基本上没有什么能力从中收益。2.状态同步对于网络的带宽和抖动包有更强的适应能力。3.在开发游戏过程中,它的断线重连比较快,如果我的游戏崩溃了,客户端重启之后只需要服务器把所有重要对象的状态再同步一次过来,重新再创建出来就可以了。4.它的客户端性能优化优势也比较明显,比如优化时可以做裁剪,玩家看不到的角色可以不用创建,不用对它进行运算,节省消耗。状态同步 - 缺点1.它的开发效率相对帧同步而言要差一些,很多时候你需要保证服务器与客户端的每一个角色对象的

2021-09-16 19:27:05 646

原创 unity3d 血条跟着人物

这边我是将人物这身的位置转变成屏幕坐标这样我们在把我们的血条就会跟着人物

2021-09-10 14:35:25 394

原创 把物体保存到下一个场景

当我们自己做游戏的时候我们需要把我们的主角保存到下一个场景其实也就是一句话DontDestroyOnLoad(gameObject);//这代码就是把你想要的物体保存起来SceneManager.LoadSceneAsync( );//这就是一个挑战场景...

2021-09-09 14:26:15 227

原创 unity 3D物体拖拽

直接上代码using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.EventSystems;public class Drag : MonoBehaviour,IDragHandler{ public void OnDrag(PointerEventData eventData) { Vector3 screenPos = Cam...

2021-09-09 09:46:57 2611 1

原创 unity 相机平滑跟随

通过网上的查找修改最终写了一个这样的平滑跟随我也是一个初学者如果写的不好 大家多多谅解

2021-09-08 12:53:44 315

空空如也

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

TA关注的人

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