- 博客(17)
- 收藏
- 关注
原创 Lua学习笔记
标识符规范:mohd zara abc move_name a_123myname50 _temp j a23b9 retVal不推荐以下划线接大写字母如:_NAME,Lua中某些保留字也是这样的关键字:andbreakdoelseelseifendfalseforfunctionifinlocalnilnotor...
2018-07-09 21:06:32
252
原创 Unity3D---AssetBundle打包
一、AssetBundle概述用处:用于压缩包括model,texture,material,prefabs,甚至整个scene的资源,在游戏运行时再加载出来AssetBundle(简称AB)打包特点:1.保存资源之间相互依赖的关系2.AB压缩算法分为:LZMA算法和LZ4算法,也可以不压缩3.可以把下载内容放到AB包中,减少安装包的大小二、AB打包使用流程:1.在Unity中指定资源的AB属性2...
2018-07-07 17:56:51
380
原创 C#中的GC与相关机制的浅析
1、托管资源与非托管资源以及它们的释放 在.net 编程中,系统的资源分为托管资源和非托管资源。 对于托管的资源的回收工作,是不需要人工干预回收的,而且你也无法干预他们的回收。所能够做的只是了解.net CLR如何做这些操作。也就是说对于您的应用程序创建的大多数对象,可以依靠 .NET 的垃圾回收器(GC)隐式地执行所有必要的内存管理任务。 对于非托管资源,您在应用程序中使用完...
2018-07-07 02:59:17
1113
原创 Unity3D---查找某游戏物体与父子游戏物体相关详解
1.添加tagGameObject obj = GameObject.FindWithTag("Player");仅适用于tag场景中只有一个player tag时,若场景中有多个player tag,也只返回一个(场景中你最后创建的那个游戏物体)注意:无论运行该函数的游戏物体处于哪个父子层级,也无论目标tag处于哪个父子层级均能正常找到(遍历所有游戏物体)2.GameObject.FindGam...
2018-05-21 16:37:00
2959
原创 Unity3D---模块划分(一)对话系统的简单实现
最终实现效果,一个使用UGUI实现的简单的对话框信息,点击npc出现对话框,点击Continue跳转下一句,直到最后一句点完对话框消失主要实现思想:定义一个interactable基类,用于表示响应用户鼠标的点击事件,在interaceable类中注册所有的鼠标管理单例中的事件(鼠标管理单例在上上篇博文中有讲述)所有可交互的物体都继承这个基类,基类定义一个虚方法interace()表示互动,具体的...
2018-03-29 20:19:57
5112
原创 Unity-----关于委托、事件与泛型单例模式的应用
关于泛型单例参考这篇文章在unity中不乏需要用到单例模式的架构,同时unity中也不乏需要用到委托事件的场景,下面针对“鼠标点击”展开说明关于鼠标举个例子有3种常见的事件:1、鼠标左键点击某物体2、鼠标右键点击某物体3、鼠标悬停某物体(常见于UI,悬停某装备图标显示详细说明)我们只需要在鼠标管理单例(发布者)中添加相应的委托和事件、同时在需要响应交互的游戏物体(订阅者)(如NPC,掉落的装备)注...
2018-03-21 20:26:25
891
原创 操作系统---栈区与堆区
当一个程序运行时,其RAM存储方式是按照一定的区域划分的,以C为例内存中的栈区处于相对较高的地址向较低的地址拓展,由操作系统决定的最高地址,所以它是一块连续的内存空间。栈中分配局部变量空间,堆区是低地址向高地址拓展,用于分配程序员申请的内存空间。另外还有静态区是分配静态变量,全局变量空间的;只读区是分配常量和程序代码空间的;以及其他一些分区。栈:栈是为执行线程留出的内存空间。当函数被调用的时候,栈...
2018-03-18 02:39:13
1849
转载 C#---值类型与引用类型详解
什么是值类型,什么是引用类型 概念:值类型直接存储其值,而引用类型存储对其值的引用。部署:托管堆上部署了所有引用类型。 引用类型:基类为Objcet值类型:均隐式派生自System.ValueType: 值类型:byte,short,int,long,float,double,decimal,char,bool 和 struct 统称为值类型。引用类型:string 和 class统称为引用类型。...
2018-03-18 02:24:21
362
原创 解决NGUI中使用键盘按键导致鼠标居中的问题
只要在场景中创建了NGUI在游戏中按某个键盘超过一定时间就会使鼠标居中查了好久最后发现只要关了UI ROOT就没了,原因其实就是UI ROOT下的camera一个名为UI Camera脚本导致的只需要把event sources下的controller取消勾选就OK...
2018-03-17 21:13:04
423
转载 unity给localRotation赋值
transform.localPosition和transform.localScale都是直接赋值三元数,给旋转赋值需要用 方法一: xxx.transform.localEulerAngles = new Vector3 (0.0f,0.0f,0.0f); 方法二: xxx.transform.rotation=Quaternion.Euler(0.0f,0.0f,0.0f...
2018-03-16 21:00:52
3437
原创 线性代数-乘法和逆矩阵和A的LU分解
矩阵的五种乘法:1.最常见的点乘法(行乘列)如果有矩阵A (m x n) B(n x p )则相乘后的矩阵为 m x p2.列的思想:(1)矩阵A乘B的第一列得到C的第一列,矩阵A乘B的第二列,得到C的第二列(2)所以B可以考虑为单个的列向量,那么A乘向量,则是线性组合,我们可以说(3)C是A列的线性组合3.行的四维(1)A中的一行乘B的所有行,那么可以得到对应的C(2)C中的行是B各行的线性组合...
2018-03-16 20:55:28
875
原创 Unity中实现Camera缩放旋转
先上效果图:把缩放和旋转分开说吧缩放:原理很简单:1.先保存相机与玩家的的位置偏移offset2.获取用户输入(滚轮)3.将滚轮输入乘一个合理的系数,也可以称为缩放速度啦4.将offset数值更新ps:第四步用到了vector3.normalized,首先获取到offset的单位向量,再将它放大pps:可以使用vector3.magnitude获取偏移向量offset的模(向量长度),通过模来限制...
2018-03-16 02:32:17
4911
原创 线性代数-方程组和矩阵消元
方程组:求解线性方程组的过程中才慢慢产生矩阵等等抽象的概念有二元方程组:2X - Y = 0-X +2Y = 3可以得到矩阵与向量如下A X =b(矩阵 x 向量)=(向量)根据方程可以算出row picture(行图)通过画图即可求出方程(二元方程=线的交点、三维方程=三个平面之间的交点)column picture(列图)找出向量之间的线性组合即可求出右边向量当1倍的向量1+2倍的向量2 = ...
2018-03-15 19:07:14
789
原创 关于raycast与screenpointoray的一些个人见解
Unity中的Ray射线有很强大的功能,可以实现例如点击拾取物体,或者用于判断镜头与主角直接是否存在建筑遮挡(使其半透明化)一般这种情况可以使用ScreenPointToRay函数,该类为Camera类方法1、function ScreenPointToRay (position : Vector3) : Ray 参数只有一个vector3值,返回值为Ray结构体,意味从相机
2017-05-08 23:47:18
1235
原创 Unity3D利用Invoke() 方法制造冷却时间
利用一个bool变量可以实现简单的冷却时间效果如:public bool cd = true;void update() {if(input.getkeydown(keycode.R)){if(cd){cd = false;//释放技能 Invoke("refreshcd", 10f);//参数为字符串,函数名字,10秒后重置CD}}
2017-03-11 20:50:43
733
原创 Unity中BUG:SetDestination can only be called on an active agent that has been placed on a navmesh 的处理
SetDestination can only be called on an active agent that has been placed on a navmesh 最近遇到这个BUG意思就是他找不到navmesh上的目标,但是我发现有些新刷新的敌人是能够找到我来追我的,有些就不能我将新敌人刷新在了离水平地面还有一定距离的高度,导致怪物本体没有位于mesh上后来调整了下刷怪的高度解决方法:...
2017-03-11 20:44:43
7606
原创 个人开发Unity3d游戏中常用API函数
1.Instantiate原型:public static Object Instantiate(Object original, Vector3 position, Quaternion rotation);作用:生成对象实例。可用于新生成子弹/炮弹/物体,也可用于刷新敌人注:1)该函数返回值在monodevelop中查看返回值为GameObject,官方api手册中为Objec
2017-03-10 23:32:25
7846
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人