
Unity3D
文章平均质量分 87
huang9012
这个作者很懒,什么都没留下…
展开
-
Unity does not contain a definition for "controller"
Assets/Script/Test.cs(36,30): error CS1061: Type `Test' does not contain a definition for `controller' and no extension method `controller' of type `Test' could be found (are you missing a using direc原创 2013-06-19 00:56:17 · 13981 阅读 · 1 评论 -
Unity3d 学习与应用之 DEBUG
程序不会犯错,人却经常犯错。程序错误(英语:Bug),在程序设计中的術語,是指在软件运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象。早期的计算机由于体积非常庞大,有些小虫子可能会钻入机器内部,造成计算机工作失灵。史上的第一个隐错是因為一隻飛蛾意外飛入一臺電腦內部而引起的故障(如圖所示),因此用“Bug”(原意为“虫子”)来称隐错。一些有趣的隐错有时也会转载 2013-07-22 22:57:47 · 1235 阅读 · 0 评论 -
Unity与Kinect结合开发思路
Unity与Kinect结合开发思路一.全屏:思路:Kinect的手的节点(这里都是右手,左手的效果一致)在Unity中移动的距离是很小的,你可以用一个物体绑定到手上,然后就能看到具体能够移动多大的范围了。1.因为手的移动范围很小,因此建立一个虚拟的小屏(2D,屏幕坐标),长宽就是你手上下左右移动的最大距离(在Unity中)。2.转载 2013-07-25 00:01:43 · 2252 阅读 · 0 评论 -
UNITY3D物理引擎Rigidbody,Collider,PhysicMaterial的整理
其中最基本的关系:Collider是最基本的触发物理的条件,例如碰撞检测。基本上,没有Collider物理系统基本没有意义(除了重力)。Rigidbody是物体的基本物理属性设置,当检测碰撞完之后,就要计算物理效果,而Rigidbody就是提供计算基本参数的玩意。PhysicMaterial则是附加的基本物理参数,是一个物理材质,UNITY3D有自带默认的物理材质的系数转载 2013-10-24 11:55:34 · 1407 阅读 · 0 评论 -
unity3d 游戏对象消失三种方法的区别(enabled/Destroy/active)
gameObject.renderer.enabled //是控制一个物体是否在屏幕上渲染或显示 而物体实际还是存在的 只是想当于隐身 而物体本身的碰撞体还依然存在的 GameObject.Destroy() //表示移除物体或物体上的组件 代表销毁该物体 实际上该物体的内存并没有立即释放 而是在你下下个场景中槽释放内存资源,就是你a场景中Destroy了 一般转载 2013-10-24 17:08:44 · 6095 阅读 · 0 评论 -
[Unity 3D] 簡單瞭解「Collision碰撞」與「Trigger觸發」
Unity 3D是套非常好用的遊戲開發引擎,內建的物理系統讓使用者不需寫長長的程式碼,就能夠迅速設定好所有物件之間的碰撞關係,做出讓角色走不過去的牆、或是可以射穿牆壁的子彈等等。不過它的設定相當細,若是分不清其中差異,很容易就會陷入鬼打牆的窘境。幸好這是個資訊發達的時代,網路上總有熱心人士分享資訊──出處:關於unity3d碰撞的一些知識转载 2013-10-25 15:44:08 · 11002 阅读 · 1 评论 -
游戏开发中的数学和物理算法(2):定义线
游戏开发中的数学和物理算法(2):定义线直线公式:Ax + By = C (A和B不能同时为0)讨论:A和B不为0:为斜线(不垂直于x轴和y轴);A为0,B不为0:直线为垂直于y轴的直线,且于y轴交与点(0,C/B);A不为0,B为0:直线为垂直于x轴的直线,且于x轴交与点(C/A,0);例1:例2:斜率:定义斜率:转载 2013-11-16 10:05:46 · 1151 阅读 · 0 评论 -
游戏开发中的数学和物理算法(5):圆(2D)和球(3D)
1.圆(2D)圆的两个关键因素:圆心和半径。公式:(x–h)2 + (y–k)2 = r2 圆心为(h,k) 半径为r.举例:圆心为(1,2),半径为2的圆。计算机中的实现:struct circle{ Point2D center; float radius;} 2.球(3D)球的两个关键因素转载 2013-11-16 10:31:03 · 1596 阅读 · 0 评论 -
游戏开发中的数学和物理算法(11):极坐标 vs 笛卡尔坐标
游戏开发中的数学和物理算法(11):极坐标 vs 笛卡尔坐标在1D的系统中利用正负去表示矢量是足够的,但是在2D和3D的系统中利用正负去表示矢量就不是很足够了。但是如果用极坐标系统去表示的话,就会比较直观。极坐标表示矢量:矢量 Ā=||A||@ θ (||A||代表大小, θ代表方向)笛卡尔坐标表示矢量: (i代表x的方向,j代表y的方向转载 2013-11-16 10:37:47 · 1857 阅读 · 0 评论 -
游戏开发中的数学和物理算法(18):缩放
游戏开发中的数学和物理算法(18):缩放2D缩放的数学形式:Sx代表x方向的缩放量,Sy代表y方向的缩放量。当Sx=Sy代表等比例缩放。例如:将下图的矩形ABCD放大3倍。设A(10,10),那么缩放后的A',将通过下列计算获得A'(30,30)。同理可以计算出缩放后的B'(150,30), C'(150,120),和 D'(30,120)。如图:转载 2013-11-16 10:41:52 · 1457 阅读 · 0 评论 -
游戏开发中的数学和物理算法(1):定义点
游戏开发中的数学和物理算法(1):定义点数学中的坐标系统(笛卡尔坐标系统)这里A(0,0), B(1,2), C(4,3), D(–1,2), E(–2,–1), F(3,–2).计算机中的坐标系统(屏幕坐标系统)注意这里的y轴在两个坐标系统是相反的。在后面将会研究将笛卡尔坐标系统转换为屏幕坐标系统。在3D的坐标系中,没有一个工业标准,有的采用y轴向上(y-转载 2013-11-16 10:04:42 · 1356 阅读 · 0 评论 -
游戏开发中的数学和物理算法(8):三角函数
游戏开发中的数学和物理算法(8):三角函数三角函数在计算机游戏开发中是经常被用到的。主要三角函数sin a=b/ccos a=a/ctan a=b/a其他三角函数csc a=c/b=1/ sin asec a=c/a=1/ cos acot a=a/b=1/ tan a 常用三角函数函数值表转载 2013-11-16 10:36:21 · 2760 阅读 · 0 评论 -
游戏开发中的数学和物理算法(10):矢量 vs 标量
游戏开发中的数学和物理算法(10):矢量 vs 标量1.标量标量只有大小没有方向。2.矢量矢量既有大小又有方向。3.常用举例:物理上常用的矢量与标量的对应概念有:速度和速率;距离和位移等。如图:距离:假设A到B的距离为a,B到C的距离为b,C到D的距离为c;那么A到D的距离就为a+b+c。位移:假设A到B的位移为a,B到C的位移为b,转载 2013-11-16 10:37:22 · 1234 阅读 · 0 评论 -
游戏开发中的数学和物理算法(3):点之间的距离
游戏开发中的数学和物理算法(3):点之间的距离1.计算两点之间的距离公式:a2+b2=c2(勾股定理) 2D:3D:计算机实现:float Distance2D(Point2D p1,Point2D p2){ float dx=p1.x-p2.x; float dy=p1.y-p2.y; f转载 2013-11-16 10:06:33 · 2085 阅读 · 0 评论 -
游戏开发中的数学和物理算法(4):抛物线
游戏开发中的数学和物理算法(4):抛物线抛物线如果你投掷一个铅球或者踢足球,它们将做一个抛物线运动。因为它们总是受一个垂直于地面的重力加速度g的作用。下图为四个方向上的抛物线。公式:垂直轴向上的抛物线:y=a(x–h)2+k, 顶点为(h,k),关于x=h对称.水平轴向上的抛物线:x=a(y–k)2+h, 顶点为(h,k),关于y=k对称.举转载 2013-11-16 10:35:20 · 4301 阅读 · 0 评论 -
游戏开发中的数学和物理算法(9):三角代数
三角代数里的公式推理思路都是通过单位圆来完成的。在单位圆中有x2+y2=1。下图为一单位圆:推论出的公式:cos2a + sin2a = 1sin(–a) = –sinacos(–a) = cosatan(–a) = –tanasin(a1 + a2) = sina1cosa2 + cosa1sina2sin(a1 – a2)转载 2013-11-16 10:36:45 · 1099 阅读 · 0 评论 -
游戏开发中的数学和物理算法(12):矢量的加减法
游戏开发中的数学和物理算法(12):矢量的加减法一个矢量,它的几何图形的表示为一个带箭头的线段,线段大小为矢量的大小(矢量的模),箭头的方向为矢量的方向。如图:矢量的可以用平行四边形法则来进行计算。如下图,虚线表示的B和实线表示的B是等价的,即我们认为是相等的。矢量的加法计算如图 设A=a1i+a2j , B=b1i+b2j那么A+B=(a1+b1)i转载 2013-11-16 10:38:06 · 1834 阅读 · 0 评论 -
游戏开发中的数学和物理算法(14):矩阵的相等和转置
游戏开发中的数学和物理算法(14):矩阵的相等和转置矩阵通常在游戏处理表示有行和列的数据。只有一行的矩阵,我们可以将其看成一个矢量。数学表示:如图在计算机中的表示:矩阵的在计算机中通常有一个二维数组来表示。下面是一个三行三列的矩阵。struct Matrix3X3 { float x[3][3]; } 矩阵相等:矩阵的转载 2013-11-16 10:38:51 · 1526 阅读 · 0 评论 -
游戏开发中的数学和物理算法(15):矩阵的加减法
游戏开发中的数学和物理算法(15):矩阵的加减法矩阵加法数学表示矩阵减法数学表示:计算机中矩阵加法的实现: Matrix3X3 addMatrices(Matrix3X3 a, Matrix3X3 b) { Matrix3X3 temp; for(int i = 0;i3;i++)转载 2013-11-16 10:39:43 · 1082 阅读 · 0 评论 -
游戏开发中的数学和物理算法(17):平移
游戏开发中的数学和物理算法(17):平移点的平移,可以通过矩阵相加和相乘来模拟。2D加法平移:例如:点A(20,30),向右移50个像素,向下移100个像素,得到A'。那么A'(70,-70)。3D加法平移:例如:计算机中实现:Matrix3X1 translate3DByAddition(Matrix3X1 star转载 2013-11-16 10:41:24 · 1669 阅读 · 0 评论 -
游戏开发中的数学和物理算法(6):圆和球的碰撞检测
1.圆的碰撞检测圆的碰撞条件:当两个圆相切或者相交时,我们认为两个圆应该开始发生碰撞。数学表示:计算机中的实现:bool CollisionBetweenCircles(circle c1,circle c2){ bool hit; float distanceOfCenter=sqrt(pow((c1.center.x-c2转载 2013-11-16 10:31:37 · 2628 阅读 · 0 评论 -
游戏开发中的数学和物理算法(7):角度 vs 弧度
我们通常使用的笛卡尔坐标系统,角点通常在(0,0),即原点。初始边在x轴正半轴,终边与初始边成夹角。初始边逆时针旋转为正值,顺时针旋转为逆值。 数学表示:角度:degree=radian*180/π弧度:radian=degree*π/180π≈3.141592654例如:120◦转换为弧度为2π/3计算机中的实现:转载 2013-11-16 10:35:56 · 1774 阅读 · 0 评论 -
游戏开发中的数学和物理算法(13):点积和叉积
游戏开发中的数学和物理算法(13):点积和叉积代数中的乘法应称为数乘,比如2×3=6,2·3=6。但是在几何中2·3为点积,2×3为叉积。1.点积A·B=|A| |B| cosq2D:定义矢量A[a1,a2],矢量B[b1,b2] ;那么点积A·B=a1b1+a2b2。3D:定义矢量A[a1,a2,a3],矢量B[b1,b2,b3] ;那么点积A·B=a转载 2013-11-16 10:38:27 · 1481 阅读 · 0 评论 -
游戏开发中的数学和物理算法(16):矩阵的乘法
游戏开发中的数学和物理算法(16):矩阵的乘法矩阵数乘数学形式:计算机中矩阵数乘的实现:Matrix3X3 scalarMultiply(Matrix3X3 a, float scale){ Matrix3X3 temp; for(int i = 0;i3;i++) { for(int j=0;转载 2013-11-16 10:40:03 · 1173 阅读 · 0 评论 -
学习shader之前必须知道的东西之计算机图形学(一)渲染管线
引言 shader到底是干什么用的?shader的工作原理是什么? 其实当我们对这个问题还很懵懂的时候,就已经开始急不可耐的要四处搜寻有关shader的资料,恨不得立刻上手写一个出来。但看了一些资料甚至看了不少cg的语法之后,我们还是很迷茫,UNITY_MATRIX_MVP到底是个什么矩阵?它和v.vertex相乘出来的又是什么玩意?当这些问题困扰我们很久之后,我们才发现,原来我们是站在浮转载 2013-11-20 14:26:47 · 2441 阅读 · 1 评论 -
关于计算机图形学的学习
1. 引言 计算机图形学是用计算机来画东西的学科,数字图象处理是把外界获得的图象用计算机进行处理的学科。在法国,图形图象是一门课程。 如何学习计算机图形学呢?除了计算机图形学的基础知识以外,你还需要有以下的知识,你懂的越多,当然做的越好。* 英语, 你一定要把英语学好,如果你想学习计算机图形学的话,尽量看英文的书籍和资料* 数学, 计算机图形学里面的数学用的比较多转载 2013-11-21 17:14:11 · 1460 阅读 · 0 评论 -
独立游戏设计宣言
如果你是游戏业界里的工作者,你是否梦想着某一天,可以不再只是当一个庞大企业机械里的小齿轮,而能真正地去制作自己想做的游戏?如果你是有志朝向游戏业界谋求发展的学生,你是否早已厌倦了市面上千篇一律的武侠三国题材,以及一成不变的游戏玩法?独立游戏开发,可能是你的一帖解药。然而,若你想进入独立游戏开发领域的话,到底应该做些什么?又不该做些什么呢?本文作者Edmund McMillen 是一位独立游转载 2013-11-22 09:31:48 · 1268 阅读 · 0 评论 -
如何制作全息视频--3D max+AE搞定
看到有人问如何做手机之类的全息视频而非初音,MMD之类的肯定是不行了本人菜鸟一个,自己研究了一下3dmax的做法打开后,拖入4个摄像机,成十字状,注意要将目标距离设成一样的,这里是140 然后拖入物体,这里拿茶壶代替,很多素材如手机都可以到网上找调整位置,大小 将四个界面调成四个摄像机后的效果 可以看到四分屏的效果了动画部分在右下角进入时间配置中转载 2013-11-23 10:38:00 · 19513 阅读 · 7 评论 -
NGUI控件说明(中文) UIGrid
原文:http://www.tasharen.com/forum/index.php?topic=6756.0概述UIGrid是用来轻松的排列众多widget到固定大小格子的脚本。 编辑时和运行时都可以使用。如果想使用可变的格子单元大小,你可以使用UITable。选择一个panel,之后在scene view中右键点击任何地方,在Create menu里原创 2014-02-24 10:38:07 · 17111 阅读 · 0 评论 -
NGUI控件说明(中文) UITexture
原文:http://www.tasharen.com/forum/index.php?topic=6703.0概述UITexture是最基本的NGUI渲染组件。继承了UIWidget的所有功能,增加了可视化的部分——一个纹理——通过dimensions进行缩放。指定一个Texture用来渲染。指定后会自动生成一个材质(material)。如果没指定Textu原创 2014-02-24 10:44:44 · 5800 阅读 · 0 评论 -
NGUI控件说明(中文) UIKeyBinding
原文:http://www.tasharen.com/forum/index.php?topic=6753.0概述UIKeyBinding会产生一个指定的按键时间,比如你按下‘1’后,绑定了这个脚本的game object就好像被点击了一样(就像快捷键上的魔法释放按键)。 也可以选择input filed后开始输入(就像敲回车一样)你是否想不写任何代原创 2014-02-24 10:48:29 · 3075 阅读 · 0 评论 -
NGUI控件说明(中文) Tweens
原文:http://www.tasharen.com/forum/index.php?topic=6760.0概述NGUI自带小而精的Tween库。可以右键widget之后在Tween菜单选择合适的选项来给它增加tween功能。或者通过NGUI菜单增加。或者直接通过名字来挂tween脚本。新增的tween默认是active的,所以你点击Pla原创 2014-02-24 11:24:27 · 15807 阅读 · 1 评论 -
NGUI控件说明(中文) UIAnchor
原文:http://www.tasharen.com/forum/index.php?topic=6712.0概览UIAnchor让你可以固定game objects在屏幕或者其他widgets的某一边或者某一个角。这是一个关键的组件,用来在NGUI中创建模块化的UI。 是否想让你的一部分UI粘在屏幕的角落或者边缘上?比如魔兽世界。在这个游戏中原创 2014-02-24 10:43:14 · 9322 阅读 · 0 评论 -
NGUI控件说明(中文) UISprite
原文:http://www.tasharen.com/forum/index.php?topic=6704.0概述UISprite是NGUI里面最实用的。使用atlas纹理的一部份用来绘制sprite,继承UIWidget的所有功能。sprite首先需要一个Atlas。点击Atals按钮会列出当前项目中已有的atlas。创建新的atlas要通原创 2014-02-24 10:53:19 · 7930 阅读 · 0 评论 -
NGUI控件说明(中文) UIButton
原文:http://www.tasharen.com/forum/index.php?topic=6708.0概述Button是一个非常简单的组件,有以下功能:接收hover、pressed、click事件,修改指定的sprite颜色。Image Button组件可以和Button同时加到一个game object上,Image Button用来切换sprite原创 2014-02-24 11:00:16 · 7010 阅读 · 0 评论 -
NGUI控件说明(中文) UIToggle
原文:http://www.tasharen.com/forum/index.php?topic=6709.0概述Toggle是一个有两种状态的组件:开,关。可以用来创建checkboxes、tabs还有radio按钮,或者其他类似的东西。Toggle是一个非常棒的组件,可以用来做很多事情。和大多数NGUI控件一样,它的灵活性很高。通过和其他的脚本组原创 2014-02-24 11:01:26 · 22968 阅读 · 0 评论 -
NGUI控件说明(中文) UIPlayAnimation
原文:http://www.tasharen.com/forum/index.php?topic=6762.0概述UIPlayAnimation通过你选择的事件条件去触发其他的动画。它和UIPlayTween的区别就是它处理的是动画。给widget增加动画的最好好发就是点击ctrl+6来打开Animation窗口。如果你只是试验一下,你可以直原创 2014-02-24 11:05:58 · 3772 阅读 · 0 评论 -
NGUI控件说明(中文) UIPopupList
原文:http://www.tasharen.com/forum/index.php?topic=6751.0概述把UIPopupList脚本挂到一个button上,就可以在你点击按钮的时候弹出选项列表,之后选择你想要的选项。 想要创建一个有很多选项的popup list,首先你要挂一个UIPopupList脚本到一个Button上,然后指定Atla原创 2014-02-24 11:14:12 · 7613 阅读 · 0 评论 -
NGUI控件说明(中文) UISlider
原文:http://www.tasharen.com/forum/index.php?topic=6715.0概述UISlider组件可以用来创建一个简单的slider和进度条。继承了UIProgressBar的所有功能,之后增加了可选的滑块。最简单的方式,UISlider用来实现功能的唯一需求就是设置一个用来修改的Foreground widget转载 2014-02-24 11:15:32 · 10206 阅读 · 0 评论 -
NGUI控件说明(中文) UIScrollBar
原文:http://www.tasharen.com/forum/index.php?topic=6733.0概述UIScrollBar用来创建滚动条——可变长度的滑动条在大小固定的区域移动。它继承了所有UIprogressBar的功能,仅仅修改了前景的显示方式,变为可以被移动位置并且可以交互。与UISlider类似,UIScrollBar需要引用一原创 2014-02-24 11:17:17 · 5272 阅读 · 1 评论