- 博客(125)
- 资源 (2)
- 收藏
- 关注
原创 反射的应用
1、通过字符串来生成一个类class a{}class b: a{}System.Reflection.Assembly assembly = typeof(a).assembly; //获取某个基类的程序集Type destType = assembly.GetType("b");a obj = Activator.CreateInstance
2016-10-24 10:16:27
364
原创 Unity 编辑自定义脚本
Editor\Data\Resources\ScriptTemplates在这个目录下有个文件,修改成自己所定义的脚本,比如加入自定义的某些目录,那么在创建新的脚本的时候就会按照你修改的脚本来生成
2016-08-25 10:58:52
696
原创 Unity编辑器之inspector处理
using UnityEngine;using System.Collections;using UnityEditor;[CustomEditor(typeof(MaterialsChangeContainer))] //需要编辑的脚本控件public class MaterialsChangeContainerEditor : Editor { private static
2016-04-08 10:57:15
853
原创 通过枚举值实现赋值、取值、触发时间
public class PropertySet where N : struct ,IConvertible //基类 where T : IComparable{ protected T[] mValues; protected Action[] mActions; public PropertySet
2015-12-14 15:26:29
928
原创 事件 event Action
public class A{ public event Action OnStateChanged;}public class B{ public A Stage; public event Action OnXXStageChanged { add { if(Stage != null){
2015-11-28 15:18:33
2518
原创 使用Attribute注册所有特性
一、定义一个拥有Attribute特性的基类[AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]public class ClassTypeRegisterAttributeBase : System.Attribute{ public virtual void Register(
2015-08-11 10:35:24
442
原创 Unity3d 资源加载与内存管理
原文链接(一):http://game.ceeger.com/forum/read.php?tid=4394原文链接(二):http://game.ceeger.com/forum/read.php?tid=4466 unity3d 里有两种动态加载机制:一个是Resources.Load,另外一个通过AssetBundle,其实两者区别不大。 Resources.Load
2015-04-18 15:22:10
7259
1
原创 全面理解Unity加载和内存管理
最近一直在和这些内容纠缠,把心得和大家共享一下:Unity里有两种动态加载机制:一是Resources.Load,一是通过AssetBundle,其实两者本质上我理解没有什么区别。Resources.Load就是从一个缺省打进程序包里的AssetBundle里加载资源,而一般AssetBundle文件需要你自己创建,运行时动态加载,可以指定路径和来源的。其实场景里所有静态的
2015-04-16 09:41:19
360
转载 中文版iTween帮助文档、参数解析
iTween官方文档地址http://itween.pixelplacement.com/documentation.php1. CameraFade(摄像机的渐隐)其中Camera或者场景的东西并没有消失,只是在屏幕上贴了一张贴图首先,要用到摄像机的渐隐/显功能的话,必须调用CameraFadeAdd()函数,来添加背景图片,不然在运行时会包错。
2015-04-08 10:03:38
448
原创 C# Atrribute特性
1、什么是Attribute Attribute类可以把目标元素和一个预定义的信息或者是用户自定义信息关联起来。这里的目标元素可以是assembly,class,constructor,delegate,enum,event,field,interface,method,可执行文件模块,parameter,property,return value,struct或其它的Attribute。
2015-03-18 10:17:29
2334
原创 CSV读取类,C++ STL实现
CSV文件作为一种简单易用的信息存储文件,有着非常广泛的用途,在游戏开发行业的应用尤为普遍,它比普通ini文件记录信息更加方便,具有更加严谨的格式信息,同时又没有数据库存储数据那么复杂。它的记录形式通常以逗号为字段间分隔符,以回车为每条记录间分割符的简单文本格式,通过Excel打开如下所示:通过普通通文本编辑器打开,如下图所示:通过上面的图示,可知csv记录的信息实际上
2015-01-22 15:08:29
2228
原创 Unity3d之骨骼动画
在这个系列,我们将关注Unity引擎提供的基于骨骼动画工具。它的主要思想是为了把它应用到你自己的游戏来介绍和教基本的2D动画原理。在这节课中,我们将添加闲置,跳跃和动画。在开始这个课程前,我们将感谢Chenguang (DragonBonesTeam)给我们提供用于本系列教程游戏艺术。离开的地方在 上一个课程,我们启动项目,合成2D龙角色,然后创建三种不同的动画。如果你还没
2014-12-09 14:24:26
8957
原创 NGUI之事件 UIEvents
UIEvents-事件系统void OnHover (bool isOver):当鼠标移出或者悬停在某个碰撞器上的时候返回布尔值.在触摸设备上不会有作用.void OnPress (bool isDown):当鼠标或者触摸到碰撞器发生布尔值返回.void OnSelect (bool selected):当鼠标或者触摸从OnPress发生后的释放将会返回这个布尔值.void OnC
2014-11-22 09:49:36
414
原创 Unity之鼠标管理系统
using UnityEngine;using System.Collections;public class CursorManager : MonoBehaviour { public static CursorManager _instance; //单例模式 public Texture2D cursor_normal; public Texture2D cursor_npc
2014-11-17 10:13:52
928
原创 在插入元素前可以使用reserve避免不必要的内存分配
例如,假定你想建立一个容纳1-1000值的vector。没有使用reserve,你可以像这样来做:
2014-11-13 17:20:22
310
原创 android之Activity之间的信息传递
第一个ActivityIntent intent = new Intent(MainActivity.this,NextActivity.class); intent.putExtra("name", "jack"); intent.putExtra("age", 23); Bundle bundle = new Bundle(); bundle.pu
2014-11-06 16:53:47
394
原创 android目录结构
一、src编写Java代码的目录,遵循java的命名规范、分包二、gen包含了android的资源文件的标识符,不需要程序员维护,自动添加的,有分类的三、asserts源生资源文件:保存应用的的资源文件例如音频文件、或者视频文件或者不经常被用户修改的问题四、bin包含编译生成apk的应用程序五、libs包含第三方类库的jar包六、resdrawable-
2014-11-05 11:31:07
402
转载 Strumpy Shader Editor入门教程
对于3D游戏来说,有很多绚丽的效果,都是靠shader(着色器)来实现的。不过很多朋友估计都不会编写shader,阿赵我自己也只是看了个入门,明白了它的原理,很多具体的效果都写不出来的。这次来介绍一个Unity3D的第三方shader编辑器:Strumpy。这个编辑器是完全可视化编辑,使用起来相对简单一点。先来看看我们这次需要做的例子:我们需要使用Strumpy,编辑出这样一个shad
2014-10-29 15:59:45
463
原创 特殊数据类型成员变量的初始化
有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:a. 常量型成员变量b. 引用型成员变量c. 静态成员变量d. 整型静态常量成员变量e. 非整型静态常量成员变量对于常量型成员变量和引用型成员变量的初始化,必须通过构造函数初始化列表的方式进行。在
2014-10-28 15:04:56
428
转载 使程序在Linux下后台运行
一、为什么要使程序在后台执行我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用putty远程连接到日本Linux服务器。所以使程序在后台跑有以下三个好处:1:我们这边是否关机不影响日本那边的程序运行。(不会像以前那样,我们这网络一断开,或一关机,程序就断掉或找不到数据,跑了几天的程序只能重头再来,很是烦恼)2:不影响计算效率2:让程序在后台跑后,不会占据终端
2014-10-27 14:35:36
307
原创 可用NVI模式替换virtual函数继承方式
class Base{ public: void Foo(){ DoFoo1(); }//use DoFooX() private: virtual void DoFoo1(){ cout << "Base's DoFoo1" <<endl; } virtual void DoFoo2(){
2014-10-27 14:34:22
515
原创 Unity之局域网通信
一、APIvoid OnGUI() { if(Network.peerType == NetworkPeerType.Disconnected) { if(GUILayout.Button("创建服务器")) { NetworkConnectionError error = Network.InitializeServer(connections, l
2014-10-24 09:45:14
6049
Unity着色器和屏幕特效开发秘籍
2016-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人