Unity3D仿星露谷物语开发28之切换场景

news2025/2/10 7:49:34

1、目标

Player可以在Scene1_Farm和Scene2_Field之间自动切换。通过Trigger实现该功能。同时创建一个预设体绑定该功能,这样可以把预设体放到任何场景中,通过配置即可实现Player在Scene之间的自由切换。

2、创建场景切换的工具对象

在Hierarchy中,加载Scene1_Farm,创建新物体命名为SceneTeleport。

在Assets -> Scripts -> Scene下创建新的脚本命名为SceneTeleport,同时给SceneTeleport物体绑定SceneTeleport脚本。

给SceneTeleport物体添加Box Collider 2D组件,并且勾选"Is Trigger"。

3、编写脚本

SceneTeleport脚本代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[RequireComponent(typeof(BoxCollider2D))]
public class SceneTeleport : MonoBehaviour
{
    [SerializeField] private SceneName sceneNameGoto = SceneName.Scene1_Farm;  // 要去的场景的名称
    [SerializeField] private Vector3 scenePositionGoto = new Vector3(); // 新场景的player的位置信息


    private void OnTriggerEnter2D(Collider2D collision)
    {
        Player player = collision.GetComponent<Player>();

        if (player != null) 
        {
            // Calculate player's new position
            float xPosition = Mathf.Approximately(scenePositionGoto.x, 0f) ? player.transform.position.x : scenePositionGoto.x;
            float yPosition = Mathf.Approximately(scenePositionGoto.y, 0f) ? player.transform.position.y : scenePositionGoto.y;
            float zPosition = 0f;

            // Teleport to new scene
            SceneControllerManager.Instance.FadeAndLoadScene(sceneNameGoto.ToString(), new Vector3(xPosition, yPosition, zPosition));
        }
    }
}

4、创建预设体并配置参数

将SceneTeleport 放到Assets -> Prefabs -> Scene下

(1)处理Scene1_Farm

选择SceneTeleport对象,其Box Collider 2D -> Size设为x=0.3,y=12

选择Tilemap Grid下的Collisions对象,勾选Tilemap Renderer。

然后拖动SceneTeleport到右边缘,和Collisions对象没有重合。

选择Tilemap Grid下的Collisions对象,再反勾选Tilemap Renderer。

(2)处理Scene2_Field

在Hierarchy中卸载Scene1_Farm,加载Scene2_Field。

给Scene2_Field添加预设体SceneTeleport。

选择Tilemap Grid下的Collisions对象,勾选Tilemap Renderer。

配置SceneTeleport对象:

1)Box Collider 2D -> Size设为x=0.3,y=12,

2)SceneTeleport -> SceneNameGoto=Scene1_Farm,ScenePositionGoto -> x=39。

选择Tilemap Grid下的Collisions对象,再反勾选Tilemap Renderer。

(3)再处理Scene1_Farm

卸载Scene2_Field,重新加载Scene1_Farm,

配置SceneTeleport -> SceneNameGoto=Scene2_Field,ScenePositionGoto -> x=-39。

(4)配置启动场景名称

在Hierarchy -> PersistentScene中,配置SceneControllerManager -> StartingSceneName=Scene1_Field。

5、运行程序

同时卸载掉Scene1_Farm和Scene2_Field,然后运行程序。

因为SceneControllerManager会加载某一个场景,如果当前已经有一个加载中的场景,则会导致重复加载2次。

运行效果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2295697.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里通义实验室提出AnyStory:开启个性化文本到图像生成的新篇章!

在这个数字化时代&#xff0c;生成式AI技术正以前所未有的速度改变着我们的创作方式。近期&#xff0c;阿里通义实验室发表了一篇题为《AnyStory: Towards Unified Single and Multi-Subject Personalization in Text-to-Image Generation》的论文&#xff0c;该论文提出了一种…

开启蓝耘之旅:DeepSeek R1 模型在智算平台的起步教程

----------------------------------------------------------我的个人主页-------------------- 动动你的手指----------------------------------------点赞&#x1f44d; 收藏❤--------------------------------------------------------------- 引言 在深度学习的广袤领…

ISAAC Sim 1.1. Isaac Sim 4.2.0 环境配置

我使用的系统是ubuntu20.04&#xff0c;根据推荐使用Binary installation 1.下载和安装 1.1. Isaac Sim 参照Installation using Isaac Sim Binaries — Isaac Lab Documentation完成ISAAC SIM安装。 1.2. Isaac Lab “Isaac Lab 提供您需要的工具&#xff0c;以便您根据项…

活动预告 | Power Hour: Copilot 引领商业应用的未来

课程介绍 智能化时代&#xff0c;商业应用如何实现突破&#xff1f;微软全球副总裁 Charles Lamanna 将为您深度解析&#xff0c;剖析其中关键因素。 在本次线上研讨会中&#xff0c;Charles Lamanna 将分享他在增强商业运营方面的独到见解与实战策略&#xff0c;深度解读商业…

Gemini 2.0模型更新:谷歌最新AI大模型全面开启智能时代

引言 2025年2月5日&#xff0c;谷歌人工智能实验室&#xff08;Google DeepMind&#xff09;发布了最新的Gemini 2.0模型系列更新&#xff0c;包括2.0 Flash、Flash-Lite和Pro实验版本。这些AI大模型的发布标志着人工智能技术在性能、效率和多模态能力上的进一步突破&#xff…

前端布局与交互实现技巧

前端布局与交互实现技巧 1. 保持盒子在中间位置 在网页设计中&#xff0c;经常需要将某个元素居中显示。以下是一种常见的实现方式&#xff1a; HTML 结构 <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><m…

乘 DeepSeek 之风,破工作传统之浪,驶向智能高效新航道⭐

引言&#xff1a;当工作场景遭遇认知革命 在数字化转型的浪潮中&#xff0c;人工智能正以指数级速度重塑职场生态。DeepSeek作为国内领先的认知智能平台&#xff0c;其技术突破已超越简单的信息检索工具&#xff0c;正在演变为职场人的"第二大脑"。本文将系统解构De…

Chirpy3D:用于创意 3D 鸟类生成的连续部分潜在特征

Chirpy3D框架可以将细粒度的2D图像理解提升至3D生成的全新境界。当前的3D生成方法往往只关注于重构简单的对象&#xff0c;缺乏细致的特征和创造性。Chirpy3D通过结合多视角扩散模型和连续的部件潜在空间&#xff0c;能够生成全新且合理的3D鸟类模型。该系统不仅能够保持细致的…

viem库

viem是一个用于和以太坊进行交互的javascript库&#xff0c;它提供了简单的API进行智能合约的读取和写入操作&#xff0c;你可以使用它来与区块链上智能合约进行交互&#xff0c;查询链上数据等。 基本功能 1&#xff0c;创建公有客户端 createPublicClient 可以创建一个链接…

【每日一题 | 2025】2.3 ~ 2.9

个人主页&#xff1a;GUIQU. 归属专栏&#xff1a;每日一题 文章目录 1. 【2.3】P8784 [蓝桥杯 2022 省 B] 积木画2. 【2.4】P8656 [蓝桥杯 2017 国 B] 对局匹配3. 【2.5】[ABC365D] AtCoder Janken 34. 【2.6】P8703 [蓝桥杯 2019 国 B] 最优包含5. 【2.7】P8624 [蓝桥杯 2015…

整数拆分cpp

题目如下 思路&#xff1a;根据数论知识&#xff0c;要使乘积最大化&#xff0c;将该数拆分成3和2即可&#xff0c;一直对该数进行减三操作&#xff0c;直到该数小于等于4即可 代码如下 谢谢观看

DeepSeek之Api的使用(将DeepSeek的api集成到程序中)

一、DeepSeek API 的收费模式 前言&#xff1a;使用DeepSeek的api是收费的 免费版&#xff1a; 可能提供有限的免费额度&#xff08;如每月一定次数的 API 调用&#xff09;&#xff0c;适合个人开发者或小规模项目。 付费版&#xff1a; 超出免费额度后&#xff0c;可能需要按…

如何在WPS和Word/Excel中直接使用DeepSeek功能

以下是将DeepSeek功能集成到WPS中的详细步骤&#xff0c;无需本地部署模型&#xff0c;直接通过官网连接使用&#xff1a;1. 下载并安装OfficeAI插件 &#xff08;1&#xff09;访问OfficeAI插件下载地址&#xff1a;OfficeAI助手 - 免费办公智能AI助手, AI写作&#xff0c;下载…

神经网络常见激活函数 6-RReLU函数

文章目录 RReLU函数导函数函数和导函数图像优缺点pytorch中的RReLU函数tensorflow 中的RReLU函数 RReLU 随机修正线性单元&#xff1a;Randomized Leaky ReLU 函数导函数 RReLU函数 R R e L U { x x ≥ 0 a x x < 0 \rm RReLU \left\{ \begin{array}{} x \quad x \ge 0…

【分布式理论7】分布式调用之:服务间的(RPC)远程调用

文章目录 一、RPC 调用过程二、RPC 动态代理&#xff1a;屏蔽远程通讯细节1. 动态代理示例2. 如何将动态代理应用于 RPC 三、RPC序列化与协议编码1. RPC 序列化2. RPC 协议编码2.1. 协议编码的作用2.2. RPC 协议消息组成 四、RPC 网络传输1. 网络传输流程2. 关键优化点 一、RPC…

【Maven】项目管理工具-Maven

目录 1. Maven简介 1.1 项目管理 1.2 项目构建 1.3 项目构建工具 1.4 Maven的四大特征 1.4.1 依赖管理系统 1.4.2 多模块构建 1.4.3 一致的项目结构 1.4.4 一致的构建模型和插件机制 1.5 Maven模型 ​编辑 2.maven的安装配置 2.1 Maven的安装配置 2.1.1检测jdk的版…

ASP.NET Core WebSocket、SignalR

目录 WebSocket SignalR SignalR的基本使用 WebSocket WebSocket基于TCP协议&#xff0c;支持二进制通信&#xff0c;双工通信。性能和并发能力更强。WebSocket独立于HTTP协议&#xff0c;不过我们一般仍然把WebSocket服务器端部署到Web服务器上&#xff0c;因为可以借助HT…

【学术投稿】第五届计算机网络安全与软件工程(CNSSE 2025)

重要信息 官网&#xff1a;www.cnsse.org 时间&#xff1a;2025年2月21-23日 地点&#xff1a;中国-青岛 简介 第五届计算机网络安全与软件工程&#xff08;CNSSE 2025&#xff09;将于2025年2月21-23日在中国-青岛举行。CNSSE 2025专注于计算机网络安全、软件工程、信号处…

26~31.ppt

目录 26.北京主要的景点 题目 解析 27.创新产品展示及说明会 题目​ 解析 28.《小企业会计准则》 题目​ 解析 29.学习型社会的学习理念 题目​ 解析 30.小王-产品展示信息 题目​ 解析 31.小王-办公理念-信息工作者的每一天 题目​ 解析 26.北京主要的景点…

网络工程师 (28)IEEE802标准

前言 IEEE 802标准是由电气和电子工程师协会&#xff08;IEEE&#xff09;制定的一组局域网&#xff08;LAN&#xff09;和城域网&#xff08;MAN&#xff09;标准&#xff0c;定义了网络中的物理层和数据链路层。 一、起源与背景 IEEE 802又称为LMSC&#xff08;LAN/MAN Stand…