UnityパッケージのWebGLとJsの通信方法
Unity WebGL Js , 。
Unity呼び出しJsメソッド
1.廃棄方法(1)公開されたWebGLプロジェクトのindex.html Exit関数の追加:
function Exit() { alert("UnityToWeb") }
(2)Unityでメソッドを呼び出したい場合は、コードを追加します.
Application.ExternalCall("Exit");// Js Exit
2.新しい方法(1)新規フォルダPlugins(2)フォルダ新規.jslibファイル、ここで__を作成Internal.jslibファイル追加コード
mergeInto(LibraryManager.library, {
Hello: function () {
window.alert("Hello, world!");
Exit();// Js
},
});
(3)c#ファイル
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Runtime.InteropServices;
///
/// Unity Js
///
public class UnityToWeb : MonoBehaviour
{
//
[DllImport("__Internal")]
private static extern void Hello();
void Start()
{
Hello();//
}
///
/// Unity JSExit
///
public void Exit()
{
// Application.ExternalCall("Exit");
}
}
(5)発表されたWebGLプロジェクトのindex.html Exit関数の追加:
function Exit() { alert("UnityToWeb") }
二Js呼び出しUnityメソッド
1.シーンに空のオブジェクトを新規作成し、WebWithUnityと名前を付けてから、新しいスクリプトWebToUnityを作成します.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class WebToUnity : MonoBehaviour
{
public Text text;
public void JsToUnity(string a)
{
text.text = a;
}
}
2.ここでは、JsでJsToUnityという関数を呼び出し、プロジェクトをパッケージ化してindexを変更します.htmlファイル.
Unity WebGL Player | RoamWeb
var unityInstance = UnityLoader.instantiate("unityContainer", "Build/Web4.json", {onProgress: UnityProgress});
function Exit() { alert("UnityToWeb") }//Exit
function TestSend() { unityInstance.SendMessage("WebWithUnity", "JsToUnity","WebToUnity"); }//js Unity ,WebWithUnity ( ),JsToUnity ,WebToUnity 。
RoamWeb
// 。