1. 程式人生 > >Unity3D 匯出 web 3d 後,視口在瀏覽器中的“全屏”設定

Unity3D 匯出 web 3d 後,視口在瀏覽器中的“全屏”設定

用文字編輯器開啟對應匯出的 html 檔案,找到如下程式碼段:

<script language="javascript1.1" type="text/javaScript">
    var hasUnity = DetectUnityWebPlayer();
    var brokenUnity = false;
    if (hasUnity) {
    
     document.write('<object id="UnityObject" classid="clsid:444785F1-DE89-4295-863A-D46C3A781394" width="800" height="600"> /n');

將其中的 width, height 改為:

width="100%" height="100%"

以上程式碼段的作用是:

當前控制元件相對它的上一層完全自動縮放

仍然存在的問題:

(1)拉伸瀏覽器的過程中視口沒有自動調節,拉伸完後,滑鼠點選下視口,會調整到當前瀏覽器的“全屏”。

如何:在瀏覽器拉伸的過程中,能看到視口在自動調整,好比,按著左鍵不放,在慢慢的拉伸瀏覽器,能看到視口也在調整的過程?
(2)FireFox 沒有達到以上的效果。

改正問題(2)的方法:

找到以下程式碼段:

if (hasUnity) {
     
     document.write('<object id="UnityObject" classid="clsid:444785F1-DE89-4295-863A-D46C3A781394" width="100%" height="100%"> /n');
     document.write('  <param name="src" value="webplayer version.unity3d" /> /n');
     document.write('  <embed id="UnityEmbed" src="webplayer version.unity3d" width="800" height="600" type="application/vnd.unity" pluginspage="

http://www.unity3d.com/unity-web-player-2.x" /> /n');
     document.write('</object>');

將這一行:

document.write('  <embed id="UnityEmbed" src="webplayer version.unity3d" width="800" height="600" type="application/vnd.unity" pluginspage="http://www.unity3d.com/unity-web-player-2.x" /> /n');

中的 width, height 改為:

width="100%" height="100%

這一行的作用是:embed 是設定音訊,視訊或者其他控制元件的,詳細的引數從這裡設定。。
另外 IE核心和FF瀏覽器解析是不一樣的

這樣,問題(2)解決,firefox 可以看到視口是“全屏”模式,而且能夠隨視窗的拉伸動態自動調整。