es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

React unity WebGL no funciona en el proyecto de React JS.

Hola, estoy intentando hacer que mi exportación de Unity WebGL funcione en mi proyecto React JS, pero por alguna razón no está funcionando. Estoy utilizando la siguiente versión de React Unity WebGL (react-unity-webgl@7.x # Para Unity 2018 y 2019 (Active LTS)) y he seguido las instrucciones correspondientes a la versión que estoy usando. Alguien tuvo el mismo problema que yo y hizo una pregunta en GitHub y seguí lo que dijeron, que básicamente es poner la carpeta de Unity en la carpeta pública, pero aún así no funciona. ¿Alguien tiene alguna idea de cómo solucionar esto?

Esta es cómo está estructurada mi carpeta:

enter image description here

Y estos son los dos códigos que he intentado (que son básicamente iguales):

Código A:

import React from 'react';
import Unity, { UnityContent } from "react-unity-webgl";

let unityContent = new UnityContent(
  "Megaman/Build/Megaman.json",
  "Megaman/Build/UnityLoader.js"
);

function MegamanGame() {
    return (
        <div>
          <h1>No funciona</h1>
          <unity unitycontent="{unityContent}"></unity>
        </div>
    )
}

export default MegamanGame;

Código B:

import Unity, { UnityContent } from "react-unity-webgl";

export default function Megaman() {
    let unityContent = new UnityContent(
        "Megaman/Build/Megaman.json",
        "Megaman/Build/UnityLoader.js"
    );
    return (
        <div><unity unitycontent="{unityContent}"></unity></div>
    );
}

Y así es como se renderiza:

enter image description here

Ten en cuenta que he intentado la ruta de dos maneras: "Megaman/Build/Megaman.json" o simplemente "/Build/Megaman.json".

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Según la información proporcionada, el problema puede estar relacionado con la ruta de los archivos de compilación de Unity. Parece que la ruta utilizada en el código puede no ser correcta.

    Una sugerencia es intentar usar una ruta absoluta para los archivos de compilación de Unity, comenzando desde el directorio raíz del proyecto. Por ejemplo, si los archivos de compilación de Unity se encuentran en una carpeta llamada “unity” en el directorio raíz, la ruta se podría especificar de la siguiente manera:

    let unityContent = new UnityContent(
      "/unity/Megaman/Build/Megaman.json",
      "/unity/Megaman/Build/UnityLoader.js"
    );
    

    Otra cosa que se debe verificar es si los archivos de compilación de Unity se copian correctamente en la carpeta “public” durante el proceso de compilación.

    También puede ser útil revisar la consola del navegador en busca de mensajes de error o advertencias relacionadas con la carga del contenido de Unity.

Comments are closed.