91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Unity3D技術之本地客戶端開發入門

發布時間:2020-06-05 06:25:00 來源:網絡 閱讀:619 作者:狗刨學習網 欄目:游戲開發

歡迎來到unity學習unity培訓unity企業培訓教育專區,這里有很多U3D資源U3D培訓視頻U3D教程U3D常見問題U3D項目源碼,我們致力于打造業內unity3d培訓、學習第一品牌。

本地客戶端開發入門

本地客戶端 (NaCl) 是 Google 提供的新技術,其允許您在 Web 頁面嵌入本地可執行代碼,以便您在無需安裝插件的情況下部署性能非常強的 web 應用程序。目前,NaCl 僅支持在 Windows、Mac OS X 和 Linux(含可用的 Chrome 操作系統支持)上使用 Google Chrome,但這是一項開源技術,我們以后可將此技術移植到其他瀏覽器平臺。

Unity 3.5 為使用 NaCl 運行 Unity 網頁播放器 (Web Player) 目錄(.unity3d 文件)提供支持,這無需在 Chrome 上安裝插件的情況下運行目錄。這是早期版本 – 性能穩定,但不支持 Unity 網頁播放器 (Web Player) 支持的所有功能,因為 NaCl 是一個不斷更新的平臺,不支持瀏覽器插件中支持的所有功能。

在 NaCl 上構建和測試游戲

在 NaCl 上構建和測試游戲非常簡單。您需要安裝 Google Chrome。只需在發布設置 (Build Settings) 中選擇 “網頁播放器 (Web Player)”,然后選中 “啟用 (Enable) NaCl” 復選框。這將確保生成的 unity3d 文件可在 NaCl 上運行(通過添加 NaCl 所需的 GLSL ES 著色器和禁用 NaCl 不支持的動態字體),并安裝 NaCl runtime 和 html 文件,以在 NaCl 中運行游戲。如果單擊構建并運行 (Build & Run),Unity 會將播放器作為 Chrome 中的應用程序安裝起來,并自動運行播放器。

使用 NaCl 安裝游戲

在當前狀態的默認情況下不會啟用 Chrome 通用網頁。將 NaCl 播放器嵌入至任何網頁并指導用戶在 chrome://flags 中手動啟用 NaCl,目前,安裝并立即運行 NaCl 游戲的唯一方法是在 Chrome Web 商店 (Store)(默認情況下將啟用 NaCl)部署這些游戲。請注意,Chrome Web 商店 (Store) 是公開且不受限制的,可供您托管嵌入至自己網站的內容,或使用自有的付款處理系統(如果需要)。根據計劃,Google 完成名為可移植 NaCl (PNaCl) 的新技術的開發工作后,NaCl 的局限性將得到改觀,此技術允許您將可執行文件作為 LLVM 位碼安裝,從而讓 NaCl 應用程序擺脫任何特定 CPU 體系結構的影響。然后應在任意網站上啟用 NaCl。

構建尺寸注意事項

構建 NaCl 時,您可能會發現 “unity_nacl_files_3.x.x” 文件夾非常大,超過 100 MB。您可能想知道,每次運行 NaCl 目錄時是否需要下載所有這些數據,答案通常是“不需要”。Chrome Web 商店 (Store) 有兩種方式提供應用,一種是托管應用,一種是打包應用。如果以打包應用方式提供目錄,則將在安裝時將以壓縮的存檔文件形式下載所有數據,然后將所有數據存儲在用戶磁盤上。如果以托管應用方式提供內容,則每次將從 web 下載數據。但是,nacl runtime 將只從 “unity_nacl_files_3.x.x” 文件夾下載相關體系結構 (i686 or x86_64),正確配置 web 服務器后,系統將在傳輸時壓縮數據,待傳輸的實際數據大小應為 10 MB 左右(使用物理剝離可縮減數據大小)。”unity_nacl_files_3.x.x” 文件夾包含可設置 Apache “.htaccess” 文件,以便在傳輸時壓縮數據。如果正在使用其他 web 服務器,可能需要自己進行設置。

NaCl 的局限性

NaCl 并非支持常用 Unity 網頁播放器 (Web Player) 的所有功能。后續版本的 Chrome 和 Unity 將支持其中許多功能。目前,NaCl 不支持以下這些功能:

  • 網絡攝像頭紋理 (Webcam Textures)

  • 游戲桿輸入 (Joystick Input)

  • 緩存 (Caching)

  • 物質 (Substances)

  • 動態字體 (Dynamic Fonts)

  • 除 WWW 類之外的其他類型組成的網絡

  • 分析器未運行,因為它需要將網絡連接至編輯器 (Editor)。

  • 和標準網頁播放器插件一樣,NaCl 目前不支持本地 C/C++ 插件。

NaCl 支持以下功能,但存在一些局限性:

  • 深度紋理:

深度紋理適用于制作實時陰影和其他效果。Unity NaCl 支持深度紋理,但 Chrome 的 OpenGL ES 2.0 實施不支持所需的 Windows 擴展,因此,深度紋理不適用于 OS X 和 Linux。

  • 其他圖形功能:

NaCl 使用 OpenGL ES 2.0,不支持普通 OpenGL 中的所有擴展。這表示有些功能受擴展影響,如 NaCl 目前不支持線性和 HDR 光照功能。另外,著色器 (Shaders) 需要編譯為 GLSL 著色器。目前,并非所有內置 Unity 著色器都支持此功能,例如,GLSL 著色器不支持屏幕空間環境光遮蔽 (Screen Space Ambient Occlusion)。

  • 光標鎖定:

支持光標鎖定,但僅限于全屏模式。將來的 Chrome 版本計劃在窗口模式下支持光標鎖定。

  • NullReferenceExceptions(空引用異常):

NaCl 不支持硬件異常處理。這表示腳本代碼中的 NullReferenceException 導致 NaCl 崩潰。但是,您可以將 softexceptions=”1″ 傳送至嵌入的參數(構建開發播放器時由 Unity 自動設置),以告訴 mono 檢查軟件中是否存在 NullReferences(空引用),如有,則將減慢腳本的執行速度,但不會導致崩潰。

Google 未對使用 NaCl 設定任何系統要求,但 Mac 的操作系統至少應為 OS X 10.6.7,我們發現其在舊系統中運行效果不佳 – 尤其是使用舊 GPU 或圖形驅動程序和主內存較小的系統。如需使用目標舊硬件,您會發現 網頁播放器 (Web Player) 可提供更好的性能。

全屏模式:

設置 Screen.fullScreen 屬性即支持全屏模式,您只可在用戶釋放鼠標按鈕的情況下進入全屏模式。NaCl 實際上不會更改硬件屏幕分辨率,所以 Screen.resolutions 將只返回當前的桌面分辨率。但是,Chrome 支持渲染更小的后臺緩沖區,然后將位圖放大至屏幕大小。因此,請求更小的分辨率,然后桌面分辨率通常將支持全屏模式,但會導致根據 GPU 縮放屏幕,而非改變全屏模式。

WWW 類:

WWW 類支持 NaCl,但需要遵循 Unity 網頁播放器 (Web Player) 的不同安全政策。Unity 網頁播放器 (Web Player) 使用與閃存相似的 crossdomain.xml 政策文件,但 Unity NaCl 必須遵循 NaCl 遵循的跨域安全機制。實際上,要訪問托管播放器的其他域中的 html 文檔,需要將 web 服務器配置為傳送 Access-Control-Allow-Origin 響應請求頭,以便讓此域托管播放器。

在 NaCl 中與瀏覽器 javascript 通信

NaCl 支持使用 JavaScript 與網頁互動,并且這與使用 Unity 網頁播放器 (Web Player) 互動很相似。這和從 html javascript 發送消息至 Unity 的語法有所不同,它必須通過 NaCl 模塊。使用默認的 Unity 生成的 html 時,此代碼將可以運行:

document.getElementById(‘UnityEmbed’).postMessage(“GameObject.Message(parameter)”);

要從 NaCl 調用瀏覽器 JavaScript 代碼,可調用 Application.ExternalCall 或 Application.ExternalEval。但是,Google 已撤銷對 Chrome 應用 Eval 函數的支持,因此,將其發布至 Chrome Web 商店也無法運行。為解決此問題,您可以使用 Application.ExternalEval 發送您在 unity_nacl.js moduleMessage 類函數中截獲的字符串,或將應用設置為您滿意的沙箱 (Sandbox)。

日志

NaCl 不允許訪問用戶文件系統,所以不會編寫日志文件。而會將所有日志輸出到標準輸出流。要在 NaCl 中查看播放器日志:

  • 在編輯器中執行一次構建并運行 (Build & Run),確保您的游戲已作為應用程序安裝到 Chrome。

  • 在 Mac OS X 上從終端啟動 Chrome,然后單擊其圖標啟動此應用程序。您應該可以在終端看到 Unity 播放器輸出的日志。

  • Windows 系統也一樣,但您需要設置 NACL_EXE_STDOUT 和 NACL_EXE_STDERR 環境變量,并使用不帶沙箱的選項啟動 Chrome。

  • 更多精彩請點擊 http://www.gopedu.com/


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

四平市| 邓州市| 宁蒗| 光泽县| 红原县| 梁河县| 鄂伦春自治旗| 静安区| 鞍山市| 甘谷县| 闽侯县| 贡山| 宁阳县| 霍州市| 微山县| 肃南| 花垣县| 九龙城区| 常德市| 江孜县| 南开区| 远安县| 大渡口区| 宁蒗| 射洪县| 贵港市| 湟源县| 遂溪县| 镇平县| 襄垣县| 威信县| 嘉鱼县| 辽中县| 岚皋县| 郎溪县| 霍城县| 广汉市| 克山县| 巴南区| 宣化县| 休宁县|