一般我们用Unity WebGL 进行项目制作时会需要从Web发送数据到Unity,也会反过来从Unity调用Web方法以及发送数据,以下是一些技术点备注:
1.Web向Unity发送数据:
"ObjectName" : 场景内的一个物体名称
"Method":物体上的脚本中的一个方法名称
"Data":要从Web发送过去的数据
gameInstance.SendMessage("ObjectName","Method","Data");
2.Unity 调用Web方法(只调用JS方法):
"Function" :Web 端已加载或已引用的JS脚本中的方法名称
/// <summary>
/// 发送消息 - 从Unity中发送消息到Web端(调用指定Function名称的方法并不传参数)
/// </summary>
/// <param name="Function">调用的Web内的Function方法名称</param>
public void Call_Web(string Function)
{
Application.ExternalCall(Function);
}
3.Unity 调用Web方法(同时传单个数据):
"Function" :Web 端已加载或已引用的JS脚本中的方法名称
"Value":需要传送的数据
/// <summary>
/// 发送消息 - 从Unity中发送消息到Web端(调用指定Function名称的方法并传入Value数组参数)
/// </summary>
/// <param name="Function">调用的Web内的Function方法名称</param>
/// <param name="Value">传递的内容</param>
public void Call_Web(string Function, string Value)
{
Application.ExternalCall(Function, Value);
}
4.Unity 调用Web方法(同时传多个数据):
"Function" :Web 端已加载或已引用的JS脚本中的方法名称
"Value":需要传送的数据数组
/// <summary>
/// 发送消息 - 从Unity中发送消息到Web端(调用指定Function名称的方法并传入Value数组参数)
/// </summary>
/// <param name="Function">调用的Web内的Function方法名称</param>
/// <param name="Value">传递的内容数组</param>
public void Call_Web(string Function, string[] Value)
{
Application.ExternalCall(Function, Value);
}
5.注意事项
- Web端:
1.保证服务器配置正确,PhpStudy环境部署
2.保证可以正确访问Web服务器的文件
3.通过Js脚本的SendMessage方法时如果发送的时Json内容记得要用JSON.stringify()包裹Json内容
JSON.stringify("JSON内容")
** - Unity端:**
1.选择WebGL开发环境
2.发布参数设置
版权归原作者 Mr.Striker 所有, 如有侵权,请联系我们删除。