Unity實現(xiàn)簡單場景分層移動
本文實例為大家分享了Unity實現(xiàn)簡單場景分層移動的具體代碼,供大家參考,具體內(nèi)容如下
前言
開發(fā)游戲經(jīng)常需要用到把前景、場景、背景等不同層級的物體進(jìn)行不同速度的移動以實現(xiàn)真實感。
效果
云、建筑、地面、前景植被各層次場景分層移動。
代碼
using UnityEngine; public class DistantView : MonoBehaviour { public GameObject follow; public float scaleOffset; public bool isHorizontal = true; public bool isVertical = true; Vector2 pos; Vector2 followPos; float offsetX; float offsetY; private void Start() { if (follow != null) followPos = follow.transform.localPosition; } void LateUpdate() { if (follow!=null) { pos = transform.localPosition; if (isHorizontal) { offsetX = (follow.transform.localPosition.x - followPos.x) * scaleOffset; pos.x += offsetX; } if (isVertical) { pos.y += offsetY; offsetY = (follow.transform.localPosition.y - followPos.y) * scaleOffset; } transform.localPosition = pos; followPos = follow.transform.localPosition; } } }
用法
將不同層級的物體放入不同的父物體下分別管理。
給每個父物體掛上腳本。
Follow為跟隨的基準(zhǔn)對象。(比如玩家,相機等)
ScaleOffset為移動速率,1為和目標(biāo)移速一致,越小越慢,越大越快。0為不移動,負(fù)值為反向移動。(前景可能要用到負(fù)值)
Hor和Ver為跟隨哪個軸。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#?連接本地數(shù)據(jù)庫的實現(xiàn)示例
本文主要介紹了C#?連接本地數(shù)據(jù)庫的實現(xiàn)示例,文中根據(jù)實例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03.NET創(chuàng)建、刪除、復(fù)制文件夾及其子文件的實例方法
.NET創(chuàng)建、刪除、復(fù)制文件夾及其子文件的實例方法,需要的朋友可以參考一下2013-03-03