- 博客(40)
- 资源 (39)
- 收藏
- 关注
原创 UGUI - 绘制动态曲线
前言 等有空再补详细说明,先上代码。看官自行阅读代码 UICurveData 类,用于存放点数据的基础结构。public class UICurveData{ #region [Fields] public List<Vector2> Postion = new List<Vector2>(); public Col...
2018-03-08 11:47:59
2945
5
原创 Lua与C\C++语言的交互-C调用Lua
前言 首先需要明白的是 C与 Lua 的虚拟堆栈。 引用 Lua 官方的解释: The Stack Lua uses a virtual stack to pass values to and from C. Each element in this stack represents a Lua value (nil, number
2018-01-09 16:43:52
497
原创 Lua与C\C++语言的交互-从编译源码开始
前言 Lua 本身是用 C 编写的,因此扩展和嵌入其他语言是非常便捷的。C函数和参数 C语言是用汇编实现的,在汇编语言中可没有函数的概念,与函数对应的是叫做子过程的东西,子过程就是一段指令,一个子过程与它调用的子过程之间通过栈来进行参数的传递交互。在一个子过程在调用别的子过程之前,会按照约定的格式将要调用的子过程需要的参数入栈,在被调用的子过程中,可以按照约定的规则将参数
2018-01-09 15:46:05
553
原创 Unity GUI 系统应知
概述 GUI系统主要部分: OnGUI回调(这个回调是用于处理一切与GUI相关的逻辑) Event,这是和GUI系统紧密关联的 GUIStyle 定义了一种样式,实际上是负责任意GUI的绘画 GUISkin 一组预定义的默认样式。 GUIUtility、EditorGUIUtility OnGUI 由引擎自动调用。通常每帧至少两次,但可能由于其他事件的发
2017-11-13 14:43:31
466
原创 Unity Editor GUI 编辑器入门教程
图片看不清的话可以右击新建标签打开就可以了哦 示例代码下载基础GUI文本控制类 效果预览 示例代码 密码形式的输入框 效果预览 示例代码 滑动条 效果预览 示例代码 Toggle 效果预览 示例代码 Toolbar 效果预览
2017-11-06 16:52:12
1277
原创 DllImportAttribute 常用知识介绍
引言 DllImportAttribute属性提供调用非托管函数的规范。在对托管代码进行P/Invoke调用时,DllImportAttribute类型扮演着重要的角色。 DllImportAttribute的主要作用就是给CLR指示哪个DLL导出您想要的调用的函数。相关DLL的名称被作为一个构造函数参数传递给DllImportAttribute。常用属性介绍EntryPoint 指
2017-10-11 14:27:28
1555
原创 Unity-内置Attribute的使用
AddComponentMenu 可以在UnityEditor的Component的Menu中增加自定义的项目。菜单可以设置多级,使用斜线/分隔即可。 例如: using UnityEngine; [AddComponentMenu("TestMenu/Component")] public class TestMenu : MonoBehaviour { }Ass
2017-10-11 10:55:13
630
原创 Proto-Gen-Lua 环境搭建编译、安装、使用
懒人直达 Proto-Gen-Lua(Auto)简介 官方介绍 Protocol buffers are a flexible, efficient, automated mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define ho
2017-08-14 15:11:16
1148
原创 Unity-Lua调试-EmmyLua
前言 现在很多的项目都会引入热更与热修复的技术来研发,热更的形式有很多方案,目前采用较多的是Unity+Lua的形式。所以本文主要介绍Unity+Lua的调试环境搭建。准备工作 下载并安装 IntelliJ IDEA 学习作用参考 SeeAlso ,仅供学习,请支持正版 下载 EmmyLua (下载好就可以了,不用解压) 配置...
2017-08-02 18:37:39
9603
原创 UGUI学习手记-Graphic
关于源码 关于源码可以参考这篇博客下载或调试。Graphic简介 继承自UIBehaviour(所有UI组件的基类,负责接收来自UnityEngine或者UnityEditor的事件) 继承 ICanvasElement (负责接收Canvas重新渲染的事件) UGUI的核心组件,负责显示图像 抽象类 MaskableGraphic继承自该类,MaskableGrap
2017-05-31 14:54:16
2246
原创 Unity-编辑器创建Lua脚本模版-热更新
方法 一个简单的方法: 打开Unity安装目录\Editor\Data\Resources\ScriptTemplates 新建一个名为 89-LuaScript-NewLuaScript.lua.txt 的文本文件 重启Unity 可以了 (PS: 文件里的 #SCRIPTNAME# 也会自动替换)原理 文件
2017-05-03 16:53:23
1485
原创 UGUI学习手记-CanvasUpdateRegistry
关于源码 关于源码可以参考这篇博客下载或调试。CanvasUpdateRegistry 单例 UGUI与Canvas之间的中介 继承ICanvasElement接口的组件都可以注册到它,它监听了Canvas即将渲染的事件,并调用已注册组件的Rebuild等方法 CanvasUpdateRegistry的构造函数: protected CanvasUp
2017-05-02 13:42:12
1008
原创 UGUI学习手记-Toggle & ToggleGroup
关于源码Toggle简要具体实现ToggleGroup关于源码 关于源码可以参考这篇博客下载或调试。Toggle简要 继承自Selectable、IPointerClickHandler、ISubmitHandler、ICanvasElement(Canvas渲染的时候调用的接口) 根据鼠标事件转换状态。 具体实现 Toggle有个重要的bool变量m_IsO
2017-05-02 11:50:50
2550
原创 Unity 与 .so\.a\.dll库文件、 C\C++\OC\Java 交互
简介 通用语言基础架构(CLI) 的设计思想是 代码间更容易的复用或者相互调用。 我们要使用 其他语言打包成的 库文件时,只需 创建 DllImport 的来声明。 需要引入 System.Runtime.InteropServices 命名空间。 形如: [DllImport ("libc.so")] private static extern int
2017-03-17 20:19:18
1650
原创 BehaviorDesigner-Unity
简介组件介绍代码形式创建行为树组件行为管理器任务父任务创建任务条件任务Conditional Task动作任务Aciton Task调试变量概述共享变量全局变量自定义共享变量非任务节点类访问行为树中的变量条件终止事件外部行为树任务引用变量同步任务内部属性简介 行为树(Behavior Trees)是一种许多游戏都很流行的AI 技术(类似人工智能)。hal
2017-03-15 11:20:52
1786
原创 UGUI学习手记-Selectable& Button
关于源码Selectable特性属性Button最后关于源码 关于源码可以参考这篇博客下载或调试。Selectable特性 [AddComponentMenu("UI/Selectable", 70)] [ExecuteInEditMode] [SelectionBase] [DisallowMultipleComponent] Add
2017-03-15 11:05:34
2114
原创 UGUI学习手记-InputModule
关于源码种类如何调用调用实现调用时机关于源码 关于源码可以参考这篇博客下载或调试。种类 BaseInputModule – 抽象类,是所有输入模块类的基类。 PointerInputModule – 抽象类,继承自 BaseInputModule,是 StandaloneInputModule 和TouchInputModule 的基类。 StandaloneIn
2017-03-15 10:25:31
1168
原创 BehaviorDesigner-Unity-行为树
资源分享相关资料资源分享 资源仅供学习 BehaviorDesigner.1.5.7 Behavior+Designer Tactical Pack v1.1 Behavior+Designer Formations Pack v1.0.2 Behavior Designer - Movement Pack 相关资料 文档
2017-03-13 11:59:47
964
原创 Unity-NavMesh
高低落差以及跳跃示意图 爬楼梯 跳跃 实现 OffMeshLink 摄像机 一个作为地面的Plane F1——F5几个高低落差不一样的台阶 L1和L2是楼梯模型 man – 其中man身上必须带有NavMesh Agent组件 移动的目标点target。– 为了观察方便在target身上带了light组件
2017-03-06 18:42:51
1046
原创 UGUI学习手记-ExecuteEvents & EventInterface
关于源码 关于源码可以参考这篇博客下载或调试。EventInterface代码分析 声明了一系列的 Event 事件 IEventSystemHandler IPointerEnterHandler : IEventSystemHandler IPointerExitHandler: IEventSystemHandler IPointerDownHandler
2017-02-23 11:02:32
2807
原创 UGUI学习手记-EventSystem
关于源码 关于源码可以参考这篇博客下载或调试。EventSystem的职责本质 实际上 EventSystem 处理和管理的其实是点击、键盘输入、触摸等事件,其实就是输入事件系统。代码分析 EventSystem最开始声明了一个List和一个变量 系统输入模块表 private List<BaseInputModule> m_Sy
2017-02-22 18:49:10
854
原创 Unity3D 版本控制 SVN Git
需要版本管理的目录Unity Project SettingsSVN 全局忽略样式参考文档相关软件下载需要版本管理的目录 Assets ProjectSettings 提交的时候仅提交Assets 和 ProjectSettings 两个目录下所有东西,忽略掉其他所有目录和文件 提交的时候 *.meta 文件也要提交 以下是自动生成的目录或文件
2017-02-09 11:11:45
1654
原创 SublimeText 注册码 & 常用插件
软件下载常用插件其他设置打开文件所在目录注册码软件下载 官网下载 CSDN资源常用插件 其他设置打开文件所在目录 打开 Preferences->keyBindings 插入以下代码 { "keys": ["alt+o"], "command": "open_dir", "ar...
2017-02-08 20:01:28
1028
原创 C# 反射手记
从代码中学习吧 可以把 TestInterface 块里的方法放进 Main 执行来对应的理解using System;using System.Collections.Generic;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;namespace R
2017-02-04 18:49:34
413
原创 随手记-技能拆分
技能分类基本属性定义等级属性施放基础基类例子技能状态状态属性状态管理定时轮循技能施放技能分类 立即触发类 火球、飞弹类 需要经过一定的飞行距离: 火球术 冰箭术 触发相应的状态 (如:战吼、施放后增加自身的攻击力) 回城类 骑乘类 捕捉宠物 采集类等生活技能 复活类
2017-02-04 16:49:50
556
原创 Unity CacheServer搭建
前言准备工作设置开机自启文档参考前言 由于手游平台有很多类型,所以在开发中很经常会涉及 Unity 平台的切换,如果没有搭建 CacheServer 的话,每次切换都要在本地跑一边资源的导入,这是非常耗时的。所以 CacheServer 的搭建是非常有必要的。准备工作 CacheServer默认存储最大50GB,主机最好硬盘快,硬盘容量够大,带宽大。 Unity官网 下载C
2017-02-04 10:42:12
2328
原创 UGUI调试随手记
UGUI 源码地址调试步骤UGUI 源码地址 关于bitbucket的使用可以网上搜索,和github相差不多。 下载地址调试步骤 下载好的工程直接Build后,在工程目录在 ..\Output 下会生成 UnityEngine.UI.dll、UnityEngine.UI.pdb 下载新的pdb2mdb.exe 将生成的UnityEngine.UI.dll.mdb
2017-01-13 10:23:01
1130
原创 Unity中多线程设计与实现
前言什么多线程在Unity中使用多线程能干什么举栗子的时间到了写在最后前言 因为项目后期,好久没有更博了。最近项目推上线了,突然闲下来了。想写的东西很多。就先从多线程开始吧。 个人对线程的理解还不够透彻,希望如果有更好的看法可以在评论区提出,感谢。什么多线程 在一个程序中,一些独立运行的程序片段叫作“线程”(Thread),利用它编程的概念就叫作“多线程处理”(Multith
2016-12-12 16:41:33
4725
原创 关于装箱拆箱为什么会影响效率
概念 装箱在值类型向引用类型转换时发生,在堆中分配。 拆箱在引用类型向值类型转换时发生。 示例装箱 public void BoxIn() { object tempObj = 4; } 示意:将整型常量1赋给object类型的变量obj;值类型是要放在栈上的,而object是引用类型,它需要放
2016-10-20 15:55:54
2959
原创 关于 Unity Profiler 的使用以及代码建议
1.参数说明A. WaitForTargetFPS: Vsync(垂直同步)功能所,即显示当前帧的CPU等待时间 B. Overhead: Profiler总体时间-所有单项的记录时间总和。用于记录尚不明确的时间消耗,以帮助进一步完善Profiler的统计。C. Physics.Simulate: 当前帧物理模拟的CPU占用时间。 D. Camera.Render: 相机渲染准
2016-09-20 15:08:36
5170
原创 Shader结构学习手记
在上一篇入门手记中以一个简单的shader了解了一个shader的大致编写流程以及一些基本概念。这份手记是深入shader的结构分析每个“属性”的含义以及用法。
2016-08-29 20:14:46
1134
原创 SVN各种异常统一处理方案
Step1: sqlite官网 (http://www.sqlite.org/download.html) -> Precompiled Binaries for Windows -> sqlite-tools-win32-x86-****.zipStep2: 在svn工程下显示隐藏文件,会看到 .svn/wc.db 文件, 将wc.db复制到解压出来的文件下。Step3:
2016-07-04 19:13:38
557
原创 NGUI-Sprite扩展镜像功能
当我们工程里有许多对称的图的时候,可以利用镜像来实现同样的效果显示。并且减少了图集的大小占用。一方面减少了资源占用,另一方面运行内存也会降低一些。在UIBasicSprite.cs 脚本中添加我们的代码: public enum Type { Simple, Sliced, Tiled, Filled, Advanced, Mirrored, }调用
2016-05-10 16:15:30
2508
4
原创 Shader入门学习手记
Shader程序的基本结构在代码中学习吧,注释都写好了。Shader "First Fantasy/Water/Water Diffuse" { //定义着色器属性; Properties { /* 格式:_Name("Display Name", type) = defaultValue[{options}];
2016-05-10 10:39:10
1112
原创 解决粒子特效被NGUI遮挡的问题
解决方法是: 因为粒子系统的渲染顺序列默认为3000,而NGUI的渲染顺序默认也是从3000开始,当有嵌套的panel时或者Depth更高的panel时,GUI的渲染顺序会高于3000,解决办法是,1.修改Ngui中的UIPanel脚本中的默认的RenderQueue, 调整到3000以下,这样就不会遮挡住粒子特效了,当有的窗口需要显示在特效上面时,在检视面板中把该窗口的Render
2016-05-10 10:33:17
908
原创 Unity中LayerMask的学习手记
Unity中是用int32来表示32个Layer层。int32表示二进制一共有32位(0—31)。LayerMask实际上是用Int32的32个位来表示每个层级,当这个位为1时表示使用这个层,为0时表示不用这个层。代码释义:LayerMask mask = 1 LayerMask mask = 0 LayerMask mask = ~( 1 public
2016-05-10 09:47:39
2181
原创 关于NGUI中ScrollView使用自定义shader没有作用的解决方案
关于NGUI中ScrollView使用自定义shader没有作用的解决方案
2016-05-09 16:16:22
1786
Fast Shadow Receiver v1.5.unitypackage
2020-05-26
Amplify Shader Editor
2018-12-20
多平台视频播放
2018-11-23
Behavior+Designer Formations Pack v1.0.2
2017-03-13
TransformInspectorExp
2017-02-10
usertype.dat
2016-08-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人