自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 设计模式-------观察者模式

观察者模式例如:1.当一个对象管理着两个UI,其中一个UI依赖于另一个UI。将两者封装在独立的对象中以使他们可以各自独立地改变和复用。2.当一个UI界面发生改变时,需要同时改变另一个uI界面,但是不知道具有改变哪些内容。3.当一个UI界面必须通知另一个UI界面时,但是它又不能知道其它UI界面是谁。也就是说,降低它们之间的耦合性。UI管理类UIMgrpublci class UIMgr{ UILoginView LogonView; UIMainView Manview; pub

2020-08-13 09:07:51 188

原创 基于泛型单例的对象池管理类(笔记)

using System;using System.Collections;using System.Collections.Generic;using UnityEngine;public enum PoolType{ OneType, TwoType}[单例基类](https://blog.csdn.net/FireworksFlower/article/details/107492564)public class PoolMgr:SingleBase<PoolM.

2020-07-21 17:07:30 258

原创 泛型基类单例 where约束(笔记)

using UnityEngine;public Class SingleBase<T>:MonoBehavior where T:MonoBehaviour{ private static T _instance; private static readonly object _lock=new object(); public static T Instance() { lock(_lock) { _instance=FindObj

2020-07-21 16:55:03 281

原创 unity 防沉迷PlayerId接入流程

1.首先在packageManager收索Player Identity然后点击安装如图2.然后打开projectSettings登录账号,进入服务3.创建ID Domain4.创建成功后5.同4一样的填创建6.输入刚刚填的id7.并获取APP7.创建好了APP之后,打开如下打开场景如下将下面的复制然后就可以运行了之后验证邮箱,手机号都可以,而且会受到验证码。然后就是实名验证界面是弹出浏览器模式的好了这个就到这里了,有什么不懂的可以留言...

2020-07-20 08:44:50 3221 13

原创 关于Application.persistentDataPath在安卓路径的坑

1.首先Application.persistentDataPath路径在安卓加载的文件是些能被修改的文件才放在这里。2.Application.persistentDataPath+“/”+“文件名称+后缀“。标题 加载文件那我们加载安卓Application.persistentDataPath路径下的文件如何加载呢?1.一般如果是些数据文件首次加载都是放在Application.streamingAsset路径下的//加载文件时判断文件是否存在if (!File.Exists(path))

2020-07-13 11:07:31 6243

原创 字符串和byte[]之间的相互转换(格式)

byte[] buffer = Encoding.UTF8.GetBytes(字符串);

2020-07-11 13:55:57 2440

原创 unity 经典报错集合

1.You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings. 解决方法:![在这里插入图片描述](https://img-blog.csdnimg.cn/20200701101316928.png?x-oss-process=image/watermark,t

2020-07-01 10:13:43 6438 2

原创 怪物方向浮标,怪物指向浮标

public enum ImgShowType { ellipse, rectangle } private GameObject _target; private GameObject originPoint; private RectTransform _img; private float a = 0, b =...

2019-11-09 17:49:09 275

原创 UI中代码优化,减少消耗,UI搭建的注意事项

1.代码中尽量少出现gameObject.setactive()这样。可以使用改变位置来达到玩家看不到 的效果2.在Update中不要出现gameObject.setactive(),enable之类等的代码。尽量想办法在某个时刻来更新它,实在不行就改位置。等,3.在Update()中尽量不要出现this.transfrom.postion,可以使用一个临时变量来获取。这样也是可以减少消耗的。...

2019-11-01 18:01:16 206

原创 两个功能代码之间的相互调用

在我们写功能时,两种功能出现的顺序,以及相互直接调用等。1.这时候最简单的办法就是在其中的一种功能的脚本中引用另一功能的类。例如: public class Test1{publicTest2 test2;====>引用另一种功能的类。}public class Test2{}这种方法有很大的问题,就是耦合性太大。2.使用一种办法就是写一个管理类:public class M...

2019-11-01 17:26:42 552

原创 设计模式——---------------------------------状态机模式

什么时候可以使用状态机模式呢?(状态比较少时都是可以使用状态机模式的)比如:开灯,关灯。可以使用状态机模式处理:敌人巡逻,当玩家到了警戒距离时,就会追击玩家,当到达了攻击距离就会攻击敌人。巡逻-----追击----攻击—巡逻代码实现://状态控制类 public class ControlState {public State state;//切换状态public void...

2019-09-05 23:03:48 288

原创 设计模式-------------------------建造者模式

说到建造者模式,建造物,比如:房子;建房子:先建造地基—做墙----窗户—盖板子-----楼梯。。。。建造房子,都按照部位一步步建造出来的。组装电脑:主板—电源----cpu----内存条----显卡。。。。角色:头–身体—手----脚这样的类型都属于建造形式,所以我们可以想到一种模式的是建造者模式:代码实现:比如角色:public class Charactor { pu...

2019-09-04 20:01:26 159

原创 设计模式---------------访问者模式

说起访问这模式,你们可能认为是访问某个对象吧。其实并不是,我自己谈谈自己的理解吧。例如://咖啡抽象类public abstract class Coffee{pub abstract float GetMoney();}//白糖咖啡public class WhiteSugarCoffee:Coffee{pub override float GetMoney(){r...

2019-08-31 17:47:58 195

原创 设计模式

转载自: https://my.oschina.net/u/171160/blog/3059336研磨设计模式(电子版高清带书签) : https://u632278.ctfile.com/fs/632278-376170149重构与模式 : https://u632278.ctfile.com/fs/632278-376166576设计模式之禅(第2版): https://u632278....

2019-08-23 14:46:46 168

原创 NavMeshComponents插件(NavMeshPrefabInstance)----------预制体绑定NavMeshDate(unity2018.3)

如果你去查找资料,可以找到一堆关于NavMeshComponents的内容(都是一些5.4左右版本),但是对于NavMeshPrefabInstance(unity2018)几乎没有(本人找到了官方的但是都是英文,而且很麻烦)所以,我就自己找问题。1.想要将预制体和NavMeshDate绑定在一起肯定少不了NavMeshPrefabInstance.cs脚本。就自己修改了一下代码:1.找...

2019-08-22 17:27:25 1617

原创 NavMeshAgent 寻路导航笔记---------组件API和参数

NavMeshAgent 寻路导航组件:NavMeshAgent 组件面板属性:agent.updateRotation = false; //不允许NavMesh来旋转角色 agent.updatePosition = true; //允许NavMesh来移动角色agent.velocity.magnitude 这个也是速度, GetComponent().SetFloat(“Speed”...

2019-08-19 21:03:26 3145

原创 寻路导航NavMeshAgent笔记---------------重要API和参数

1.public NavMeshPath path { get; set; } 用来存储的路径的2.public int walkableMask { get; set; } 可以通过的层级3.public int areaMask { get; set; } 可以通过的区域4.public float remainingDistance { get; }剩下的距离***5.publi...

2019-08-19 21:00:07 400

原创 行为树笔记-------------------------变量同步

添加组件Variable Synehroizer组件(行为树插件)可以将变量和一个变量保持相同

2019-08-19 11:22:27 323

原创 行为树心得 ---------任务之间的调用

先上图:1.在一个任务中定义一个任务选择绑定的任务现在就可以调用Wait任务的参数以及方法。

2019-08-19 11:15:15 320

原创 行为树笔记--------------Event(事件)

1.通过创建任务节点:send event 发送事件has received event 接收事件2.通过代码var behaviorTree = GetComponent< BehaviorTree >();behaviorTree.SendEvent< object >(“Event”, Vector3.zero);...

2019-08-19 10:57:58 1006

原创 行为树笔记--------------------代码获取行为树的变量

局部变量:public BehaviorTree behaviorTree;获取行为树的变量:var value=behaviorTree.GetVariable(“value”);设置行为树的变量:behaviorTree.SetVariable(“value”,value);全局变量:GlobalVariables.instance.GetVariable(“value”);Glo...

2019-08-19 10:48:00 804

原创 行为树笔记心得:断点调试

行为树也是打断点调试的:设置断点,然后运行它就会在此处停止这里绿色代表是正在运行中,灰色代表没有被印象,有红色X的代表,运行失败,绿色√代表成功上图调试时可以观察参数的变化调试也可以打日志查看:这个打勾就行了...

2019-08-19 10:36:08 507

原创 行为树笔记心得:------行为管理器

行为管理器通过添加组件Behavior Manager(必须要导入行为树插件,插件自带的)Behavior Manager的面板:1.Update Interval类型:Every Frame(每帧更新)Specify Seconds(按照指定的时间进行更新)Manual 手动进行更新方法:BehaviorManager.instance.Tick()...

2019-08-19 10:23:53 517

原创 行为树笔记心得-------获取行为树的状态

获取当前行为树的状态的方法:behaviorTree.ExecutionStatus;

2019-08-19 10:16:10 375

原创 动态加载行为树

using UnityEngine;using BehaviorDesigner.Runtime;public class CreateTree : MonoBehaviour{public ExternalBehaviorTree behaviorTree;void Start () { var bt = gameObject.AddComponent<AIBeh...

2019-08-17 20:58:36 574

原创 行为树 中断的理解

1.中断类型分为4种:NoneSelf3.Lower PriorityBoth2.第一种就不说了,不会打断任何行为self类型:必须满足条件:1.当前分支处于Running状态2.必须是条件节点才能监听状态变化来打断别人3.条件节点的优先级必须比Running节点的优先级高(即在其左边)4.条件节点必须是当前组合节点(设置了打断类型为self的节点)的直接子节点,孙子节点...

2019-08-15 20:46:03 2980 1

转载 unity 行为树2

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/lyh916/article/details/45477147设置SharedVariable与GlobalVariable:上面的SharedV是SharedVariable,变量范围是当前行为树;下面的GlobalV是Globa...

2019-08-13 20:07:46 345

原创 ***Excel表的读取***

1.表是怎么读取的它是一般是要去掉表头,也就是第一行一般不是数据,可能一般都是一些描述,注释等。然后从从正文数据开始读,你传入是Key值是多少,就可以从这里开始找,有相同的key和你传入的Key相同就说明就是你要找的对象。然后就将其返回出来就行了。2.表中的格式,类型非常重要我就是把一个类型定义为float类型结果获取的时候就报错了。所以遇到float 类型就用string类型代替吧。...

2019-06-18 10:22:11 201

原创 unity 桌球碰撞反弹

1.根据入射方向得到反射方向,并保留相同速率private Vector3 m_preVelocity = Vector3.zero;//上一帧速度public void OnCollisionEnter(Collision collision){ if (collision.gameObject.name == "wall") { ContactPoint...

2019-05-01 10:27:43 6019 5

NavMeshInstancePrefab.unitypackage

预制体绑定网格导航数据NaMeshDate.自己稍微修改了下,就拿出来分享,有不好的地方请指教。

2019-08-22

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

TA关注的人

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