在3D遊戲中顯示網頁

來源:互聯網
上載者:User

在遊戲中顯示網頁? 為什麼要這麼做呢?

其實可以做不少的應用:

  1. 嵌入協助文檔, 比如技能介紹, 可以做得很漂亮, 各種排版方式用傳統UI做起來很費勁
  2. 活動公告頁面直接在遊戲中查看
  3. 遊戲內的BBS/社區
  4. 玩家的個性展示/資料
  5. 等等
  6. 最重要的是, 所有的這些內容都可以扔到web伺服器上, 不用打包進用戶端

最早是用LLMozLib 實驗過, 編譯這玩意兒費了我老大勁兒, 最終發布時還要帶一屁股的DLL和資源

受不了了就用IE自己搞了個, 沒做完美, 到是把flash activex嵌入D3D給完成了

當然, 用IE不是不行, 就是效能不好, 實現也很繁瑣. HL2泄漏的原始碼裡有完整的實現, 懶得折騰了

後來有人在Chrome的源碼基礎上搞出一個Awesomium, 然後閉源商業化成立了一個公司, 算是這方面做得比較成功的一個

EA開源出的eastl等代碼裡也有一個模組叫eawebkit, 可能也是做這個用的, 沒有實驗

關於嵌入flash到d3d/ogl這個問題上, 有幸跟uBrowser的作者交流過, 後來他也放棄直接使用IE/ActiveX了, 轉向了WebKit

不過沒他沒有直接整合WebKit, 而是使用了QtWebKit, 做了一個叫LLQtWebKit的東東

今天心血來潮, 把代碼down下來, 使用Qt的VS2008外掛程式載入.pro檔案, 修正幾個配置問題就編譯過了

這個庫整合到遊戲就實用多了, pixel資料更新到一張紋理上, 愛怎麼畫怎麼畫, 把網頁貼模型上都沒問題

依賴的庫檔案雖然不如Awesomium那麼精簡, 到也可以接受了

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.