簡介:javascript
一、Unity3D的遊戲引擎是和編輯器集成在一塊兒的,全部它也是一個製做/開發平臺。php
二、Unity3D是使用JavaScript、C#做爲核心腳本語言來驅動事個遊戲引擎。html
三、平臺能夠發佈Exe執行文件或者打包爲可供網頁調用的一個獨立的包文件。java
四、用Unity3D製做的工程具備高度的可移植性,能夠在PS xbox360 Android iPhone mac等系統上運行。web
嵌入網頁:數據庫
一、用Unity3D實現嵌入網頁和Flash插入網頁原理徹底一致,也是使用ActiveX控件嵌入在網頁中。因此和Flash同樣,須要安裝一個播放器插件(小於3M)。數組
二、查看頁面源碼,能夠看到以下嵌入部分:瀏覽器
<object id="UnityObject" classid="clsid:444785F1-DE89-4295-863A-D46C3A781394"width="600" height="450"codebase="http://webplayer.unity3d.com/download_webplayer/UnityWebPlayer.cab#version=2,0,0,0">app
<param name="src" value="MyDataFile.unity3d" />jsp
<embed id="UnityEmbed" src="MyDataFile.unity3d" width="600" height="450"type="application/vnd.unity" pluginspage="http://www.unity3d.com/unity-web-player-2.x" />
</object>
三、和Flash同樣,在瀏覽器中加載3D場景或者讀取時的圖標進度條都能進行自定義,也能夠自定義是否激活是用右鍵菜單。
數據交互
一、在Unity3D中調用網頁js函數
若是咱們在html中有腳本函數;則在u3d中咱們可用使用Application.ExternalCall調用js函數,該方法只適合在Web3D環境下使用。該方法支持基本類型的傳遞和數組傳遞,任何類型都會轉換成字符串類型使用。
例子代碼:
Application.ExternalCall("SayHello","The game says hello!);//調用SayHello,傳遞一個字符串
二、在Unity3D中直接執行一段腳本代碼如:
Application.ExternalEval("if(document.location.host!='unity3d.com'){document.location='http://unity3d.com';}");
三、在js中調用Unity3D函數(傳遞消息等)
若是有Unity3D中有一段用JS寫的功能函數:
function MyFunction(param:String)
{
Debug.Log(param);
}
須要在JS中呼叫這個函數則能夠這樣寫:
<script type="text/javascript" language="javascript">
SaySomethingToUnity(document.getElementById("UnityContent").SendMessage("MyObject","MyFunction","Hello fom a web page!"););
</script>
這裏要注意的是MyObject表明Unity3D中的一個場景名稱爲MyObject,MyFunction是調用的函數,最後一個字符爲傳遞的參數。
與php,jsp等的表單數據交互
與php,jsp等的表單數據交互極可能會是從此用到的主要方式,原理是利用form表彰傳遞數據,下面以php爲例來進行說明。
Unity3D能夠實現向某個指定頁面發送表單數據而後在php中使用_POST獲取傳遞回來的表彰數據。好比:
<?php
$action = $_POST["myform_action"];//定義一個變量$action用來獲取頁面傳遞過來的表單數據
if($action!=""){
echo $action;//若是接收到了數據則打印出數據內容
}
?>
在Unity3D中咱們發送數據的代碼以下:
var form = new WWWForm();//定義一個網頁表單
form.AddField("myform_action","Action1");//添加一個表彰字段名稱爲myform_action內容是action1
var download = new WWW("www.xxx.com/index.php",form);//發送表單數據到指定網址頁面
假如index.php執行的是數據庫/統計操做,咱們就能夠對傳遞的數據進行保存讀取或者其餘操做了。