首頁 >web前端 >js教程 >使用Primrose和WebVR在VR中構建虛擬現實

使用Primrose和WebVR在VR中構建虛擬現實

Jennifer Aniston
Jennifer Aniston原創
2025-02-18 09:13:11782瀏覽

>今年,虛擬現實(VR)正經歷普及,VR耳機從貨架上飛來。 開發平台越來越關注VR開發,以滿足熱情開發人員不斷增長的需求。 統一和虛幻引擎的一個特別令人興奮的發展是在VR環境本身中編輯VR場景的能力。 對於WebVR和JavaScript開發人員,正在出現一個新框架,該框架為原型製作和實驗提供了類似的功能:Primrose。

> primrose的關鍵特徵:>

    報春花是一個框架,實現了VR場景的IN-VR編輯,直接解決了對VR開發的不斷增長的興趣。 它促進了VR環境中快速的原型製作和視覺迭代。 >
  • 要使用Primrose,開發人員需要一個具有WebVR支持的啟用WebGL的瀏覽器(例如最近的Chromium WebVR構建或每晚的Firefox),Oculus Rift或Google Cardboard耳機(儘管沒有耳機而沒有瀏覽器的實驗),但Web服務器(Wamp/Mamp/Node/Python等本地服務器足夠)和触摸型技能。
  • primrose功能實時編碼,允許在VR環境中甚至直接在沒有耳機的瀏覽器中進行實時代碼編輯。
  • 開發人員可以在報春花中添加各種場景元素,包括軸,點雲,輪轂,燈,盒子和圓柱體。這些可以通過
  • >文件添加,也可以直接在VR編輯器中。 >
  • 在仍處於早期階段的同時,較早顯示了未來VR應用的巨大潛力。 鼓勵社區貢獻加速其增長。 app.js
  • 什麼是幼小的? 如其官方網站上所述,Primrose是一個跨瀏覽器的多設備框架,用於在WebVR應用程序中構建生產力工具。它為開發人員提供了一個基於瀏覽器的環境,以實驗和可視化VR概念。 它是開源的,並且正在積極開發。
  • >

系統要求:

要開始使用Primrose開始您的W​​ebVR旅程,您需要:>

>啟用WebVR支持的啟用WebGL的瀏覽器(例如,每晚都有最近的Chromium WebVR構建或Firefox)。

> > oculus Rift,HTC Vive或Google Cardboard耳機(基於瀏覽器的工作可選)。

> Web服務器(諸如Wamp,Mamp,Node.js或Python之類的本地服務器)。

觸摸型的能力。

  • 入門:
  • >可以在Primrose的網站上獲得功能齊全的實時編碼演示(確保使用啟用WebGL的瀏覽器)。 有關本地副本,請下載或克隆最新版本和Primrose GitHub存儲庫中的示例。
  • 簡化版本:

>在單獨的github存儲庫上可以使用簡化的實時編碼演示,但具有降低功能以更容易解釋的功能[鏈接到GitHub repo鏈接,都可以在這裡]。 >

運行簡化版本:

>將簡化的演示放在您的Web服務器上,然後在啟用WebGL的瀏覽器中將其打開(例如,http://localhost/primrose)。 請記住,由於訪問資源的瀏覽器安全限制,它不會直接從您的文件系統運行。

>示例屏幕截圖(替換為實際映像):>

Build Virtual Reality in VR with Primrose and WebVR

較早的工作原理:

報春花應用的核心涉及定義紋理並初始化較早的應用程序:

使用

>定義一個編輯區域:
<code class="language-javascript">var BRICK = "images/brick.png",
    GROUND = "images/deck.png",
    SKY = "images/bg2.jpg",
    app = new Primrose.BrowserEnvironment("Our Simplified 3D Editor", {
      skyTexture: SKY,
      groundTexture: GROUND
    });</code>
>

Primrose.Surface>元素添加在

>事件偵聽器中:
<code class="language-javascript">editorFrame = new Primrose.Surface({
  bounds: new Primrose.Text.Rectangle(0, 0, 2048, 2048)
});</code>

"ready"primrose利用

>的對象進行文本編輯功能。 該事件處理場景更新和動畫。 其他事件,例如
<code class="language-javascript">app.addEventListener("ready", function() {
  // ... (add subScene, editor, initial code) ...
});</code>

等,管理用戶交互。 Primrose.Textupdate(“它的工作方式”部分,包括keydown的代碼示例和解釋,mousedown>,

axiscloudhub和其他功能,將包括在這裡,維護相同的結構並釋義原始文本。 lightbox(“結論”,“常見問題”,此處也將包括他們各自的答案,保持相同的結構並釋義原始文本。)實際圖像URL。 cylinder

以上是使用Primrose和WebVR在VR中構建虛擬現實的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn