您的位置:首页 > 财经 > 产业 > 微信小游戏_新疆生产建设兵团成立时间_seo优化策略_聚名网官网登录

微信小游戏_新疆生产建设兵团成立时间_seo优化策略_聚名网官网登录

2024/11/16 19:16:40 来源:https://blog.csdn.net/2301_77947509/article/details/142906763  浏览:    关键词:微信小游戏_新疆生产建设兵团成立时间_seo优化策略_聚名网官网登录
微信小游戏_新疆生产建设兵团成立时间_seo优化策略_聚名网官网登录

画面里运动的那个小玩意这么写

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Partol : MonoBehaviour
{public Transform pos1;public Transform pos2;public float speed;private Transform target;void Start() {target = pos2; // 初始目标位置}void Update() {// 移动对象到目标位置transform.position = Vector2.MoveTowards(transform.position, target.position, Time.deltaTime * speed);// 检查是否接近目标位置if (Vector2.Distance(transform.position, target.position) < 0.1f) {// 切换目标位置target = target == pos1 ? pos2 : pos1;}}}

世界变灰用到了后处理包

相当于给 摄像机加了一层蒙版 灰色的蒙版

Getting started with post-processing | Post Processing | 3.0.3 (unity3d.com)  

首先创建一个 后处理文件,选择为颜色处理,相当于 创建蒙版样式

之后给摄像机挂上后处理层组件,相当于 选择添加蒙版的目标

最后为一个场景上的空物体挂上后处理体积组件,是 调整多个蒙版之间的管理组件

时间停止和后处理代码控制

 一个自锁变量用来使一个按钮切换两种不同的状态 

time.scale用来暂停世界上的所有物品

 public PostProcessVolume postProcessVolume;用来接受蒙版对象,这一步就是实例化蒙版

using UnityEngine;
using UnityEngine.Rendering.PostProcessing;public class TimeStopEffect : MonoBehaviour {public PostProcessVolume postProcessVolume;private bool timeIsStopped = false;private void Start() {postProcessVolume.enabled = false;}public void ToggleTimeStop() {if (!timeIsStopped) {Time.timeScale = 0;postProcessVolume.enabled = true;timeIsStopped = true;}else {Time.timeScale = 1;postProcessVolume.enabled = false;timeIsStopped = false;}}
}

如果想暂停一定范围内的物品动作可以这么做

仅作参考,因为还可能有动画,这个方法只会影响到有Mono的脚本的物品

using UnityEngine;public class PauseTrigger : MonoBehaviour
{private void OnTriggerEnter(Collider other){if (other.CompareTag("Pauseable")){PauseObject(other.gameObject);}}private void OnTriggerExit(Collider other){if (other.CompareTag("Pauseable")){ResumeObject(other.gameObject);}}private void PauseObject(GameObject obj){// 停止物体的动作,例如禁用其Update方法obj.GetComponent<MonoBehaviour>().enabled = false;}private void ResumeObject(GameObject obj){// 恢复物体的动作obj.GetComponent<MonoBehaviour>().enabled = true;}
}

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com