unity3D之我用过的小玩意(二)

十一、点击事件

图片加个触摸Physics2D,关联的脚本void OnMouseDown(){}函数里点击就进入

十二、碰撞检测

两个图片相遇交互想要做些操作

给图片加组件碰撞器,Componet->Physics->Box Colider(Colider都是碰撞器,区别在于形状不同,我常用Box,加了后图片身上有绿色边框,如果是模型用Mesh更精准)

组件附带的Is Trigger选项选取,类似于开关

给图片加组件刚体,Componet->Physics->Rigidbody

(组件附带的Use Gravity取消掉,Is Kinematic选取)

碰撞函数

注意:碰撞的物体都需要按照上面的步骤,其次就是要添加的碰撞器和刚体是一样的,有Physics和Physics2D,选一样的,我可吃了苦头

注意:脚本A继承脚本B,B里面的碰撞函数不适用A,A直接重写,不用管其他的,适用A,就一起连碰撞函数继承

十三、Tag的好处

玩过cocos2d的人知道,Tag相当于别名,特别好用,我们操作方便,我都不知道怎么形容,unity3d开始自带一个tag是Player,主角,也就是一个普通的tag

创建新的Tag:Edit->ProjectSettings->Tags and Layers,在Inspector的窗口里有Tags,size是你想要几个,下面就是给tag起名字,创建

给图片什么的添加Tag:选取图片后在Inspector的窗口里Tag里就有你自己创建的Tag及Player

使用1:附加了tag的对象,点出来tag,引号里是tag,十二和十三两图结合的意思是在添加了这个脚本的物体碰撞到添加了Tag为Player或者Tag为PlayerRocket的物体的话…

使用2:GameObject.FindGameObjectWithTag ("Tag")获取其他游戏对象GameObject可以点出来找Tag

十四、增量时间Time.deltaTime

这是一个按秒算的时间,特别好用

假如你控制图片移动float i = Time.deltaTime*2f;每秒移动速度2米

加入你要让图片5秒后消失i=5;i-=Time.deltaTime;if(i<=0)……5秒后……

十五、Awake()函数

void Awake(){};这个函数叫更早函数(名字我起的……没查到叫什么),因为大家知道运行先进行Start()函数里的,但如果用这个函数,在进入Start之前先进入这个函数

十六、技巧

Transform组件用的非常广,回头我在总结,现在都凌晨多了,我先总结一个有关这个技巧,音频组件等有些一样可以用这个技巧

我们用这个组件一般是this点出来,在Update函数里面多用几次的话,内部…效率低,建个这样类型的变量,在Start()函数里就先赋值,以后用这个变量,是一样的,效率快了

十七、音频(给物体加音乐)

1.加音频组件:Component->Audio->Audio Source

2.创建个音频变量public AudioClip m_shootClip;方便在unity界面上拖想要的音乐进来

3.m_audio.PlayOneShot(m_shootClip);这一行代码就是了,m_audio是按十六写的,全部写法是this.audio,括号里加入音频变量

时间: 2024-10-15 07:22:19

unity3D之我用过的小玩意(二)的相关文章

Unity3D新手教学,让你十二小时,从入门到掌握!(三 ) [转]

版权声明:本文为Aries原创文章,转载请标明出处.如有不足之处欢迎提出意见或建议,联系QQ531193915 这一讲,我会教大家如何写碰撞检测的代码,然后还会教大家如何使用我介绍给大家的第一个Unity的插件. 那么,废话不多说,我先介绍插件如何下载和安装. VS For Unity 下载链接 进入这个页面,按编译器版本进行下载,我用的是2010,所以要下载这个. 安装就不用我教了,下面开始看我是如何导入Unity VS的. 点击Import之后我们会发现并没有发生什么,但是接下来我们按一下刷

Unity3D新手教学,让你十二小时,从入门到掌握!(二) [转]

版权声明:本文为Aries原创文章,转载请标明出处.如有不足之处欢迎提出意见或建议,联系QQ531193915 继续上一讲的内容,首先呢, 为了接下来要做的小游戏,在这里我要小小的修改一下移动的代码. public class PlayerMove : MonoBehaviour { //定义移动的速度 public float MoveSpeed = 8f; void Start () { } void Update () { //如果按下W或上方向键 if(Input.GetKey(KeyC

unity3D中使用Socket进行数据通信(二)

上一篇博客主要介绍了使用socket搭建服务端和client程序,这一篇来说说socket的数据传输,我们使用socket的目的是解决点对点之间的数据传输,之前提到了socket中一个重要的概念:port.而socket数据传输的方式就是port与port之间以流(stream)的方式数据传输,socket命名空间中提供了该流的一个功能类(NetworkStream),用起来非常方便,由于不论什么能够转换为二进制的数据都能够保存到流中,所以能够再client与server之前传输不论什么形式的数

Unity3D之空间转换学习笔记(二):基础数学

这期笔记我们专注Unity提供的各种数学相关的类来学习. 时间Time API文档地址:http://docs.unity3d.com/ScriptReference/Time.html 时间加/减速 Demo04是一个自由落体的弹性小球从天空落下的一个场景,用于测试下面的示例所用. 这个效果在游戏中也比较常用,比如在战斗游戏中,打败BOSS或我方死亡时都会呈现一种慢镜头的效果. 我们的脚本按下空格将会减速10倍的时间,脚本绑定在摄像机上,代码如下: 1 using UnityEngine; 2

Unity3D制作3D虚拟漫游场景(二)

传送门: Unity3D制作3D虚拟漫游场景(一) -------------------------------------------------------------------------- 昨天已经完成了场景的基本搭建,今天先简单的实现城市漫游功能,具体细节之后再进行添加 1.导入人物 在Assets文件夹下,新建一个文件夹,用于存放预制体,命名为Prefabs 打开昨天导入进去的SimplePeople资源包,打开其中的示例场景,然后我们可以进去挑选人物啦~ 博主在这里选了一个画风

Unity3D新手教学,让你十二小时,从入门到掌握!(一) [转]

http://blog.csdn.net/aries_h/article/details/47307799 版权声明:本文为Aries原创文章,转载请标明出处.如有不足之处欢迎提出意见或建议,联系QQ531193915 首先声明一下,我用的Unity版本是4.6.6,编译环境是VS2010,其余的我会慢慢介绍,安装的过程这里我就不做讲解了,度娘那会做的比我详细.安装包可以在最下面的联系方式找我要,现在开始进入主题. 打开Unity以后,我们先新建工程,这里要注意,一定要一个汉字都不能有,一定!避

unity3D之我用过的小玩意(积累中……)

一.加载动态库 [DllImport("Chesss")]//需要建名字为"Plugins"的文件夹方.dll,.so放在"Android"文件夹中 private static extern void JQInitlize(int GameStyle,int Seed);//后面是库里的函数 二.贴图 public Texture2D[]//public使得可以直接把图片拉倒脚本中(没有找到刷新一下) 写在OnGUI中,坐标,长宽,贴图对象(好

Unity3d - RPG项目学习笔记(十二)

前期实现了背包基本的存储功能,现在开始构建背包物品的移动及调换功能,具体思路如下: ①读取现有物品所在的格子信息. ②对移动目标地点进行判断(即surface的Tag): 如果surface的Tag为空,则使物品的局部坐标归零: 如果surface的Tag不为空,分为几个情况考虑: 1.Tag为背包格子:说明移动地点为空格子,所以讲物品信息赋值到目标下,清除现有信息即可: 2.Tag为背包物品:说明移动地点为有物品格子,将两格子的信息交换即可: 3.Tag为其他物品:说明非常规移动,将物品的位移

unity3D游戏开发三之unity编辑器二

转:http://blog.csdn.net/kuloveyouwei/article/details/23020995 下面我们介绍下GameObject,游戏对象/物体,通过游戏对象我们可以创建游戏对象,如灯光.粒子.模型.GUI等. GameObject菜单 通过Create Other,我们可以创建系统自带的一些游戏对象,具体如下: Particle System:创建粒子系统 Camera:创建摄像机 GUI Text:创建GUI文本 GUI Texture:创建GUI贴图 3D Te