unity学习笔记
一丁目赠我
念念不忘,必有回响
展开
-
Unity利用画面传输插件实现局域网数据传输
画面传输插件提供了TCP和UDP传输协议,故此我们可以利用它来实现这个功能。原创 2023-03-06 18:28:38 · 977 阅读 · 0 评论 -
Unity编辑器拓展最全实现
Unity编辑器各种拓展,Scene 按钮 Game视图,等等原创 2022-11-25 10:30:28 · 2423 阅读 · 1 评论 -
关于Unity的Animation如何检测动画的开始播放和结束播放
动画Animation原创 2022-06-06 10:38:36 · 1592 阅读 · 0 评论 -
Unity的VideoPlayer控制播放完毕
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.Video;public class testVedio : MonoBehaviour{ public GameObject go; public bool ison1 = false; // Start is called before the first frame updat.原创 2021-09-02 15:03:12 · 3282 阅读 · 0 评论 -
Unity实现文字逐个出现的特效
把下面的代码直接挂载到Text组件上面即可using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class TextEffects : MonoBehaviour{ string str; Text tex; int i = 0; //调整这个可以调整出现的速度 int index = 0; s原创 2021-07-03 14:45:34 · 4936 阅读 · 4 评论 -
Unity做一个电脑唯一识别码,激活软件的功能
功能需求,打开开发好的软件,首先需要进入激活界面,激活界面中事先已经拿到了本电脑的唯一识别码,然后复制识别码,到激活程序。拿到一个激活码,即可激活。需求分为两部分,第一部分是写一个加密程序,加密程序是通过对机械码,数据抽取,时间限制等拼接,组成一个加密字符串。第二部分是解密程序,根据得到的加密字符串,通过算法对照,时间对照,即可得到解密。闲话休提,上图。加密程序界面解密界面机械码拆解组成加密程序代码using System.Collections;using ....原创 2021-05-12 11:57:20 · 1934 阅读 · 15 评论 -
Unity建立统一的异步加载功能
明确需求,首先,做一个起始的界面,这个起始界面尽量简单,可以使用户可以快速打开,然后建立一个类,这个类在任何场景都不销毁的,然后通过这个类,每次需要切换任何场景,都会事先进入loding界面,loding界面加载完毕,即可跳转下一个场景,实现loding统一的异步加载起始不销毁类,场景监听器,这个类不会被销毁using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine原创 2021-05-07 11:38:05 · 374 阅读 · 2 评论 -
Unity功能记录---小地图缩放,拖拽解决方案
功能需求,项目需求是,要在界面的右上角做一个小地图,这个小地图可以进行地理链接的,那么这个地图的功能是可以拖拽的,并且每一次的缩放都是以图片中心点去缩放,那么如果图片被拖拽去了别的地方,那么中心点就会改变,所以这时候就需要在地图上方加一层父物体,缩放的时候缩放的是父物体,拖拽才是地图本体,这时候又有个问题,就是边界检测,缩放到任何大小都要重新做边界检测,不能拖动到外面,,,总结了一个公式((RectTransform.sizeDelta.x*parent.localScale.x-RectTransfo原创 2021-04-23 17:19:05 · 2233 阅读 · 5 评论 -
数控数字控制---比较简单,但是有趣,就记录下来------Unity数字控制
控制这一组数字的动作,首先思路是单个数字入手,先能控制单个数字从0-9运行using System.Collections;using System.Collections.Generic;using UnityEngine;public class NuberCtrl : MonoBehaviour{ public int CurNuber; public List<GameObject> nuberObjList = new List<GameO..原创 2021-04-21 11:00:34 · 162 阅读 · 0 评论 -
Unity 的Newtonsoft往原有数据添加Json数据
由于Newtonsoft只提供了序列化和反序列化,所以,基本重新写入都是全部覆盖的,所以,要进行在原数据中添加数据的话那么就必须先反序列化,拿到原有的数据,存储起来,然后再增加数据,将其序列化回去先拿到原有数据List<GameObject> menuList = new List<GameObject>(); public GameObject root; NameList NL; //存储原有的数据 // Start is calle.原创 2021-03-03 15:34:51 · 967 阅读 · 3 评论 -
json完整的结构
解析代码using System.Collections;using System.Collections.Generic;using UnityEngine;using Newtonsoft.Json;using System.IO;public class GetJson : MonoBehaviour{ // Start is called before the first frame update void Start() { strin.原创 2021-01-14 15:45:12 · 178 阅读 · 0 评论 -
Unity在StreamingAssets动态加载AB包资源(以texture为例,并且用滑动控制图片)
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using System;using UnityEngine.EventSystems;public class SliderCtrlABPlay : MonoBehaviour,IDragHandler,IEndDragHandler{ AssetBundle[] abArr; ...原创 2021-01-14 15:45:47 · 969 阅读 · 1 评论 -
Unity实现滚动菜单吸附功能
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.EventSystems;using DG.Tweening;public class CltUGUI : MonoBehaviour, IDragHandler, IBeginDragHandler, IEndDragHandler{ RectTransform rectTrandform; .原创 2020-12-23 14:45:29 · 534 阅读 · 0 评论 -
Unity学习---杂项记录(ScreenPointToLocalPointInRectangle)
ScreenPointToLocalPointInRectangle 这个函数其实是非常的简单的,我都不知道为什么要花费四个小时去研究,后来得出原来是我的事件相机没有给对,可气的是,事件相机没给对,Unity居然也不报错,让我一直楞头楞脑的去测试,,,,要吐血。。。这个函数有四个参数:RectTransform(子节点想要以某个父节点的中心点UGUI坐标,说白了就是你想要以谁为中心),SceenPoint(屏幕坐标,因为是2d的,所以只能是屏幕坐标,如果不是屏幕坐标怎么办,如果是场景物体,那么.原创 2020-08-12 10:34:23 · 7481 阅读 · 3 评论 -
Unity学习---ScriptableObject的创建以及调用(基础)
找别人的博客一般都挺难的,我就自己写来记录一下,之前基础不扎实(懒),没有想到要用,也没有在项目中用到。但是最近在项目中看到这个熟悉的东西,所以记录一下1创建我们首先要创建一个脚本,专门用来产生ScriptableObject,因为我们知道,C#可以实现一个脚本多个类的,所以,Do U Get ME按照这个格式去写,那么编译一下,回到Unity里面我们会得到这样的一个可视化的菜单,那么点击就能生存一个ScriptableObject的物体,,如下我这边顺便创建了一个Res..原创 2020-08-09 16:05:58 · 2496 阅读 · 0 评论 -
Unity学习--Material
Material材质球的参数设置很奇怪,跟其它组件不一样,如果用代码设置了这些材质的参数,那么停止运行是不会复位参数的,这跟它组件不一样。所以当你改了一个材质球里的参数,如果你想复原,也得是动态修改回来的。mainTextureScale 这个是设置主纹理的尺度,这个再material面板是设置以下值的,这个二维向量数值越大,单面的纹理越密集mainTextureOffset 这个是设置主纹理的偏移的,数值越大,偏移的越远,利用这个原理,我们可以太空大战地面往后拉的原理,实现飞机往前飞的原..原创 2020-08-09 15:13:19 · 965 阅读 · 0 评论 -
功能记录---Unity监听Slider滑动中,滑动停止监听
本文代码,思路来自《千喜》using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class GetSliderStopEvent : MonoBehaviour { public float SliderAllTime = 0.5f; public float SliderCurTime = 0; public转载 2020-08-10 18:02:43 · 2308 阅读 · 0 评论 -
String字段常常用到的静态方法注解(送给和我一样基础不牢靠的你们)
str.Substring(),文字截取操作,共有两个重载1str.Substring(int index),这个的意思是从第几号字开始截取,下标从1开始,例如 public string str ; private void Start() { str = "中国必将胜利1111"; Debug.Log(str.Substring(2...原创 2020-03-11 17:02:10 · 579 阅读 · 0 评论 -
unity通过Resources文件夹访问windows的txt文本
首先创建一个文本在项目里面要有一个Resources文件夹,刚才写好的txt文本拖到这个文件夹下面,然后把它同文件夹下另存为一份,然后把编码格式改成utf8然后通过代码resources文本资源进行加载...原创 2020-08-09 15:14:18 · 209 阅读 · 0 评论 -
在unity中实现枚举多选功能
首先写一个EnumFlags类,下面的格式using UnityEngine;public class EnumFlags : PropertyAttribute { }再写一个衍生类EnumFlagsAttributeDrawer类,按以下格式using UnityEngine;using UnityEditor;[CustomPropertyDrawer(typeof...原创 2020-08-09 15:14:44 · 1264 阅读 · 0 评论 -
小技巧—unity文字自适应text文本框(即日起会不定时更新unity小技巧)
文本自适应,在text面板添加Content size fitter组件,按照图片的设置,边框会随着文字的数量变化而增大或减少。与best fit的区别best fit 是充满整个文本框,文本框不会变化,只会让文字充满整个文本框。...原创 2018-08-08 08:11:03 · 6180 阅读 · 0 评论 -
小技巧-取消勾选raycast-target,可以优化效率
不需要进行触发的按钮或者时间,可以将raycast target取消勾选,可以优化原创 2018-08-08 08:26:27 · 734 阅读 · 0 评论 -
unity数字0-2之间的乒乓运动
using System.Collections;using System.Collections.Generic;using UnityEngine;public class ceshi : MonoBehaviour { public int i = 0; bool isbool = true; // Use this for initialization ...原创 2018-09-18 11:15:41 · 651 阅读 · 0 评论 -
安卓的easyTouch暂用的方法
原创 2018-10-26 08:41:14 · 198 阅读 · 0 评论 -
复位计时实现--学习路径(算法)
public class jishisuanfa : MonoBehaviour { float time = 1; //计时时间 float currentTime; //当前时间 bool ison=true ; void Start () { } // Update is called once per frame void Update ...原创 2019-01-17 11:38:50 · 141 阅读 · 0 评论 -
射线全检测
using System.Collections;using System.Collections.Generic;using UnityEngine;public class MainScript : MonoBehaviour { string[] str; static List<string > strTag = new List<string ...原创 2020-08-09 15:12:21 · 84 阅读 · 0 评论 -
EasyTouch5虚拟摇杆(Joystick)中文解析
修改joystick的名字是否激活虚拟摇杆 joystick(如果不激活是没办法触发虚拟摇杆的)是否在场景中显示虚拟摇杆(如果不显示也是无法使用摇杆的)是否使用fixed Update(fixed Update是不受帧率的变化影响,以固定的时间来调用,一些物理属性可以放到fixed Update里面去)中文释义为在禁用时取消注册,一般不勾选也不会有什么影响吧静态模式下,...原创 2020-08-09 15:11:22 · 1485 阅读 · 0 评论 -
D-Pad,Touch -Pad , button的中文解析
D-Pad因为D-pad很多设置与虚拟摇杆的相同,所以本博客只介绍与虚拟摇杆不一样的设置轴数设置,tow是双轴,four是四轴双轴,四轴Touch-Pad(类似于是一个鼠标触控板)DPI是自动适应不同分辨率的设备,swipe in是从外面滑进来也是能触发的,Button(按钮)非常简单,不写了...原创 2020-08-09 15:17:22 · 1573 阅读 · 0 评论 -
EasyTouch5手势组件中文解释(Quick Gesture)
组件1(Quick Drag ,快速拖拽)Quick name组件更名Allow on the axes允许在哪些平面拖拽Allow pick over UI element是否允许在UI底下进行拖拽(勾选之后是允许在UI下面进行拖拽)Stop drap on collision enter如果勾选当被拖拽的物体(带有碰撞体)撞上了一个带有碰撞体和刚体的物体就会停止被拖拽R...原创 2020-08-09 15:16:52 · 211 阅读 · 0 评论 -
所有手机的震动调用
public void sss() { print(123); Handheld.Vibrate(); }原创 2020-08-09 15:18:39 · 104 阅读 · 0 评论 -
Unity文字跑马灯效果实现
1首先导入DoTween插件2创建代码,把代码挂到文字上面,然后再文字上面创建一个image,image是用来显示当前文字显示的区域,然后再image上面加一个mask组件用来文字遮罩using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.U...原创 2021-01-14 15:50:14 · 1632 阅读 · 0 评论 -
倒计时
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class Clock : MonoBehaviour { public Text m_ClockText; public float m_Timer; ...原创 2021-01-14 15:49:02 · 70 阅读 · 0 评论