找回密码
 立即注册
查看: 205|回复: 0

Unity3D入门基础知识

[复制链接]
发表于 2022-8-5 16:33 | 显示全部楼层 |阅读模式
一、基础概念

1、物体与空物体

物体(Game Object),其实是一个节点或容器。一般所谓的“物体”,即有形状的东西,对应的Mesh,网格信息代表了物体(形状)。
空物体(Empty Object),即空对象、空节点。空物体不可见(没有网格),但空物体也有坐标,可以移动。空物体常用于节点的组织和管理,或用于标记一个位置。
2、父子关系

父子关系,指两个物体之间的关系。在Hierarchy窗口中,拖动物体B,到物体A下,子物体会随着父物体一并移动。删除父物体时,子物体也会一并删除。子物体的坐标是相对于父物体的,即相对坐标。
3、世界坐标系与本地坐标系

Global,即世界坐标系。以世界中心为轴,6个方向代表了上、下、东、西、南、北。
Local,即本地坐标系。以物体自身为轴,6个方向代表了上、下、前、后、左、右。
Y轴称为Up,Z轴称为Forward,X轴称为Right。一般地,在建模软件里建模时,模型的正面与Z轴的方向一致。移动一个物体时,一般就是让这个物体向前运动,Forward。
4、轴心与几何中心

Pivot,即轴心。指一个物体的操作基准点。
Center,即几何中心。对于基本体来说,轴心点默认位于几何中心,但并不是所有物体的轴心都在几何中心点。
在Unity中,默认情况下显示的是Pivot操作模式,即轴心模式。另外一种模式是几何中心点模式。可选择切换物体在移动、旋转和缩放时,是以哪个点作为操作基准点。一般使用的是Pivot模式。
5、组件

Component,即组件。代表一个具体功能,例如,Light,光源。Directional Light,平行光源。Mesh Filter,网格过滤器,用来加载网格数据。Mesh Renderer,负责渲染。
二、Unity开发界面




Unity开发界面

1、Scene - 场景编辑窗口




Scene - 场景编辑窗口

Scene窗口是Unity编辑器中最主要的一个窗口,可以通过鼠标拖拽的方式,在窗口里摆放各种Game Object,可视化地编辑场景。
2、Game - 游戏运行窗口




Game - 游戏运行窗口

Game窗口所呈现的是Scene中的摄像机视野里的景象,即游戏真实运行起来后,玩家所看到的景象。开发者不能在此窗口编辑,只能观看。
3、Hierarchy - 场景物体列表窗口




Hierarchy - 场景物体列表窗口

Hierarchy窗口使用树形结构列出当前场景中的所有Game Object。
4、Inspector - 属性编辑列表窗口




Inspector - 属性编辑列表窗口

Inspector窗口,即属性面板。当开发者在Scene或Hierarchy窗口中选中一个Game Object,则Inspector里就会显示该Game Object对应的各种属性。可通过底部的Add Component按钮,为选中的Game Object增加需要显示的属性。
5、Project - 项目资源列表窗口




Project - 项目资源列表窗口

Project窗口罗列出所有工程中创建或导入的各种资源,包括场景、脚本、材质、音效、贴图等。如果直接将Project中的资源拖入Scene中,则表示将该资源添加进这个当前的游戏场景,同时,也会同步在Hierarchy里显示。
6、其他常用调节窗口


三、常用组件

1、摄像机

Camera,即摄像机。负责拍摄游戏画面。摄像机的Z轴指向,即为拍摄方向。拍到的画面,呈现在Game窗口中,也就是玩家最终看见的画面。
调整摄像机的角度,可用两种方式。第一种,手动。手工移动、旋转摄像机,对准目标。第二种,GameObject->Align With View,与3D视图对齐。先在3D视图里摆好角度,此为观察者视角,然后选中Main Camera,执行Align With View。此时,摄像机视角与观察者视角完全相同。
2、Transform组件

Transform,即变换组件。物体的基本参数有Position,位置(相对坐标)、Rotation,旋转(欧拉角)、Scale缩放。Transform就是用来描述一个物体在空间中的位置坐标、旋转量和缩放量。所有物体都有Transform组件,而且不能被删除。
四、脚本的运行

1、消息函数

Unity是一个完全面向对象的框架,对象由框架创建。右键Create->C# Script后生成的脚本模板,如下图所示。所有的脚本,都统一继承于MonoBehavior,模板中已自动生成Start和Update两个消息函数。



新建C#脚本后生成的模板

常见的消息函数主要有以下几个:
(1)Awake,初始化,仅执行一次
(2)Start,初始化,仅执行一次
(3)Update,帧更新,每帧调用一次
(4)OnEnable,每当组件启用时调用
(5)OnDisable,每当组件禁用时调用
Awake先于Start调用,两个都是初始化函数,都仅执行一次。它们的区别在于组件的状态,如果脚本所挂载的组件被禁用的话,那么,Start方法不会被调用,而Awake方法总是被调用。
已禁用的组件,其消息函数中的Start方法和Update方法不会被调用。
2、脚本的参数

脚本的参数,用于控制脚本组件的功能。
脚本参数的用法:
(1)参数的名称,即变量名,在脚本中,必须定义为public,才能在检测器中显示。
(2)参数的默认值,即变量的默认值,可以在Reset菜单中重置。
(3)参数的工具提示,可以用[Tooltip("xxxxx")]指定。
五、各类文件

1、资源文件

Assets目录下的文件,即为资源。使用Meta来描述文件,每个资源文件/文件夹,都对应一个*.meta描述文件。
常见的类型有,模型文件Model(*.fbx)、图片文件Texture(*.jpg/png/tif/psd等)、音频文件AudioClip(*.mp3/wav/aiff)、脚本文件Script(*.cs)、材质文件Material(*.mat)、场景文件(*.unity)等等。
2、场景文件

场景文件*.unity,记录了场景中的节点数据。包含场景全局设置、节点、节点下挂载的组件、各组件的参数值等。一个场景往往代表一个关卡,可以创建多个不同的场景。
3、资源包

Unity中的资源包(Unity Package),即对Assets下的资源进行打包。选择一个资源文件,或一个目录。右键,Export Package,生成*.unitypackage资源包。

未完待续......

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-15 10:47 , Processed in 0.088164 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表