【译U3D】官方坦克3D游戏制作3-摄像机

来源:互联网 发布:永久关闭防火墙linux 编辑:程序博客网 时间:2024/05/02 01:46

写在前面的

   这一节我们来说一下在U3D的世界中,摄像机(Carmera)是怎么工作的,以及它的一些原理。

这里写图片描述

  • SLIDE 1/33
    1.在Hierarchy视图中,打开Create菜单,选择Create Empty,来创建一个空的GameObject
    2.把这个空的GameObject重命名为CameraRig
    注:在官方提供的素材中已经将Camera的相关的属性和参数放在了相应的文件夹中,如果做以下的步骤出错了,可以使用已经做好的Camera放到Hierarchy中

  • SLIDE 2/33
    1.然后,点击紧挨着Transform下面的Cog图标,然后选择Reset Position
    2.把CameraRig的Rotation设置成为(40,60,0)

  • SLIDE 3/33
    1.在Hierarchy面板中,将Main Camera拖到CameraRig上,使之成为其子类
    2.将Main Camera的Position设置成为(0,0,-65)
    3.确保Main Camera的Rotation为(0,0,0)

  • SLIDE 4/33
    什么是frushtum?(锥视图)
    这里写图片描述
    这里写图片描述
    这里写图片描述

除了上述列出的锥视图,还有正视的直射视图

这里写图片描述

  • 其实看这些讲解的部分,还是很难搞懂,如果来一张实际的图来进行区分。
    这里写图片描述

  • SLIDE 11/33
    接下来就需要理解一下我们的屏幕和摄像机的视角之间的尺寸关系了。
    官方文档中用了1920*1080的分辨率来举了个例子,那么我们就来介绍一下。所谓的分辨率就是屏幕上的像素点(pixels)有多少,1920*1080的分辨率屏幕的宽高比为16:9,也就是宽应该是高的1.778倍。所以我们再看图片就好理解了。
    这里写图片描述
    这里写图片描述

  • 所以ASPECT的值在16:9的屏幕中就是1.778了

  • SLIDE 15/33 接下来我们的摄像机要做些什么?
    1.和坦克一起移动
    2.当然了,我们要重新调整一下摄像机的视角来在屏幕上适应坦克

  • SLIDE 17/33
    1.找到 Scripts/Camera文件夹
    2.将Camera Control脚本拖拽到之前在Hierarchy面板中的的CameraRig GameObject上
    3.然后双击打开这个脚本看看里面啥样吧~

  • 本节剩下的一些内容就是讲解摄像机的size和aspect之间的关系等问题,我们先暂时跳过,直接从SLIDE 32/33开始

  • SLIDE 32/33
    1.选中CameraRig GameObject
    2.将Tank GameObject拖拽到CameraControl组件的Targets上