Unity3d基础

1、Unity中的坐标系是使用的左手坐标系,Y轴向上,Z轴向里,X轴向右

2、五大面板

Hierarchy:当前场景中的物体

Project:项目中的所有资源

Scene:当前场景的预览视图

Inspector:属性

Game:游戏视图,以主摄像机视角查看场景

3、鼠标的操作

左键:选择

右键:调整视角,坐标系变换

中键(滚轮):移动画布

4、元素

gameObject

Component

Material

Texture

5、脚本

脚本是依附于游戏对象的,事件和操作的对象也是当前脚本所在的游戏对象。脚本只能依附于游戏对象或者由其他脚本调用才会运行,一个脚本可以放到多个游戏对象上,是多个实例。一个脚本的多个实例和其他脚本之间互不干扰

6、抗锯齿

主菜单:Edit→project Settings → Quality  ,  AntiAliasing 选为4X(越大越平滑会越占用资源)

7、编辑器的使用

Scene:高效操作:按住鼠标右键拖放可以改变预览的时候看的方向,

按住滚轮拖放可以横向改变看的部分,

滚轮可以前进后退

Hierarchy中双击可以聚焦到元素,放大区域

点击按钮,选中一个游戏对象拉着三个方向的箭头就可以在三个方向修改元素的位置

方向键可以更方便的在XZ方向漫游,按着Shift可以加快速度

Inspector:

暂时想禁用的游戏对象可以在Inspector前的钩去掉

暂时想禁用的组建也可以把钩去掉,永久删除就“Remove Component”

8、调试

->程序的运行时调试消息输出:Debug.Log(),显示到Console视图

->项目的断点调试:启动MonoDevelop,主菜单Tools → Options → Unity → Debugger的Editor选择Unity开发环境Unity.ext的程序路径,然后MonoDevelop打开项目(注意Unity不要同时打开这个项目),然后主菜单Run→ RunWith→ Unity Debugger就可以启动调试了。

建议使用Debug.Log()调试

9、模型

在3dmax,maya中设计模型和动画,导出fbx格式,有的3dmax文件导出fbx会有问题,比如导出没有贴图,没有动画等,主要是制作不标准

将生成的fbx文件拖到Unity的Project中的Assets中,选中project中的fbx文件(注意:不是Hierarchy中的),在Inspectpr中的Animations页签中进行动画编辑

片段切割完毕要将片段授权,否则运行的时候会提示没有legacy或者gameobject中没有animation组件。切换到Rig,Animation Type选择legacy,Generation选择"Store in Root(New)",点击apply

将fbx拖到Hierarchy或者Scene中,这样就成为GameObject了

10、模型的导入导出

模型及动画提出完成后,可以在模型文件夹上右击→ Export Package→ Export,导出到一个文件夹下,文件的扩展名是unitypackage,以后在使用,可以通过右击→ Import Package→ Custom Package,完成包的导入

11、动画播放的控制

            if (Input.GetKey(KeyCode.LeftShift))

            {

                animation["Run"].speed = 1f;

                animation.Play("Run");

            }

speed属性可以控制动画执行的速度和执行的方向,正数表示向前,负数表示向后,数值越大越快,越小越慢

12、脚本问题

->初始化不要放到构造函数中,而是放到Start()方法中

->放到游戏对象中的脚本(实例化)可以在Inspector中修改属性,get/set写属性不被识别(不需要写),直接public字段就能当属性用,不写修饰符就是私有private

->Time类包含了一个重要的类变量deltaTime,它表示距上一次调用Update或者FixedUpdate所用的时间

->单击Add Component出现的目录结构,脚本文件一般放在Scripts目录下,想要给自己的类更改目录的话,需要在类前面添加一个特性

 [AddComponentMenu("目录名/显示的文件名")]

时间: 2024-10-10 16:45:06

Unity3d基础的相关文章

Unity3D基础教程】(四):通过制作Flappy Bird了解Native 2D...

[狗刨学习网] 引子 在第一篇文章[Unity3D基础教程]给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics我已经讲过了一些关于刚体和碰撞的关系,这次我们就通过Flappy Bird这个事例来讲解一下刚体和碰撞体在游戏中的具体应用.相关代码可以参考Flappy Bird的源码. 认识RigidBody 当RigidBody2D的质量属性被设置为0时,刚体的质量变为无限大,此时刚体相当于静态刚体,永远一动不动.但是在Unity中你是无法

【Unity3D基础教程】给初学者看的Unity教程(二):所有脚本组件的基类 -- MonoBehaviour的前世今生

作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 上一次我们讲了GameObject,Compoent,Time,Input,Physics,其中Time,Input,Physics都是Unity中的全局变量.GameObject是游戏中的基本物件.GameObject是由Component组合而成的,GameObject本身必须有Transform的Component,这也加深了我们

【Unity3D基础教程】给初学者看的Unity教程(三):通过制作Flappy Bird了解Native 2D中的Sprite,Animation

作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 上一次我们讲了MonoBehaviour的前世今生,了解了游戏中的每一个GameObjec都是由脚本控制的,这一次我们开始将Unity中Native 2D中的Sprite,并且使用Animation来让Sprite动起来. 在接下来的几篇博客里,我会通过做一个Flappy Bird来讲解Unity中各个组件的使用,项目的源代码在这里:U

【Unity3D基础教程】给初学者看的Unity教程(零):如何学习Unity3D

[Unity3D基础教程]给初学者看的Unity教程(零):如何学习Unity3D http://www.cnblogs.com/neverdie/p/How_To_Learn_Unity3D.html 作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点推荐.谢谢! Unity3D有什么优势 Unity3D是一个跨平台的游戏引擎,如果您开始看这篇博客的话,你一定实在权衡学习或者使用哪种游戏引擎来开发您的游戏,

【Unity3D基础教程】给初学者看的Unity教程(四):通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D

作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 在第一篇文章[Unity3D基础教程]给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics我已经讲过了一些关于刚体和碰撞的关系,这次我们就通过Flappy Bird这个事例来讲解一下刚体和碰撞体在游戏中的具体应用.相关代码可以参考Flappy Bird的源码. 认识RigidBo

【Unity3D基础】让物体动起来①--UGUI鼠标点击移动

背景 首先还是先声明自己是比较笨的一个人,总是找不到高效的学习方法,目前自己学习Unity3D的方式主要是两种,一种是直接看高质量的源码,另一种是光看不行还要自己动手,自己写一些有代表性的小程序,这也是本文的由来. 诚然,现在已经不是Unity3D发展的黄金期了,很多知识点已经有很多朋友总结分享了,但由于Unity3D的客观性就是依赖插件很厉害,这样就会照成插件满天飞,通用性不强,还有过时的风险,还有就是网上很多朋友发的帖子很多并不是学习总结,只是对于Unity3D IDE的使用及一些API的罗

【Unity3D基础教程】(三):通过制作Flappy Bird了解Native 2D

[狗刨学习网] 引子 上一次我们讲了MonoBehaviour的前世今生,了解了游戏中的每一个GameObjec都是由脚本控制的,这一次我们开始将Unity中Native 2D中的Sprite,并且使用Animation来让Sprite动起来. 在接下来的几篇博客里,我会通过做一个Flappy Bird来讲解Unity中各个组件的使用,项目的源代码在这里:Unity Flappy Bird.欢迎各位前去Fork和Star. 如何创建Sprite 创建一个Sprite可以遵循如下步骤 将一张图片拖

unity3d 基础知识点

1.prefab: 提供类似于c++中类的概念,方便用户建立对象.比如在建立碰撞盒的时候,可以建立prefab,方便同时修改碰撞盒的现实和隐藏. 当制作好了游戏组件(场景中的任意一个gameobject),我们希望将它制作成一个组件模版,用于批量的套用工作,例如说场景中本质上“重复”的东西,“敌人”,“士兵”,“子弹”......这里说本质是因为默认生成的prefab其实和模版是一模一样的,就像是克隆体,但生成的位置和角度以及生成后的一些属性是允许发生变化的. 2.透明贴图 unity3d中自带

Unity3d基础组件 (Component) 和脚本 (Script) 关系

原版的:http://edu.china.unity3d.com/learning_document/getData?file=/Manual/TheComponent-ScriptRelationship.html 组件 (Component) 和脚本 (Script) 的关系 创建脚本并将其连接到游戏对象 (GameObject) 时,脚本会出如今游戏对象 (GameObject) 的检视器 (Inspector) 中,就像一个组件 (Component). 这是由于脚本在保存时变成了组件

【Unity3D基础教程】(五):详解Unity3D中的协程(Coroutine)

[狗刨学习网] 为什么需要协程 在游戏中有许多过程(Process)需要花费多个逻辑帧去计算. 你会遇到"密集"的流程,比如说寻路,寻路计算量非常大,所以我们通常会把它分割到不同的逻辑帧去进行计算,以免影响游戏的帧率. 你会遇到"稀疏"的流程,比如说游戏中的触发器,这种触发器大多数时候什么也不做,但是一旦被调用会做非常重要的事情(比图说游戏中自动开启的门就是在门前放了一个Empty Object作为trigger,人到门前就会触发事件). 不管什么时候,如果你想创建