Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

React Unity WebGL | Запуск Unity проекта на React + простой обмен данными

License

RimuruDev/Unity-React-WEBGL-Clicker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

15 Commits

Repository files navigation

Пометка на память

Создание WEBGL игры с интеграцией React и Unity

Шаги по установке и созданию проекта

  1. Создаем новый проект React:

    npx create-react-app react-project
  2. Переходим в папку проекта:

    cd react-project
  3. Устанавливаем библиотеку для интеграции Unity в React:

    npm install react-unity-webgl
  4. Собираем билд Unity и переносим его в папку public/UnityBuild. В моем случае проект называется Clicker.

  5. Создаем файл App.js в папке src и файл UnityApp.js в папке src.

Пример файла App.js

import React from 'react';
import UnityApp from './UnityApp';
function App() {
 return (
 <div className="App">
 <UnityApp />
 </div>
 );
}
export default App;

Пример файла UnityApp.js

import React, { useEffect } from 'react';
import { Unity, useUnityContext } from "react-unity-webgl";
function UnityApp() {
 const { unityProvider, sendMessage } = useUnityContext({
 loaderUrl: "UnityBuild/Build/Clicker.loader.js",
 dataUrl: "UnityBuild/Build/Clicker.data.unityweb",
 frameworkUrl: "UnityBuild/Build/Clicker.framework.js.unityweb",
 codeUrl: "UnityBuild/Build/Clicker.wasm.unityweb",
 });
 useEffect(() => {
 const user = {
 user_id: "666",
 user_name: "Rimuru Dev"
 };
 console.log("Sending user data:", JSON.stringify(user));
 sendMessage("UserDataHandler", "ReceiveUserData", JSON.stringify(user));
 }, [sendMessage]);
 useEffect(() => {
 window.UnityToReact = (message) => {
 console.log("Received from Unity: ", message);
 };
 return () => {
 delete window.UnityToReact;
 };
 }, []);
 return <Unity unityProvider={unityProvider} style={{ width: "800px", height: "600px" }} />;
}
export default UnityApp;
  1. Запускаем проект:

    npm start
  2. Открываем в браузере:

    http://localhost:3000/
    

Тестирование проекта

Если вы хотите протестировать этот проект, выполните следующие шаги:

  1. Установите Node.js: Если у вас нет Node.js, скачайте и установите его с официального сайта.

  2. Склонируйте репозиторий:

    git clone https://github.com/RimuruDev/Unity-React-WEBGL-Clicker.git
  3. Перейдите в папку с проектом React:

    cd Unity-React-WEBGL-Clicker/react-project
  4. Установите зависимости:

    npm install
  5. Запустите проект:

    npm start
  6. Откройте проект в браузере: Откройте браузер и перейдите по адресу:

    http://localhost:3000/
    

Теперь вы можете увидеть работу интеграции Unity и React в действии. Если у вас возникнут вопросы или проблемы, пожалуйста, создайте issue в репозитории.

AltStyle によって変換されたページ (->オリジナル) /