zoukankan      html  css  js  c++  java
  • Unity3D 学习教程 11 c#脚本控制摄像头

    首先新建一个脚本

    点击创建一个文件夹起名C#

    点击文件夹 创建一个C#脚本

    建好文件后 双击文件

    启动脚本编辑器

    void Start () 是场景运行时加载程序

    void Update ()  是每调用一针执行一次  可以认为是试试执行的程序

    下面编写第一个脚本

    控制摄像机移动

    using UnityEngine;

    using System.Collections;

    public class acc : MonoBehaviour

    {

      

        int speed=50;  

        void Start ()

        {

         }

         void Update ()

        {   

            float x = Input.GetAxis("Horizontal") * Time.deltaTime * speed;//左右移动

            float z = Input.GetAxis("Vertical") * Time.deltaTime * speed;// 前后移动

            //主摄像机物体    移动

           transform.Translate(x,0,z);

          }

    }

    Input.GetAxis 是输入管理器 

    点击edit

    了解下输入管理器

    红色部分是按键信息 

    Horizontal是平行移动   按a  d 键和<-- --> 方向键就可以平移了

    调用代码

    Input.GetAxis("Horizontal")

    Time.deltaTime 是时间间隔

    speed = 50;  是步长

    左右移动的距离

    float x = Input.GetAxis("Horizontal") * Time.deltaTime * speed;//左右移动

     float z = Input.GetAxis("Vertical") * Time.deltaTime * speed;// 前后移动

    //主摄像机物体    移动

     transform.Translate(x,0,z)

    最后把脚本绑定在摄像头上

    拖放

    unity3d摄像机详解
        正如电影中的镜头用来将故事呈现给观众一样,Unity的相机用来将游戏世界呈现给玩家。你始终至少有一个相机在场景中,你也可以有多个。多相机可以给你一个双人分屏效果或创建高级的自定义效果。你可以让相机动起来,或用物理(组件)控制它们。几乎你能想到的任何事,都可以用相机变成可能,而且为了适合你的游戏风格,你可以用典型的或特殊的相机类型。
    摄像机
      相机是为玩家捕捉和显示世界的一种装置。通过定制和操作相机,可以让你的游戏外观与众不同。在一个场景中你可以有数量不限的相机。它们可以被设置为以任何顺序来渲染,在屏幕上的任何地方来渲染,或仅仅渲染屏幕的一部分。


    属性
    ·Clear Flags 清除标记 决定屏幕的哪部分将被清除。当使用多个相机来描绘不同的游戏景象时,利用它是非常方便的


    ·Background 背景 在镜头中的所有元素描绘完成且没有天空盒的情况下,将选中的颜色应用到剩余的屏幕


    ·Culling Mask 剔除遮罩 包含或忽略相机渲染对象层。在检视视图中为你的对象指派层


    ·Projection 投射 切换摄像机的模拟透视功能


    ·--> Perspective 透视 相机将用完全透视的方式来渲染对象。


    ·--> Orthographic 正交 相机将用没有透视感的方式均匀地渲染对象


    ·Size 大小 当设置了正交时摄像机的视口大小。


    ·Field of view 视野范围 相机的视角宽度,以及纵向的角度尺寸。


    ·Clipping Planes 剪裁平面 从相机到开始渲染和停止渲染之间的距离。


    ·--> Near 近点 开始描绘的相对于相机最近的点。


    ·--> Far 远点 开始描绘的相对于相机最远的点。


    ·归一化视口矩形 用四个数值来表示这个相机的视图将绘制在屏幕的什么地方,使用屏幕坐标系(值0-1)。


    ·--> X 相机视图将进行绘制的水平位置的起点


    ·--> Y 相机视图将进行绘制的垂直位置的起点


    ·--> W (Width) 宽度 相机输出到屏幕上的宽度


    ·--> H (Height) 高度


    ·相机输出到屏幕上的高度


    ·Depth 深度 绘图顺序中的相机位置,具有较大值的相机将被绘制在具有较小值的相机的上面


    ·Rendering Path 渲染路径 该选项定义相机将要使用的渲染方法


    ·--> Use Player Settings      使用播放器设置 该相机将使用任意一个播放器设置中所设置的渲染路径


    ·--> Vertex Lit 顶点光照 本相机对所有对象的渲染会作为顶点光照对象来渲染


    ·--> Forward 快速渲染 所有对象将按每种材质一个通道的方式来渲染,如同在Unity2.x中的标准


    ·--> Deferred Lighting 延迟照明 所有对象将无照明绘制一次,然后所有对象的照明将一起在渲染队列的末尾被渲染


    ·Target Texture 目标纹理 (Unity Pro/Advanced only) 请参考Render Texture,该页包含了相机视图的输出。这个引用属性将禁用相机渲染到屏幕的功能。
    细节


      相机对于将你的游戏显示给玩家是必不可少的。它们可以被定制、被脚本化、或被子类化以实现几乎任何可以想象的效果。对于一个益智游戏,你要保持相机处于静态显示全部视角。对于第一人称射击游戏,你应该将相机作为玩家角色的子对象,并将其放置在与角色的眼睛等高水平上。对于一个赛车游戏,你可能更希望让相机跟随玩家的车辆。

    520 520小说 小说520 小说520 5200 小说5200 5200小说 5200小说网

    www.520books.com

    http://www.cnblogs.com/goodchenqing/

    http://blog.sina.com.cn/goodchenqing

    http://goodchenqing.bokee.com/

    http://blog.csdn.net/abc288abcd/article/category/2786567


      你可以创建多个相机并且给每一个分配不同的深度。相机是按深度从低到高来绘制的,换言之,一个深度为2的相机将绘制在一个深度为1的相机之上。你可以调整标准视口矩形(参照前面的属性列表)的属性值来改变其大小和其在屏幕上的位置。这样你就可以创建多个小视窗,如导弹控制器,小地图窗口,后视镜等等。

  • 相关阅读:
    CentOS 7 下Emacs无法录入中文的问题
    GPS文件中的C1--->P1转换
    centos7上搭建http服务器以及设置目录访问
    在Linux和Windows之间的远程控制的实现
    Emacs中的代码折叠控制
    Fortran程序调试中的“吐核”错误
    CentOS 7.6 系统上添加最新版 NetCDF 4.6.1
    迁移 Emacs 的自定义设置
    CentOS 7系统上制作Clonezilla(再生龙)启动U盘并克隆双系统
    [CentOS 7] TexLive2017中kpsewhich Bug的修复
  • 原文地址:https://www.cnblogs.com/goodchenqing/p/4206979.html
Copyright © 2011-2022 走看看