Unity WebPlayer
写在前面
最近在做unity与web之间通讯的项目,在网上搜索了一些资料非
常零散也是一些比较老的版本,就连官方给出的document 也有
一些error,这也源于web平台的更新速度太快,与此同时unity也要不断的更新相关的文档。我使用的是Unity 5.2.2f Pro版本,通过最近一段时间的摸索与尝试将unity与web之间的交互中的经验整理如下:
Html中嵌入unity 内容
通过webplayer插件将unity中的内容显示在浏览器中,html通过UnityObject.js脚本与webplayer会话。
UnityObject2.js可以是服务器文件夹中的文件,当然也可以是unity官方网站上的链接,使用链接的好处是可以保持最新版本的unityObject2.js文件,同时可能会出现一些函数名变动与参数的变化导致加载崩溃的问题。
通过document.location.protocol 判断网络传输协议是否为安全通道,如果是https安全通道,重写html中的资源引用url为安全的http通道
<script type="text/javascript">
<!--
var unityObjectUrl="http://webplayer.unity3d.com/download_webplayer- 3.x/3.0/uo/UnityObject2.js";
if (document.location.protocol == 'https:')
unityObjectUrl = unityObjectUrl.replace("http://", "https://ssl-");
document.write('<script type="text/javascript" src="' + unityObjectUrl + '"></script>');
-->
</script>
实例化UnityObject2.js脚本,initPlugin方法第一个参数是基于id为unityPlayer的html标签中的第一个子节点,第二个参数是bundle后生成的unity3d文件。
var u = new UnityObject2();
u.initPlugin(jQuery("#unityPlayer"[0],"Example.unity3d");
此段html放到body标签中
<div id="unityPlayer">
<div class="missing">
<a href="http://unity3d.com/webplayer/" title="Unity Web Player. Install now!">
<img alt="Unity Web Player. Install now!" src="http://webplayer.unity3d.com/installation/getunity.png" width="193" height="63" />
</a>
</div>
</div>
UnityObject2.js在html中的引用关系
自定义webplayer加载场景
设置webplayer中的特性
与浏览器之间的通信
使用webplayer模板
webplayer中流处理
webplayer的释放通道机制
在webPlayer中使用信任链系统
运行webPlayer在安全的沙盒中
处理webplayer中的Bug
Unity WebGL
无序列表2.1
列表内容
列表内容
WebPlayer Platform
1.1
1.2