- 博客(30)
- 收藏
- 关注
原创 Transform 相对位置变换,坐标系转换
也会碰到情况复杂,选择a设置为A的子物体,可能会影响到其他的逻辑,所以不能做样做。最简单的时将a作为A的子物体。这时候无论A怎么变换,a都相对A是一致的。在初始化的时候使用transform.InverseTransformDirection()方法,将a的世界坐标,转化为相对于A的局部坐标。然后在A姿态发生变化时,通过transform.TransformPoint可以将刚保存的局部坐标,从A坐标系转化到世界坐标系,这时候将得到的坐标赋值给a.位置就可以实现相对A不变。.........
2022-07-26 23:20:49
1446
1
原创 Unity ScriptableObject 序列化遇到一些问题
1. 序列化需要继承ScriptableObject。 具体代码如下:[Serializable]public struct ExcelItemData{ public int ItemID; public string ItemPath; public int ItemColorID;}public class ExeclItemConfig : ScriptableObject{ public ExcelItemData[] excelItemDatas.
2021-12-04 16:48:33
4796
原创 Unity3D 万向锁问题
Unity3D 万向锁问题1.问题 描述在 unity3D中,对欧拉角的旋转顺序为Y-X-Z.那么我们可以通过一个Cube来直观看到这种现象。 创建一个Cube,我们只要按照 Y-X-Z顺序 操作Cubu的Transform属性面板的欧拉角参数,观察变化,然后在反过来 z-x-y顺序再操作变化,就能够发现这个现象。 如果按照Y-X-Z的方式选转就会有万向锁现象出现。反向就是正常的。所以可以推论,假设我们的旋转顺序为 z-x-y。 我们就可以避...
2021-08-25 14:06:27
617
原创 Unity Xlua 初探
1. 首先在项目导入Xlua,只需要下载得Xlua包里面得Assets 文件夹下得内容拷贝到自己的项目中即可。 在里面有xlua的各种功能的范例。2.现在开始xlua的第一步,加入宏定义3. 每次当c#代码改变的时候需要执行以下操作 第一个重新生成代码,第二步是注入热更。4. 运行范例里面的HotfixTest场景,点击按钮,Debug会提示Lua调用,表示热更更新成功,环境已经OK。 如果有提示报错,就是没有导入工具。 从下载的Xlua的Tools文件夹也...
2021-06-27 10:57:34
518
原创 unity 传送门的实现原理
所谓传送门就是从一个地方传送到另一个地方。在游戏中,实现传送门会让人觉得非常神奇。 在unity 我们使用一个面片在当做传送门,要把远处一个场景的画面投到面片上。 可以使用摄像机的TargerRenender 属性。1.在资源文件夹创建 RenenderTexture, 然后拖拽到相机的TargerRenender 属性。 再将 RenenderTexture贴到面片上。 即可在面片上看到该摄像机视角的画面。这种方式也可以用来做小地图功能。...
2021-04-28 17:27:33
4572
原创 拆箱装箱遇到的问题
int i = 0; object o = (object)i; long l = (long)o; 这样写会出现报错InvalidCastException: Specified cast is not valid. 这里有个坑。 装箱的时候是int, 拆箱也应该用int来拆箱。 以下有几种正确的写法 1. int i = 0; object o = (object)i; ...
2021-04-06 11:47:19
212
原创 GFX Driver 一直暴涨问题。
在一个项目中遇到得,用得unity2019.3.15f1 ,每次都是运行一段时间就闪退。 通过Profile 检测到GFX Driver 一直暴涨。 GfxDriver 是底层渲染驱动回馈的内存,可以理解为显存所占用大小。主要跟 texture,mesh,shader相关。 于是我对项目进行里面的内容一一筛选测试,最后发现跟使用的高通的 SVR sdk有关 这张是正常的, GfxDriver不会累加。使用的是unity2017.4....
2021-03-28 15:05:23
1357
原创 c# ~ 解析
1.~ 是取反运算符 。 按位取反。 对一个整数取反,就要先转化为二级制数。 然后对每一位的数字取反。得到的数就是计算结果 这是其一。2.~ 用于析构函数。 例如:public class Test { public Test() { } ~Test() { }} 构造函数是在对象实例化时调用,用与初始化示例的信息。析构函数是对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行...
2020-09-28 11:36:43
1859
原创 Attribute 简单示例
特性提供功能强大的方法,用以将元数据或声明信息与代码(程序集、类型、方法、属性等)相关联。特性与程序实体关联后,即可在运行时使用名为“反射”的技术查询特性。特性具有以下属性: 特性可向程序中添加元数据。元数据是有关在程序中定义的类型的信息。所有的 .NET 程序集都包含指定的一组元数据,这些元数据描述在程序集中定义的类型和类型成员。可以添加自定义特性,以指定所需的任何附加信息。 可以将一个或多个特性应用到整个程序集、模块或较小的程序元素(如类和属性)。 特性可以与方法...
2020-08-21 18:19:46
347
原创 LayerMask 探究
1.在Unity中,直接输出某个层layer的值会发现值并不是层的索引值。print(layer.value); 输出为2的索引值次幂。换一种写法print("NameToLayer=" + LayerMask.NameToLayer("Name"));输出结果为索引值。另一种写法print("NameToLayer=" + LayerMask.LayerToName(8));输出为索引值为8的层的名称。所以我们需要在做Layer判断的时候注意前后的数值是否对应。如:
2020-07-03 14:19:19
404
原创 c# 委托的简单用法
委托的简单实用方式,代码格式如下。using UnityEngine;using System.Collections;using System;public class DelegateTry : MonoBehaviour { public delegate void Mydeledate(bool isok); public event Mydeledate del; void Start () { del = new Mydeledate(Test...
2020-06-12 08:06:04
191
原创 unityEvent 含参数的使用
unity 内置的事件,unityevent 的 使用。最多使用四个参数。且参数类型有限制,只能使用简单的Bool值,int值,string等类型,不支持自定义类的作为形参。使用方式如下using UnityEngine;using System.Collections;using UnityEngine.Events;using System;public class EventTry : MonoBehaviour { public Events_Bool currentCh...
2020-06-12 08:05:48
3326
原创 unity 按键键值检测。
using System;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class KeyCodeTest : MonoBehaviour { public Text t; public KeyCode currentKey; public Event e; // Update is called .
2020-06-12 08:05:15
2481
原创 unity 里用代码控制增加后者删除标签Tag和层Layer
通过unityEditor 类可以实现将命令挂在菜单栏当中,用于自动创建Tag和layer.using System;using System.Collections;using System.Reflection;using UnityEditor;using UnityEngine;public class TagManagerData{ public static string[] tags = new string[] { "Unity11" .
2020-06-10 07:48:11
1835
1
原创 c# Json的简单使用方式。
Json 能够直接与类进行互转。在做数据通讯的时候,能够很方便的进行数据传递,然后解析出来使用。using UnityEngine;using System.Collections;using System.Collections.Generic;using LitJson;using UnityEngine.UI;public class json_Try : MonoBehaviour { void Start () { Item a = new Item();.
2020-06-09 22:17:28
260
原创 HttpWebRequest 下载文件,并且能够断点续传
HttpWebRequest是unity 内置得类用来处理关于http通讯得。using UnityEngine;using System.Threading;using System.IO;using System.Net;using System;/// <summary>/// 下载工具类/// </summary>public class ThreadLoadFile :MonoBehaviour{ private string u...
2020-06-09 22:16:46
1305
原创 LineRenderer 简单画线
通过unity内置的LineRenderer 绘制线条。using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class Painter : MonoBehaviour{ //颜色 public Color painterColor = Color.yellow; //宽度 public float Wi.
2020-06-04 08:17:04
395
原创 Ragdoll 自动配置
人物骨骼的引用绑定,如果是要一个个手动设置,大概是相当让人头痛的事情吧。using UnityEngine;using System.Collections;using UnityEditor;using System.Reflection;using System.IO;using System;public class SetRagdoll : EditorWindow { private GUIStyle m_HeaderLabelStyle; // p.
2020-06-04 08:14:31
460
原创 HttpWebResquest的用法
using UnityEngine;using System.Net;using System.IO;using System;public class HttpWebResquestTool : MonoBehaviour { //读取链接里的字符串数据 public static string HttpWebResquestString(string url) { if(!CheckUrlValid(url)) { .
2020-06-03 08:24:10
342
原创 unity 网格编辑
用代码直接创建unity mesh 网格。示例为可以不断拉长的曲形的面片。网格完成后会进行平滑插值,让曲形更加平滑。using System.Collections;using System.Collections.Generic;using UnityEngine;public class MeshPlan : MonoBehaviour { // Use this for initialization //坐标顶点 private List<Vector.
2020-06-03 08:22:28
698
原创 Properties 反射的用法
直接展示简单的示例代码。using UnityEngine;using System.Collections;using System;using System.Reflection;public class GetProperties : MonoBehaviour { // Use this for initialization void Start () { student t=new student(); Getmember(t); ..
2020-06-03 07:58:58
286
原创 c# ref 的使用。
1.ref 的使用。void Function(ref p)使用ref 传参,是传递的地址。public class RefTest : MonoBehaviour {string p;// Use this for initializationvoid Start () {p = "J";Change(ref p); //这里输出“g” 如果去掉ref 输出“J”
2017-12-13 11:32:33
1300
原创 Vector3.Slerp的使用
1.Vector3.Slerp是指球形插值。官网用法如下//在日出和日落之间动画弧线usingUnityEngine;usingSystem.Collections;publicclassexample:MonoBehaviour{publicTransformsunrise;publi
2017-12-13 11:31:42
1709
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人