js调用unity程序_Unity3D开发之unity和js通信交互

本文介绍了Unity3D在WebPlayer时代与JavaScript交互的老版方法,包括Unity通过Application.ExternalCall调用JS及JS通过SendMessage回传信息。同时,针对2018.2.9版本后弃用ExternalCall的情况,文章提供了新版方法,通过创建.jslib文件作为中间层进行通信,并详细解释了转换数据类型和调用函数的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.老版方法

unity发布webplayer平台后会输出html和unity3d文件。我们的程序主要被打包在unity3d文件里,而html则是网页的界面显示。

1.Unity发送消息给JS

unity想要和js交互,提供了一个函数:Application.ExternalCall();此函数仅限于webplayer平台下。我们编辑发布的html文件,在里面加入我们的js脚本如下:

function GetID(id)

{

alert("传入id:"+id);

}

在unity里我们在start函数里调用

Application.ExternalCall("GetID","吴彦祖");

使用浏览器打开html文件,就会出现如下弹窗:

2.JS发送消息给unity

我们在刚才的js函数里添加一句代码:

function GetID(id)

{

alert("传入id:"+id);

//发送消息给unity 第一个参数:挂在脚本的物体 第二个参数:unity被调用的函数 第三个参数:函数传入的参数

u.getUnity().SendMessage("Main Camera","GetIDInfo","JayW")

}

在unity里创建一个函数用来接收处理:

public void GetIDInfo(string id)

{

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值