Unity3D
文章平均质量分 76
悟之思语
长亭外,古道边,芳草碧连天,晚风拂柳笛声残,夕阳山外山。天之涯,地之角,知交半零落,人生难得是欢聚
展开
-
Unity界面插件NGUI核心组件介绍
UICamera-可以添加到任何相机,包含事件系统.UICamera是每个UI的重要组成部分.它负责发送Camera中所有NGUI的活动.如果场景中仅有一个Camera,要确保它附有UICamera脚本.如果有多个相机,确保至少用来渲染UI的相机有UICamera脚本.当将这个脚本放在主相机上时,在游戏场景中的所有都将有OnClick, OnHover, OnDrag等事件.转载 2013-08-30 09:41:20 · 6509 阅读 · 0 评论 -
NGUI控件的ScrollView讲解
其效果如图所示:NGUI的ScrollView能够实现鼠标或者手势对图标的滚动操作,现在在很多的游戏中都能够见到。例如在《愤怒的小鸟》中的关卡选择等等。实现图标的滚动操作在NGUI中很容易实现,只要在Panel中加入一个UIDragPanelContents组件,再做些细节上的操作就可以了。在本教程中,我们将分三步来完成这个例子。第一步,创建窗口背景;第二步,创建和实现图标滚动效果;第转载 2013-08-30 12:01:04 · 23943 阅读 · 2 评论 -
NGUI的使用教程与实例
原文地址:http://www.tasharen.com/?page_id=185NGUI下载地址:点我传送NGUI教程:步骤1-Scene1.创建一个新的场景(New Scene)。2.选择并删除场景里的MainCamera。3.在NGUI菜单下选择Create a New UI,会打开UI创建向导。4.在创建向导中你能更改UI的基本参数。现在我们选D转载 2013-08-30 09:46:07 · 20506 阅读 · 0 评论 -
NGUI学习笔记
1 添加控件对应功能介绍(在template模板中进行选择) 英文控件名中文控件名label标签sprite精灵Sliced sprite切片精灵Tiled sprite瓷砖精灵Filled sprite转载 2013-08-30 11:42:03 · 4222 阅读 · 0 评论 -
NGUI系列教程三
接下来我们再来看Progress Bar和Slider,对比参数我们可以发现,Progress Bar和slider的明显区别在于slider多一个Thumb选项,这里的Thumb就是我们拖动的时候点击的按钮。 Empty 和Full选项其实就是前景和背景的Spirit。这里大家都已经熟悉了,我们看Slider和ProgressBar的根节点,也可以发现,Slider之比Proge转载 2013-08-30 13:57:31 · 9513 阅读 · 0 评论 -
NGUI系列教程七(3D视图&ScrollView)
今天我们通过一个综合的例子来讲解NGUI的3dUI 和ScrollView。本例结合是了NGUI官方自带例子中的Example 6 - Draggable Window和Example 7 - Scroll View (Panel)两个场景的内容来讲的,帮助大家更好的理解这两个场景的内容。如果大家对这两个场景都很精通的话,可以忽略此教程。最终实现结果如下图:1.首先新建一个场景,通过菜单N转载 2013-08-30 14:02:42 · 8380 阅读 · 3 评论 -
Unity粒子的相关属性介绍
粒子的相关属性介绍Emit:是否使用粒子发射器。若不选中,则不产生粒子特效。Min Size: 粒子的最小尺寸。Max Size: 粒子的最大尺寸。Min Energy: 粒子的最小生命周期,单位为秒,意思为N秒后该粒子消失。Max Energy: 粒子的最大生命周期,单位为秒,意思是N秒后该粒子消失。Min Emission: 粒子每秒生成的最小数量。Max Emis转载 2013-08-30 14:10:21 · 1402 阅读 · 0 评论 -
游戏人工智能(AI)开发(三)Part1
从本节开始我们通过做一个小的游戏,来给大家讲解AI中的巡逻机器人的功能。巡逻机器人是指在游戏中,如果对手没有出现(或者是没有发现敌人)的情况下,巡逻机器人在巡逻区域内自动来回行走,巡逻周围情况。一旦发现敌人,它将自动跟踪敌人并攻击敌人。和这种具有自动追击功能的机器人相对的是防守机器人,它们只守在自己的地方,一旦敌人靠得足够近(指在攻击范围内),就发起攻击。在这节我们需要准备如下素材,一个能够做转载 2013-08-30 14:14:52 · 3699 阅读 · 0 评论 -
NGUI系列教程四(自定义Atlas,Font)
今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI。第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中。2. 全选我们需要用到的UI素材。选择菜单NGUI-->Open the Atlas Maker(快捷键 Alt +shift+M)。打开Atlas Maker窗口,如图我们可以看到,刚才选择的图转载 2013-08-30 13:59:00 · 8715 阅读 · 2 评论 -
NGUI系列教程五(角色信息跟随)
在一些网络游戏中,我们常常可以看到角色的上方显示着角色的名称,等级,血量等信息。它们可以跟随角色移动,并且可以显示和隐藏。今天我们就来学习一下这些功能的实现方法。1. 新建unity工 程,导入NGUI插件。对于字体按钮等的制作方法参见以前的系列教程。这里我们直接开始学习制作方法。首先新建一个2DUI,设置UI的层为NGUI。新 建完成后,使用菜单NGUI -->Create a Panel转载 2013-08-30 14:00:01 · 9743 阅读 · 6 评论 -
NGUI系列教程六(序列帧动画)
今天我给大家讲一下如何使用NGUI做序列帧动画。本节主要包括两方面内容,分别是使用UIspirit和使用UITexture 做序列帧动画。废话不说了,下面开始。还要在啰嗦一句,首先大家要准备一些序列帧的素材图片,最好是大图和小图各一套。我们先来将使用UISpirit做序列帧动画,这个方法只适合使用小图。在使用UISpirit 之前大家还要把准备好的序列帧图片做成Atlas,如何做Atlas转载 2013-08-30 14:00:47 · 14109 阅读 · 3 评论 -
Unity 角色控制相关操作
首先打开unity游戏引擎编辑器,然后在Project视图中右键选择Import Package -> Charactr Controller(角色控制器)把它导入我们的工程中。如下图所示,第一人称与第三人称的组建已经加入Project视图中。3rd Person Controller 表示第三人称控制器,First Person Controller表示第一人称控制器。下面我们在看看第三转载 2013-08-30 14:04:48 · 4086 阅读 · 0 评论 -
如何学习Unity3D呢?
第一步首先了解unity3d的菜单,视图界面。这些事最基本的基础,可以像学word操作一样,大致能明白有几个菜单,几个基本的视图,各自起什么作用的就可以了,可以参考这系列专门介绍界面视图的文章,对于学习有很大的帮助:unity3d教程手册。第二步理解场景里面的坐标系统,输入系统,简单的向量概念。Unity3D的坐标系统及向量概念如果不理解清楚,不理解世界坐标,局部坐标的关系,即使一个简单的移动转载 2013-08-30 14:10:43 · 2965 阅读 · 0 评论 -
NGUI系列教程一
首先导入NGUI package,这里我们选用的是2.6.3版本的NGUI。在unity工程窗口中点击右键选择 Importpackage àcustom package,选择你下载的NGUI插件,导入完成后效果如图:1.选择菜单NGUIàOpen the UI Wizard,弹出创建UI对话框。点击Layer窗口右边对应的按钮,弹出层选择对话框,在这里我们选择AddLayer转载 2013-08-30 13:54:09 · 54006 阅读 · 2 评论 -
NGUI系列教程二
接下来我们创建一个Label,NGUIàOpen the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点击,Add To完成Label创建。1.Label属性窗口如图1.下面的节奏可能有点快,大家可以先熟悉一下上面讲的流程,再进行下面的学习。接下来我们依次创建Button和Input,因为这两个转载 2013-08-30 13:56:03 · 14622 阅读 · 2 评论 -
Unity将来会成为AR重要的一部分
这是Meta,开始在哥伦比亚大学的一个AR项目,在不到一年的时间内募资到资金并规划许多有别与Google眼镜的功能,Meta的眼镜视野自然的贴合在现实上,加上一个镜头就可以和虚拟世界互动。Meta的CEO表示,unity提供了很好的3d制作环境,未来Unity将会成为开发AR的一个重要的系统。自从Meta在Kickstater募资成功之后,它们都在忙于写出给开发者用的SDK,超过500家开转载 2013-08-30 14:07:31 · 2266 阅读 · 1 评论 -
Unity 粒子的相关属性介绍
粒子的相关属性介绍Emit:是否使用粒子发射器。若不选中,则不产生粒子特效。Min Size: 粒子的最小尺寸。Max Size: 粒子的最大尺寸。Min Energy: 粒子的最小生命周期,单位为秒,意思为N秒后该粒子消失。Max Energy: 粒子的最大生命周期,单位为秒,意思是N秒后该粒子消失。Min Emission: 粒子每秒生成的最小数量。Max Emis转载 2013-08-30 14:08:47 · 2647 阅读 · 0 评论 -
游戏人工智能(AI)开发(一)
从今天开始,我为大家讲解在unity中 开发AI系统,在游戏开发,特别是大型三维网络游戏中,人工智能的开发占有重要的比例。一个游戏的好玩程度跟人工智能部分的开发有很大关系。我们首先学习 一些关于游戏AI方面的基础知识,让大家有个大体的了解,然后我们会结合Unity,做出一些简单的示例来让大家学习如何在unity中制作AI系统。 本节内容可能有些枯燥,这是在网上搜集的关于 AI方面的一些理论知识转载 2013-08-30 14:13:06 · 5302 阅读 · 0 评论 -
游戏人工智能(AI)开发(二)
是不是被上节的理论知识弄到头大?怀念使用unity的 日子吧?哈哈……这节开始我们就要用以前学到的知识在unity中应用啦。今天我们先做一个简单的你追我跑的智能逻辑。程序的功能大概是这样的,场景中有 一个角色和N个敌人。N个敌人根据角色的位置判断自己是该停止还是该躲避(逃跑)。如果角色距离某一个敌人距离小于该角色害怕(开始逃避)的距离,则敌人 开始逃跑。否则,敌人保持站立。1. 首先新建一个场转载 2013-08-30 14:14:06 · 1824 阅读 · 0 评论 -
游戏人工智能(AI)开发(三)Part2
1. 上节我们讲述了整个游戏的逻辑。然后我们开发了具有巡逻功能的“孙悟空”。它可以自动巡逻,并在巡逻的途中发现“妖怪”。然后跑向妖怪,并在距离足够近的情况下发动攻击。直至“妖怪”死亡。今天我们开始写妖怪的逻辑,首先是妖怪的生命值。这里我们只用一个简单的数字来代表生命值,并在生命值减到小于0的时候,给出提示:“妖怪”死亡,并无法再次移动,我们还需要一个参数代表妖怪是否死亡,死亡情况下“孙悟空”停止攻转载 2013-08-30 14:15:55 · 1047 阅读 · 0 评论 -
Unity知识——静态变量
使用JAVA,想要使用静态变量时,直接就在类中定义。C++也有静态变量,不过,跟JAVA 有点区别。这里给出一个可行的静态变量的使用例子。我们假设,静态变量类型是 A*A代表某个类在 .h 文件中,class XXXXX{public :static void setA(A* objP);static A* getA();};在.cpp 文件中转载 2013-09-02 10:02:58 · 2946 阅读 · 0 评论 -
Shader着色技术细节
一个着色器本质上定义了游戏中的明暗应该如何表现的规则。在任意给定的着色器里是一个属性(通常是纹理)的数量。着色器通过材质执行,直接附属到特定的游戏对象。在一个材质里,你可以选择一个着色器,然后定义属性(通常是纹理和色彩,但性质可能不同)由该着色器使用。图表的左边是车体着色器。 2个不同的材质是这样创建的:蓝色的汽车材质和红色的汽车材质。这些材质的每一个都有2个给定的纹理;汽车纹理定义汽车的转载 2013-09-02 10:04:02 · 1910 阅读 · 0 评论 -
Unity脚本编程(一)概述
接下来学习游戏中重要的一块内容,脚本。脚本可以让游戏世界活起来,不再是毫无生机的图片或固定的电影。而是一个可以交互的世界。在unity3d游戏开发中游戏的逻辑,玩家的输入,网络消息收发等都是由脚本控制的。Unity中可以支持多种脚本:Javascript、C#和Boo,降低学习成本,开发者可以选择自己熟悉的一门语言。你可以在一个项目中使用一种或全部的脚本语言,同时使用一种或多种脚本语言也是没有转载 2013-09-02 10:06:03 · 1105 阅读 · 0 评论 -
关于碰撞面检测方法
unity3d制作2d游戏中我们熟知的碰撞检测应该是碰撞点的检测 collision,那么我们如果要实现一个多边形的碰撞面检测要如何实现呢,一:最笨的办法就是在脚本里取范围区间来判断面的碰撞,二:可以给物体的每个面添加一个子物体来判断碰撞对象,如果是不规则的多边形这样做是很麻烦的,三:我现在所使用的是用碰撞点的法线来判断所碰撞的面,用一个正方体来举例,首先拿到碰撞点的法线对象pub转载 2013-09-02 10:07:38 · 1335 阅读 · 0 评论 -
分享使用Unity制作游戏关卡的教程(1)
作者:Matthias Zarzecki我正在制作《Looking For Group – The Fork Of Truth》的关卡。在本系列中,我们将使用Unity制作游戏的环境。第一部分主要介绍基本场景——地形。这是其他场景元素的构建基础。如果你已经看过我们的Kickstarter融资预告片,那么你应该看过这个场景了。为了制作这些视频,我们其实制作了一个可玩的关卡。我们把它当转载 2013-09-02 10:09:03 · 4075 阅读 · 0 评论 -
分享使用Unity制作游戏关卡的教程(2)
作者:by Matthias Zarzecki本文是“使用Unity制作《The Fork Of Truth》的关卡”系列的第二部分。在第一部分中,我们介绍了如何使用Unity的Unity Terrain制作基本场景。在这一部分,我将继续介绍场景对象以及它们的设置。Benjamin(from pladinstudios)基本设置制作关卡有两种途径:一是使用模块化贴图系统(想转载 2013-09-02 10:10:37 · 3342 阅读 · 0 评论 -
游戏人工智能(AI)开发(三)Part3
上节我们完成了“妖怪”功能的开发,“孙悟空”也已经能够寻找到妖怪并发起攻击了。但是我们发现,现在的攻击对“妖怪”无任何伤害效果。这一节我们将它完善,使“孙悟空”的攻击具有杀伤力。这段代码主要是完成碰撞“妖怪”角色的检测,然后对“妖怪”角色减血。1. 新建一个C#脚本命名为BulletScript。添加如下代码:using UnityEngine;using System.Collect转载 2013-09-02 10:12:40 · 1480 阅读 · 0 评论 -
GUI与GUILayout的区别
GUILayout是什么东西呢?它是游戏界面的布局。从命名中就可以看到这两个东西非常相像,但是在使用过程中两者还是存在一定区别的。使用GUI绘制控件的时候,需要设置控件的Rect()方法,也就是说需要设定控件的整体显示区域。这样设置的控件非常不灵活,因为它的坐标以及大小已经固定死了,这时如果控件中的内容长度发生改变,就会直接影响展示效果。例如,在界面中绘制一个按钮时,按钮中的显示文本刚好填充在原创 2013-09-02 15:39:11 · 1679 阅读 · 0 评论 -
GUILayout 界面布局
GUILayout类是用于GUI自动布局的接口。Class Functions类函数LabelMake an auto-layout label.创建一个自动布局的标签。 BoxMake an auto-layout box.创建一个自动布局的box。 ButtonMake a single press button. The user clic原创 2013-09-02 15:39:45 · 2319 阅读 · 1 评论 -
GUI布局类 GUILayout
GUILayout 类 GUILayout是用于UnityGUI自动布局的类。 参见:GUI Layout tutoria 类方法 ◆ static function BeginArea(screenRect : Rect) : void ◆ static function BeginArea(screenRect : rect, text : string转载 2013-09-02 15:42:27 · 13283 阅读 · 0 评论 -
游戏剧情设计终极指南
故事与游戏一直总是不能很好地结合在一起。打从一开始,设计师将故事写进他们的游戏之中,让玩家有一个固定的开始,一条故事主线可以跟随,以及一个预先设置好的结局。但是与此同时,大批的玩家蜂拥入其他一些游戏,就因为这些游戏没有任何的故事结构。一次游戏体验是创造一段故事的机会,而不是让玩家屈从于设计师所编造的一段从未发表过的小说。 2013-5-20 09:20 上传下载附件(51.转载 2013-09-02 10:56:32 · 3132 阅读 · 1 评论 -
Unity3d的GUI排版教程-1
教程主要是面向WEB 3D开放方向的朋友而些的,也有助于以前的的DIV+CSS设置者在利用U3D设计3D WEB的时候,有个清醒的认识。 很多初学的朋友在做U3D的UI设置的时候,对U3D的GUI与GUILayout相关的BUTTON、Label 、TextArea 、TextField等等类概念十分模糊。奇怪于为什么会有种状态的按钮,标签、文本域、文本输入框等等。其实如果您以前是从转载 2013-09-02 15:34:37 · 1610 阅读 · 0 评论 -
Unity3d的GUI排版教程-2
在上一节中,我们大致了解了GUI与GUILayout存在的一些差异。在这一节中我会举一些例子,来为大家详细讲述利用GUILayout做UI排版的好处。 我首先在脚本的OnGUI()函数体中,添加两段按钮代码,一段是GUI.Button如下所示: GUI.Button(new Rect(100f, 100f, 100f, 50f), "Hello GUI.Button");转载 2013-09-02 15:35:14 · 1390 阅读 · 0 评论 -
Unity3d的GUI排版教程-3
在上一节GUILayout.BeginArea、GUILayout.BeginVertical、GUILayout.BeginHorizontal这三大要素,下面我讲用这三大要素来进行一次经典的横、纵、横式布局排版,布局格式如下图所示: 接着代码如下所示: GUILayout.BeginArea(new Rect(10, 10, 300, 300));转载 2013-09-02 15:36:20 · 1354 阅读 · 0 评论 -
Unity3d的GUI排版教程-4
在前面的一个小节,我们已经能使用GUILayout 做一些简单的排版工作了。但它排版的样式可能并不能令你满意。比方说,有的朋友就想让这样的按钮之间变的紧凑一些,这该怎么办呢?在网页设计中,我们可以规定通过CSS设置一个块的Style,而在Unity3D中,我们则可以使用GUIStyle和GUISkin来设置常用块的Style,或是自定义块的Style。 那GUIStyle和GUISk转载 2013-09-02 15:37:11 · 2521 阅读 · 0 评论 -
Unity3d-GUI入门
这一段将解释UnityGUI控制所需的脚本。UnityGUI控制 UnityGUI控制是利用一类被称为OnGUI()的函数,只要在控制脚本激活的状态下,OnGUI()函数可以在每帧调用,就像Update( )函数一样。 GUI控制在结构上相当简单,这种结构在下面这个例子中十分明显:/* Example level loader */function OnGUI (){/转载 2013-09-02 15:57:14 · 25915 阅读 · 0 评论 -
unity3d用鼠标拖动物体的一段代码
这是一段拖动物体的代码,比较简洁明了,对了解unity3d脚本概念有些帮助!在此加上注释分享!var mouseOverColor = Color.blue;//声明变量为蓝色private var originalColor : Color;//声明变量存储本来颜色function Start () { originalColor = renderer.sharedMate转载 2013-09-03 15:32:39 · 1112 阅读 · 1 评论 -
全面解析Unity3D自动生成的脚本工程文件
我们在Unity3D开发的时候,经常会看到它会产生不少固定命名工程文件,诸如:Assembly-CSharp-vs.csproj Assembly-CSharp-firstpass-vs.csprojAssembly-CSharp-Editor-vs.csprojAssembly-CSharp-Editor-firstpass-vs.csproj看得不少人云里雾里的转载 2013-09-03 16:42:22 · 1285 阅读 · 0 评论 -
Unity3d与eclipse协同工作环境
这个过程非常复杂。步骤一定要谨记1,建立一个unity3d工程,然后自己丢点模型进去吧。然后设置导出时候的包名字(重要,后面解析),build一下。就会发现工程目录下面的temp文件夹里面多了一个文件夹,如果不build是没有的,如果你关闭了unity的话这个文件夹也会消失,这个现象费了我一天的时间,看官网英文教程漏一个单词都不行啊。2,拷贝temp文件夹里面的StagingArea出来,转载 2013-09-10 09:07:08 · 1146 阅读 · 0 评论 -
Unity3D游戏制作之3D横版场景的角色移动控制
教程作者:转载自互联网 (如有问题请短消息联系作者或发表回复)本系列文章由 Amazonzx 编写,欢迎转载,转载请注明出处。http://blog.csdn.net/amazonzx/article/details/7824112开博写Unity的东西也写了好多,但大部分都是翻译,原创很少,接下来的一段日子,我会多写一些原创文章,介绍一些在转载 2013-09-04 08:40:34 · 3443 阅读 · 0 评论