Unity 3d 学习笔记

本文介绍了如何在Unity中使用左手法则确定视图,并通过Field of View调整场景大小。此外,还探讨了如何添加和管理Camera组件,以及如何在游戏对象中添加不同类型的光源。
如何应用左手法则决定视图,应用 Field of view 设置场景大小。

1.场景视图的右上角是场景Gizmo,这个显示场景相机的当前方向,并允许你迅速修改视图角度,Unity中默认是左手法则视图。
这里写图片描述

2.选中Main Camera,在右侧的inspector栏调整Field of view大小。
这里写图片描述

这里写图片描述


添加一个 Empty 游戏对象, 添加一个 Camera 部件(Rendering 分类下),有什么效果?


得出的效果就是多了一个摄像头,并且随着该游戏对象的移动而移动。如果不是空的游戏对象,如下图中在一个cube游戏对象中添加一个camera部件,Camera就会在这个游戏对象中,以这个游戏对象的视角为视角,就和我们平时玩的游戏一样。


Camera 部件是一个复杂的部件。有属性、方法、消息等,要慢慢积累它的使用经验 (http://www.ceeger.com/Script/Camera/Camera.html

Camera 部件继承的类树
Camera 部件有哪些静态属性。用程序验证并管理所有的 Camera ,并在程序中 enabled 部分有用的 Camera (切换摄像机)


Clear Flags: 清除标记。
- Skybox: 屏幕中的空白部分用天空盒的内容填充,如果没有设置天空盒,则使用背景颜色。
- Solid Color: 屏幕中的空白部分用背景颜色填充。
- Depth only: 仅按照物体的前后遮挡关系来呈现结果。
- Don’t Clear: 不清除任何颜色或深度缓存。结果是:每帧的呈现结果都叠加在一起。通常用于实现特殊的效果。

Culling Mask: 剔除遮罩。用于指定摄像机所作用的层(Layer)。

Size: 视口大小。只针对正交镜头,设定为相当于屏幕高度的一半。

Viewport Rect: 控制摄像机呈现结果对应到屏幕上的位置以及大小。屏幕坐标系:左下角是(0, 0),右上角是(1, 1)。

Depth: 当多个摄像机同时存在时,这个参数决定了呈现的先后顺序,值越大越靠后呈现。

管理camera:
Camera1.camera.enabled = false;
Camera2.camera.enabled = true;


总结光源的使用。光源是 GameObject 吗?

给 Camera 加一个 聚光灯 玩玩! 实现 聚光灯 跟随摄像机运动。

在Camera中点击Add Component->Rendering->Light,然后设置为spot light。


给sun对象加点光源 部件。不许给sun添加子对象。

在对象中点击Add Component->Rendering->Light,然后设置为point light。


U3d 设计师 没有将 Camera,Light 设计为 GameObject ,这给开发者带来哪些好处?

将Camera,Light设计为component,方便开发者在讲其作为组件添加到各种对象中,方便管理。


面向对象语言接口和超类有哪些异同?
ISSActinCallback 能设计为超类吗?为什么? 画 UML 图说明

可以,使用IU3dActionCompleted的类,需要继承IU3dActionCompleted,并实现其方法,和使用接口类似。


SSAction, SSActionManager 能设计为接口吗?为什么? 画 UML 图说明

不能,因为需要作为基本的类,被U3dActionAuto和U3dActionMan继承,方便U3dAction派生类被ActionManager管理,同时当U3dAction为接口时,每个使用它的类都必须实现其方法。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值