自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

转载 Unity3D之GUI基础以及常用GUI控件使用

1.GUI基础(1)GUI部分是每帧擦除重绘的,只应该在OnGUI中绘制GUI,按钮:GUILayout.Button(“Hello”); 只读标签:GUILayout.Label()(2)修改控件的颜色:GUI.backgroundColor = Color.red;设置背景色,GUI.color设置前景色,影响OnGUI中之后的控件直到下次修改颜色为止。

2015-02-08 22:34:21 1312

转载 Unity3D介绍以及编辑器的使用

1.Unity3D介绍           Unity3D是跨平台(IOS、Android、Windows Phone、Windows、Flash、XBOX360、PS3、Wii等)游戏引擎,可以开发2D、2.5D、3D游戏。appstore手机上有1500+款用Unity3D开发的游戏。          什么是游戏引擎?开发简单、高度封装(OpenGL、DirectX)。其他游

2015-02-08 22:29:38 906

转载 Unity3D:Gizmos画圆

Gizmos是场景视图里的一个可视化调试工具。在做项目过程中,我们经常会用到它,例如:绘制一条射线等。Unity3D 4.2版本截至,目前只提供了绘制射线,线段,网格球体,实体球体,网格立方体,实体立方体,图标,GUI纹理,以及摄像机线框。如果需要绘制一个圆环还需要自己写代码。文章出处狗刨学习网[size=3]using UnityEng

2015-02-08 17:19:26 603

转载 Unity3D 批量图片资源导入设置

Unity3D 批量图片资源导入设置using UnityEngine;using System.Collections;using UnityEditor;/// /// 批量图片资源导入设置/// 使用说明: 选择需要批量设置的贴图,/// 单击DuanMenu/Texture Import Settings,/// 打开窗口后选择对应参数,///

2015-02-08 17:08:10 655

转载 Unity3D ParticleSystem粒子系统(3.5版)

创建"粒子系统物体"(点击菜单GameObject -> Create Other -> Particle System)添加"粒子系统组件"(点击Component -> Effects  -> Particle System)粒子系统检视面板 点击粒子系统检视面板的右上角的"+"来增加新的模块。(Show All Modules:显示

2015-02-08 17:03:46 820

转载 Unity3D 播放视频

MovieTexture 影片纹理:影片纹理不支持iOS系统和Android系统。 他们使用全屏的流式播放,使用iPhoneUtils.PlayMovie 和 iPhoneUtils.PlayMovieURL。 导入:影片纹理是通过Apple QuickTime导入的(支持.mov, .mpg, .mpeg, .mp4, .avi, .asf

2015-02-08 16:56:59 483

原创 Unity3D 控制物体移动、旋转、缩放

Transform基本移动函数:1.指定方向移动://移动速度 float TranslateSpeed = 10f;//Vector3.forward 表示“向前”transform.Translate(Vector3.forward *TranslateSpeed);2.全方向移动://x轴移动速度移动速度 float xSpeed = -5

2015-02-08 16:45:10 743

原创 Unity3D下用JaveScript写 NavMesh

最近在做的项目中要加入NavMesh,实现AI的寻路,如果使用unity 3.5自带的navmesh,好像单机的还可以使用,网络游戏就有点麻烦了,一是不好操纵navmesh,只能填好参数,做修改或者函数调用就不可能了,二是没有节点数据服务器没有这个数据,不好发送给客户端。所以网络游戏下的navmesh自己实现还是比较有价值。以下说

2015-02-08 16:34:39 436

转载 Unity3D脚印6—模型动画

如何导入一个模型,导入的模型在unity3d的project面板中是怎样显示的?包含什么内容?如何加载到场景中?怎样去控制它?模型和动画之间的关系?【模型导入】:Unity可以读取fbx,dae,3ds,dxf,obj等格式的文件,可以在这里找到FBX导出器,每一个被导入的项目中的模型,都包含下面这些东西:Meshes 网格,每个模型都是

2015-02-08 16:19:04 1467

原创 Unity3D脚印5—输入

Input使用这个类能够读取输入管理器设置的按键,以及访问移动设备的多点触控或加速感应数据。 这里重点记录一下这几个东西的用法,鼠标,键盘,触摸,重力(陀螺仪)  鼠标: Input.mousePosition表示鼠标当前的像素位置(坐标系如何?以左下角为原点)

2015-02-08 16:08:32 688

原创 Unity3D脚印3—Transform

Transform组件用于控制物体的位置,旋转和缩放,这里面涉及两个重点,一个是坐标系,这个包括局部坐标系和世界坐标系的关系,另外一个是父子节点,GameObject的父子节点关系是通过Transform组件来维护的。 位置相关的: 5个和位置相关的Vector3类型变量up 表示世界坐标的Y轴方向ri

2015-02-08 16:02:40 634

原创 [Mark] Unity3d之 汽车物理系统

这里,就写个物理车的!          首先,资料的来源!http://unity.gopedu.com/在这个链接的底部有下载的链接,如果下载不 到,   我可以共享出来!     第二部,开始一些翻译和讲解!             1.物理车的碰撞!                           其中草绿色线条是车的两个包围盒!四个轮子

2015-02-08 15:57:22 3064

转载 Get Start StrangeIOC for Unity3D

Strange是一个Unity3D中用于控制反转的第三方框架,控制反转(IOC-Inversion of Control)思想是类间解耦的一个重要方法,对于我来说,任何解耦技术都值得去学习。什么是IOC?这里有详细解答。IOC框架已经在企业级开发和其他非游戏软件的开发中成为了主流,并且可以说已经非常成熟。我觉得它可以帮助游戏开发变得更加容易测试,更好的进行协作开发。我非常想尝试它看看到底可以在游戏

2015-01-31 00:44:23 484

转载 Unity3d Web Player 的server端联网配置

新游戏出了第一个能跑完流程的版本,不得不佩服Unity3D强大的功力,PC、MAC OS、Linux、IOS、Android、web player,前天刚发布的unity3d 4.2版本还支持WINDOWS PHONE、Black Barry这些平台统统一键打包,so easy!不过在打包部署Web Player时,在联网方面出现了一点麻烦,算是顺风顺水过程当中的一个小插曲吧!所以又可以针对Uni

2015-01-31 00:28:33 369

转载 使用unity3d需要注意到细节

操作transform.localPosition的时候请小心  移动GameObject是非常平常的一件事情,一下代码看起来很简单:transform.localPosition += new Vector3 ( 10.0f * Time.deltaTime, 0.0f, 0.0f );但是小心了,假设上面这个GameObject有一个parent, 并且这个parent

2015-01-31 00:20:01 505

转载 unity3d-物理引擎

简介       物理引擎就是在游戏中模拟真实的物理效果,比如,场景中有两个立方体对象,一个在空中,一个在地面上,在空中的立方体开始自由下落,然后与地面上的立方体对象发生碰撞,而物理引擎就是用来模拟真实碰撞的效果。       如果需要让模型感应物理引擎的效果,需要将刚体组件或角色控制器组件添加至该对象中。刚体(Rigidbody)       刚体是一个非常重要的组件,新创建的物

2015-01-31 00:08:08 386

转载 Unity3D占用内存太大的解决方法

最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大. 这里写下关于Unity3D对于内存的管理与优化.       Unity3D 里有两种动态加载机制:一个是Resources.Load,另外一个通过AssetBundle,其实两者区别不大。 Resources.Load就是从一个缺省打进程序包里的AssetBundle里加载资源,而一般AssetBundle文件需要你自己

2015-01-31 00:07:40 970

转载 Unity3D内存管理——对象池(Object Pool)

从一个简单的对象池类开始说起对象池背后的理念其实是非常简单的。我们将对象存储在一个池子中,当需要时在再次使用,而不是每次都实例化一个新的对象。池的最重要的特性,也就是对象池设计模式的本质是允许我们获取一个“新的”对象而不管它真的是一个新的对象还是循环使用的对象。该模式可以用以下简单的几行代码实现:public class ObjectPool where T : class

2015-01-30 23:03:57 375

转载 Unity3D动态载入文本数据的方法归类

概述            在游戏中经常需要动态地载入一些数据。例如让玩家定制角色外貌时,需要从数据文件读取各种身体部位的信息;或者玩家访问NPC购买装备时,需要从数据文件读取装备信息等等。为了减少游戏程序的大小,我们往往采用最简单的文本文件来保存这些信息。所以本文总结一下Unity常用的读取文本数据的方法。因为我是边开发项目便记录心得,时间很仓促,只能先把关键点记录下来,留待以后有时

2015-01-30 22:45:44 1393

原创 Unity 角色模型优化要点续:换肤和导入

所谓角色换肤也就是游戏中常见的角色自定制功能:玩家开始游戏前,一般需要创建一个游戏角色,选择性别、容貌、发型等等。进入游戏后,就可以操作自己创建的角色做出行走、跳跃、攻击等动作。很多游戏还允许玩家在中途变换发型甚至改变体态(例如升级后肌肉变得发达)等等。下图就是WOW中角色选择的画面示例。从游戏开发者的角度来看,由于可定制元素排列组合的结果非常多,不可能事先

2015-01-28 23:19:43 1235

原创 Unity——Export/Import Package功能和项目管理的研究

本文摘要      本文首先描述了Unity3.0在支持大型游戏项目开发时的两个不足:即对模块化和svn协同缺乏支持。随后,分析了Unity自带的Export/Import Package 功能,并提出了使用此功能与svn配合实现多人项目协同的方法。有关Unity的其他话题也可以查阅我的其他文章。 Unity项目协同的挑战       在使用Unity开发游戏项目时,一般都需要

2015-01-28 23:11:10 2247

原创 Unity3D中网格合并示例研究

为了实现游戏人物外形的定制,专门研究了Unity示例程序 。对程序中动态载入身体各部位模型并进行组合的代码看了很久才明白。下面做一些备忘。首先需要了解几个基本对象的结构一、 SkinedMeshRender:该对象负责网格绘制。主要数据成员包括var bones : Transform[] 骨骼var materials : Mate

2015-01-28 23:00:32 630

原创 unity3d之计算两向量的旋转角

向量的点乘和叉乘都是很有用的数学工具,不过他们也有局限性。关键是向量点乘可以得到两个向量之间的夹角, 而不是旋转角,这个角度是没有方向的,范围是[0-pi], 而这往往不是我们想要的, 实际问题中我们常常要计算从向量p1沿逆时针方向转到与向量p2方向一致的确切角度,我把这个角度定义为旋转角。 旋转角的计算既需要夹角,还需要两个向量的叉乘, 以确定p1和p2的角度方向关系。关于叉乘符号与向量的角

2015-01-28 22:33:36 3715

转载 unity3d摄像机

一 概述         摄像头是用于将世界场景投影到屏幕的设备。可以在场景中放置不限数目的摄像机,它们可以设定成任意的渲染次序,渲染到屏幕上的任意地方。        摄像机实质上是用于将游戏显示给玩家看,它们可以被定制,在上面写脚本或者挂载到其他物体上面以获得想象中的各种效果。对于一个猜谜的游戏,可能只需对游戏的全部视图保持摄像机静止即可。对于第一人称的

2015-01-28 22:25:31 460

转载 unity3d之协程介绍

在unity中,协程(Coroutines)的形式是我最喜欢的功能之一,几乎在所有的项目中,我都会使用它来控制运动,序列,以及对象的行为。在这个教程中,我将会说明协程是如何工作的,并且会附上一些例子来介绍它的用法。协程介绍       Unity的协程系统是基于C#的一个简单而强大的接口 ,IEnumerator,它允许你为自己的集合类型编写枚举器。这一点你不必关注

2015-01-27 21:23:03 664

转载 Unity3D之监听Hierachy、Project等视图结构变化的事件

以前就有人问我怎么监听Hierarchy视图中创建或删除变化的事件,当时因为有别的事情就没研究这块。刚好最近有这一类的需求我就学习学习。网上发现了一个日本人写的文档,实现的原理很有意思,内容不错我就翻译一下。请注意一定把这两个监听的脚本放在Editor文件夹下。先是基类。using System;using System.Collection

2015-01-27 20:47:52 1898

转载 Unity3D之脚本自动添加tag和Layer

有朋友问我他做了一个unity游戏插件,但是它的插件里面自定义了自己的tag和layer。这样用户在导入他的unitypackage的时候如果项目里没有写入它的tag或者layer那么就会有错误,所以他希望在导入unitypackage的时候自定把它的tag或者layer写进用户的项目里。      把下面这条脚本,随着你的资源一起打包,这样当你的unitypackage被别人导入的时

2015-01-27 20:34:24 3647

转载 NGUI之为什么Scene视图中不显示Polygon Collider2D

Ploygon Collider2D 的意思是多边形碰撞。如果我们想做一些不规则的按钮点击事件,可能就要用到它。比如点击地图中的某个区域,因为地图的区域肯定是无规则如果还是用NGUI的矩形来监听按钮那么效果肯定不好。       如下图所示,我分别创建两个UITexture 一个添加了BoxCollider 一个添加了Polygon Collider2D 为毛 BoxColli

2015-01-27 20:14:28 739

转载 NGUI

欢迎来到untiy学习社区今天的内容是NGUI的初步学习        首先需要有NGUI的插件下载备好,在unity中导入NGUI的插件,然后在组件EGUI里面的组件里找到NGUI-->Opertions-->Reset Prefab Toolbar在这里面你也可以把摄像机给隐藏了。在创建label之前要写点住UI Root,然后在属性窗口里面可以

2015-01-21 22:53:26 338

转载 怪物的生成 攻击和掉落金币

欢迎来到U3D社区:       今天做了一天 做出来了怪物的攻击死亡动画和掉落金币  代码如下:      public  static int life = 5; //怪物的生命值      public GameObject mouse; //  定义怪物      private NavMeshAgent ag

2015-01-20 22:14:35 1514

原创 NPC头上的血条与名字的设置

欢迎来到unity学习社区今天的内容是NPC头上的血条与名字的设置具体分析,NPC血条的显示需要用到Vector2(二维向量)与Vector3(三维向量)的转换,用到类方法worldToScreenPoint下面举个例子以此来说明:代码及注释如下    //主摄像机对象    private

2015-01-19 22:51:03 795

原创 有射线种白菜

欢迎来到unity学习社区今天的内容用射线碰撞来种植白菜,并且在生成白菜后给予种植成功提示,提示在1秒后消失 射线种植白菜:通俗的来讲就是通过定义一个射线投射碰撞来得出白菜的克隆位置,当碰撞发生时在鼠标点击位置克隆白菜,  种植成功后给予的提示:这里使用guitext来实现 并用倒计时和bool型标志位来判断鼠标点击事件,当发生投射碰撞时将flag赋值为true

2015-01-13 23:13:33 319

原创 与npc对话

欢迎来到unity学习社区今天的内容与npc对话       首先,根据用户鼠标的位置向NPC发射射线,如果射线击中了NPC,则进入对话状态。当用户按下空格键或者单击鼠标左键时,开始显示事先定义好的NPC对话数据。今天采取的方式是在场景中使用GUI Text ,然后在脚本中更新它的内容,这样就实现了与NPC对话的目的。搭建的场景如图: 

2015-01-12 22:53:41 810

原创 试题总结

欢迎来到unity学习社区一、给小球添加弹性物理材质     首先给小球添加碰撞器和刚体,然后在通过Assets--》Import Package--》Physic Material导入物理材质包,  然后在蓝线部分选择物理材质,将脚本添加于小球上即可完成小球持续的弹起与落下  效果如下: 

2015-01-11 00:32:55 259

原创 访问自定义组件与人物动作音效添加

欢迎来到untiy学习社区 一、知识点: 1、对自定义组件的访问,这里需要考虑是对自身的游戏脚本还是对其他游戏对象的脚本,若是访问其他游戏对象的自定义组件(或脚本)需要先去寻找游戏对象名然后在获取相应组件(或脚本) 2、给游戏对象的动作动画添加声音中需要声明一个3d音频来源和一个音频容器,另外需要用到触发器来识别碰撞 二、具体事例

2015-01-09 22:00:43 338

原创 unity项目小总结

欢迎来到Unity学习社区 一、怪物在一定距离内走向主角并击打主角 这里的思路为:首先需要确定主角的位置和怪物的位置,分别为其定义相应的变量;这里主角位置定义为hero.positio,怪物位置为transform.position然后通过Vector3调用Distance方法实现怪物的行为。

2015-01-08 22:20:14 766 1

原创 unity小项目主角打击怪物

欢迎来到unity学习社区  今天的内容是主角打击怪物的功能  一、功能及界面设置首先需要给怪物和主角兵器添加碰撞组件 并勾选Is Trigger 属性  其次 给怪物添加刚体并去掉重力属性  主角需要具备一些必要的动画效果(如 禁止 走 跑 跳 攻击等)  二、添加

2015-01-07 22:19:28 2446

原创 粒子系统

欢迎来到unity学习社区今天的内容是粒子系统一、粒子系统的创建粒子系统的的创建:    打开顺序为:菜单栏中的GameObject--》Greate Other--》Particle System,在场景中新建一个粒子游戏对象,如下图:      或者在hierarchy中选择create

2015-01-06 21:30:04 426

原创 射线总结

一.射线回顾:           3D世界中一个点向一个方向发射无终点的线。在unity3d中我们发射的射线一旦与其他的碰撞器发生碰撞,射线将停止发射。在游戏制作过程中我们可以通过判断射线是否发生了碰撞,并且可以判断射线和谁发生了碰撞。应用范围非常广泛,如射击类游戏中用它来判断是否射中目标。           游戏中发射一条射线的两个因素:(

2015-01-05 21:10:26 373

原创 自动寻径

今天的内容是自动寻径一、什么是自动寻径?       点击场景上的一个位置,角色就会自动寻路。中间可能会有喝多的障碍物,角色会自动绕过障碍物,最终到达终点。使用Unity来开发手游,自动寻路可以有很多的实现方式。 二、下面来举一个例子      实现一个功能:鼠标点击场景中的一个位置,角色自动寻路过去 角色会绕过各种复杂的障碍

2015-01-04 21:19:05 634

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除