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

sf_2711512_2492.jpg (58.03 KB, 下载次数: 917)

下载附件  保存到相册

2012-6-3 19:24 上传

属性
·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 小说5205200 小说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的相机之上。你可以调整标准视口矩形(参照前面的属性列表)的属性值来改变其大小和其在屏幕上的位置。这样你就可以创建多个小视窗,如导弹控制器,小地图窗口,后视镜等等。

时间: 2024-11-03 11:13:16

Unity3D 学习教程 11 c#脚本控制摄像头的相关文章

Unity3D 学习教程 1 入门

unity3d_4.0下载含安装教程 免费:可以随意下载或者观看 百度下载地址(提取码91x6) 视频教程下载 unity3d_4.0下载含安装教程 unity3d脚本下载含八百个实例教程打包 unity3d4.5下载含破解补丁 Unity5下载32位64位含破解补丁 unity3d视频教程 Unity3D游戏制作 Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专

Unity3D 学习教程 13 C# 销毁炮弹

gameObject.renderer.enabled //是控制一个物体是否在屏幕上渲染或显示  而物体实际还是存在的 只是想当于隐身 而物体本身的碰撞体还依然存在的 GameObject.Destroy()  //表示移除物体或物体上的组件 代表销毁该物体  实际上该物体的内存并没有立即释放 而是在你下下个场景中槽释放内存资源,就是你a场景中Destroy了 一般是在c场景中才真正释放该物体的内存资源(这是我的体会 不知道理解错误没) gameObject.active   //是否在场景中

Unity3D 学习教程 12 C# 发射炮弹

建立一个炮弹 一个球体 双击脚本 进入编辑器 1 using UnityEngine; 2 using System.Collections; 3 4 public class acc : MonoBehaviour { 5 6 // Use this for initialization 7 public Transform Q; 8 int speed=50; 9 void Start () { 10 11 } 12 13 // Update is called once per frame

迷你MVVM框架 avalonjs 学习教程11、循环操作

avalon是通过ms-repeat实现对一组数据的批量输出.这一组数据可以是一个数组,也可以是一个哈希(或叫对象).我们先从数组说起吧. 第二节就说,凡是定义在VM中的数组,如果没有以$开头或者没放在$skipArray数组里,都会转会监控数组.监控数组其实就是一个被重写了push.unshift.shift.pop. splice.sort.reverse方法的普通数组.当然它也添加了其他一些方法,如set. pushArray.remove.removeAt.removeAll.clear

Unity3D 学习教程 14 C# 旋转镜头

if(Input.GetKey(KeyCode.Q)) { transform.Rotate(0,-50*Time.deltaTime,0,Space.Self); } if(Input.GetKey(KeyCode.E)) { transform.Rotate(0,50*Time.deltaTime,0,Space.Self); } 模仿WOW镜头操作 using UnityEngine; using System.Collections; /// /// 将此脚本附加到任意镜头上,可以使其拥

Unity3D 学习教程 6 基本操作

打开文件 新建一个场景 ------------------------------------------------------------------ 打开一个场景 ---------------------------------------------------------------------------- 保存场景 ----------------------------------------------------------------------------------

Unity3D 学习教程 3 了解工程面板

首先我们来了解一下工程面板 file  是文件目录 hierarchy  层次结构  创建Unity3D自带控件的地方 --------------------------------------------华丽的分割线--------------------------------------------------------------- projct 项目 资源存放在这里 --------------------------------------------华丽的分割线--------

Unity3D 学习教程 7 基本应用与添加刚体

小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=ohmepe03 创建一个立方体 按 F2  改名 名字改完后 修改位置 把它放在000 处 我们把y改为10  让它悬在空中 下面就让物体拥有重力.质量  ,就要给物体添加刚体组件 点击物体 点击属性面板 Add component   选择 Physics

Unity3D 学习教程 2 创建游戏工程与界面

新建一个项目 u3D 对中文支持不太好  尽量不要用中文 一定不要用中文 点击创建 Create 界面创建成功 场景自带一个主摄像机 少于200字的文章不允许发布到首页候选区  要200字啊  我多加一点  不知道可不可以  图片不算怎么办  码字吧  哎~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~