游戏开场镜头拉近(Unity3D开发之四)
来源:互联网 发布:简易画图软件 编辑:程序博客网 时间:2024/06/11 16:04
猴子原创,欢迎转载。转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢!
原文地址: http://www.cocos2dev.com/?p=553
今天看了个Demo,发现它的游戏开场会先有个白色遮罩层的渐变消失,然后镜头拉进到目标场景。镜头拉进主要用Vector3.MoveTowards()
1、添加一个GUITexture,用作白色遮罩层。设置Active false,事先不可见。不然就挡住你场景了。
2、添加一个EmptyObject,放置在最终希望camera放置的位置。
3、将camera position.z 调整到离目标位置的合适距离。
using UnityEngine;using System.Collections;public class DemoScene : MonoBehaviour {public Transform targetPoint; // camera将要移动到的目的地,可以是一个EmptyObjectpublic GameObject titleText, whiteMask; //title, 白色的全屏遮罩 (事先在场景中Active为false)private int pattern = 0;private float alpha = 0.5f;// Use this for initializationvoid Start () {alpha = 0.5f;whiteMask.SetActive(true);}// Update is called once per framevoid Update () {// 移动camera到指定的地点transform.position = Vector3.MoveTowards(transform.position, targetPoint.position, 3 * Time.deltaTime);if(pattern == 0){// 慢慢降低白色遮罩层的透明度if(alpha > 0){alpha -= Time.deltaTime * 0.2f; whiteMask.guiTexture.color = new Color(.5f,.5f,.5f, alpha);} // 当接近目标点的时候,显示游戏titleif(Mathf.Abs(transform.position.z - targetPoint.position.z) <= 6.0f){pattern = 1;alpha = 0;titleText.SetActive(true);}}if(pattern == 1){// 慢慢增加透明度,显示title logoif(alpha < 0.5f){alpha += Time.deltaTime * 0.5f; titleText.guiTexture.color = new Color(.5f,.5f,.5f, alpha);}else{pattern = 2;}}if(pattern == 2){if(Input.anyKey){// 处理后续的事}}}}
0 0
- 游戏开场镜头拉近(Unity3D开发之四)
- Unity3D第三人称镜头脚本 可旋转,拉近
- unity3d 带缓冲的镜头拉近效果
- unity3d 带缓冲的镜头拉近效果
- unity3d 带缓冲的镜头拉近效果
- unity3D游戏开发十七之NGUI四
- unity3D游戏开发十七之NGUI四
- unity3D游戏开发十七之NGUI四
- unity3D游戏开发四之创建基本游戏场景一
- unity3D游戏开发七之创建基本游戏场景四
- unity3D游戏开发四之创建基本游戏场景一
- unity3D游戏开发七之创建基本游戏场景四
- unity3D游戏开发四之创建基本游戏场景一
- unity3D游戏开发七之创建基本游戏场景四
- unity3d教程:游戏开发算法(四)
- Unity3D 游戏引擎之IOS触摸屏手势控制镜头旋转与缩放(八)
- unity3d--镜头跟随及控制(RPG游戏黑暗之光)
- unity3d之镜头耀斑
- 勺狡汾绞笨呵伤壁乘牙记赝
- cf437B The Child and Set
- 萍按馅种吵雷门谫督
- 同意斯蒂芬金斯顿和发动机化工
- java并发编程(6)--线程池
- 游戏开场镜头拉近(Unity3D开发之四)
- python操作MySQL数据库
- 和工具包
- 价格计划
- gfdgfdhgfhf
- vbn
- 从零单排PAT1015,1016,1017,1018
- (Struts2学习篇) 模型驱动开发
- 没旧共和国