JSAR 基礎 1.2.1 基礎概念_空間小程序

JSAR 基礎 1.2.1 基礎概念_空間小程序

  • 空間
  • 空間自由度
  • 可嵌入空間
  • 空間小程序

最新的技術進展表明,官網之前的文檔準備廢除了,基于xsml的開發將退出歷史舞臺,three.js和普通web結合的技術將成為主導。所以后續學習請移步three.js學習路徑,嗶哩嗶哩這部分視頻非常多,我就不再贅述。但是關于空間小程序還是有必要解釋一下的,所以這估計是更新的最后一個jsar的文章了。

空間

官方的說法:
JSAR是可嵌入空間的 Web 運行時,它支持開發者使用類似于 Web 的技術來開發可嵌入空間的空間小程序。簡單來說,它可以幫助你將 Web 技術嵌入到某個空間場景中獨立運行。

任姐說:
最新的技術WebXR,就是vr世界里面的瀏覽器,打開它,就相當于打開了一個vr世界的瀏覽器,在這里你可以輸入任何網址,打現有網絡世界各種網站。

空間自由度

官網文檔的小動畫我覺得解釋的挺清楚了,如果還不明白,請看下圖:

0Dof
官方說法:
Zero Degree of Freedom)指的是當前空間中的觀察者以固定視角觀察虛擬空間。

任姐說:
可以理解為,在你眼鏡前面整了個創可貼(可能是2D的,也可能是3D的),貼在固定的位置上,不管你腦袋怎么動,那創可貼永遠跟著你,好像這樣:

請添加圖片描述

3Dof

官方說法:
3DoF(Three Degree of Freedom)指的是當前空間中觀察者可使用3 個自由度,通常情況下,這3 個自由度指的是空間的姿態。

任姐說:
這感覺就好像你有一個大疆的無限電量的無人機,這個無人機的設定是在你腦袋那個高度的,左前方1米遠,這個時候無論你是蹲下還是站起來,那個無人機都會立馬和你的高度保持持平;無論是是向前走還是后退,那個無人機都會保持和你1米遠;但是如果你整體不動,知識轉頭左右看,它是不會動的。

6Dof

官方說法:
6DoF(Six Degree of Freedom)指的是當前空間中觀察者可以使用6個自由度,即位置(Position)和姿態(Rotation)加在一起共計6個。

任姐說:
其實就是虛擬現實,編程做出來的東西好像一個實體一樣就放在那里,不管你怎么動它就好像你家的電視一樣,就在那里它不動的。

可嵌入空間

官方說法:
可嵌入空間,或稱為子空間,指的是一個完整的空間,它包含了一些物體,然后可以將這個空間嵌入到另一個空間中,作為另一個空間的一個組件。這樣,我們可以:

在父空間內,隨意地對子空間進行移動、旋轉、縮放
在父空間內,可以直接與子空間的物體進行交互
在父空間內,可以將多個子空間組合在一起,形成更復雜的空間
而可嵌入空間的技術關鍵點在于,如何將一個空間(獨立的應用)嵌入到另一個空間(主應用)中,而不影響到主應用的運行,我們將這稱為空間安全性,更形象的比較就像:

在一個瀏覽器中,不同的網頁運行在同一個 Web 瀏覽器中互不干擾,這就是瀏覽器的安全性。
在一個窗口操作程序中,不同的窗口運行在同一個屏幕上,窗口和窗口之間互不干擾,這就是窗口操作程序的安全性。
以上,這就是可嵌入空間的基礎概念。

任姐說:
你可以理解為一個一個的房間,好像你站在一個玩具樓外面,玩具樓里面有各種獨立的小房間。你能擺弄玩具樓不同房間里面的各種小家具,有的獨立小房間還是個套間,又有不同的小房間組成,但是作為上帝的你依舊能各種開心的玩。

空間小程序

官方說法:
在了解了空間和可嵌入空間后,那么就很容易了解什么是空間小程序了,它就是用于開發可嵌入空間的技術方案,在本頁頂部的圖片中,藍色小方塊的部分就是空間小程序(即 JSAR)希望去嵌入到主空間中的部分,它可以是一個鬧鐘、一個日歷、一本漫畫書、一個小黃鴨等等。

任姐說:
以下說法不一定正確,就是我看文檔這么多天的直觀感受。
如果JSAR繼續沿著xsml這個路線走下去的話,上面這種說法是成立的,但是就目前的官方發展趨勢來看,很有可能以js為基礎的這些應用將被折疊進WebXR,這就好像微信小程序了,有統一的程序入口,只能存在于固定的程序空間,而不是什么空間都能嵌入了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/72913.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/72913.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/72913.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

JavaWeb-servlet6中重定向、轉發、cookie、session、文件上傳和下載

請求重定向 一個 web 資源收到客戶端請求后,通知客戶端去訪問另外一個 web 資源,這稱之為請求重定向。 使用response對象提供的sendRedirect()方法,可以將網頁重定向到另一個頁面。SendRedirect()方法的語法格式: response.send…

信息安全訪問控制、抗攻擊技術、安全體系和評估(高軟42)

系列文章目錄 信息安全訪問控制、抗攻擊技術、安全體系和評估 文章目錄 系列文章目錄前言一、信息安全技術1.訪問控制2.抗攻擊技術 二、欺騙技術1.ARP欺騙2.DNS欺騙3.IP欺騙 三、抗攻擊技術1.端口掃描2.強化TCP/IP堆棧 四、保證體系和評估1.保證體系2.安全風險管理 五、真題在…

SpringBoot POST和GET請求

1. 什么是 HTTP 請求? HTTP 協議:超文本傳輸協議,用于客戶端和服務器之間的通信。 常見 HTTP 方法: GET:獲取資源POST:提交數據PUT:更新資源DELETE:刪除資源 2. GET 請求詳解 作…

mysql的Innodb最大支持的索引長度是多少,以及索引長度怎么計算

今天正好有空,來講個之前粉絲經常問的一個知識,就是mysql的Innodb最大支持的索引長度是多少?以及索引長度怎么計算? 一、mysql的innodb引擎,創建索引最大支持的長度是多少字節? 不墨跡,直接說…

Python 中 `sort()` 和 `sorted()` 的用法與區別

Python 中 sort() 和 sorted() 的用法與區別 1. sort() 方法: sort() 是 Python 列表類型 (list) 的一個方法,它用于就地(原地)排序列表,修改原始列表。排序時可以通過 key 參數指定排序依據,還可以通過 …

SpringBoot過濾器(Filter)的使用:Filter接口、FilterRegistrationBean類配置、@WebFilter注釋

1、過濾器(Filter)的介紹 Spring Boot 的過濾器用于對數據進行過濾處理。通過 Spring Boot 的過濾器,程序開發人員不僅可以對用戶通過 URL 地址發送的請求進行過濾處理(例如:過濾一些錯誤的請求或者請求中的敏感詞等),而且可以對服務器返回的數據進行過濾處理(例如:壓…

C++修煉之路:初識C++

Hello大家好&#xff01;很高興我們又見面啦&#xff01;給生活添點passion&#xff0c;開始今天的編程之路&#xff01; 我的博客&#xff1a;<但凡. 我的專欄&#xff1a;《編程之路》、《數據結構與算法之美》、《題海拾貝》 歡迎點贊&#xff0c;關注&#xff01; 引言 …

【STM32MP157系統移植】3.TF-A目錄結構

bl1&#xff1a;部分一般不用TFA自帶的&#xff0c;而是芯片內部的BOOTROM bl2&#xff1a;更像傳統意義的TF-A&#xff0c;TF-A本身 bl31&#xff1a;是ARMV&#xff18;的EL3運行時固件 bl32&#xff1a;OPTEE或者TF-A提供的sp_min bl33&#xff1a;就是uboot 真正需要移…

OpenCV連續數字識別—可運行驗證

前言 ? 文章開始&#xff0c;瞎說一點其他的東西&#xff0c;真的是很離譜&#xff0c;找了至少兩三個小時&#xff0c;就一個簡單的需求&#xff1a; 1、利用OpenCV 在Windows進行抓圖 2、利用OpenCV 進行連續數字的檢測。 3、使用C&#xff0c;Qt 3、將檢測的結果顯示出來 …

shell的模擬實現 ─── linux第16課

在shell的命令行中輸入命令,會有兩種執行命令的途徑 shell自己執行 shell創建子進程(fork ,exit ,waitpid,exec) ,子進程去執行 shell自己執行的命令是自建命令(bulit command) 子進程執行的是非自建命令 第一版只能維護命令行參數表創建子進程, 執行非內建命令 我們先創…

MySQL創建數據庫和表,插入四大名著中的人物

一、登錄數據庫并創建數據庫db_ck 二、創建表t_hero 表屬性包括&#xff08;id&#xff0c;name&#xff0c;nickname&#xff0c;age&#xff0c;gender&#xff0c;address&#xff0c;weapon&#xff0c;types&#xff09; mysql> create table t_hero(-> id int,-…

靜態網頁的爬蟲(以電影天堂為例)

一、電影天堂的網址&#xff08;url&#xff09; 電影天堂_免費電影_迅雷電影下載_電影天堂網最好的迅雷電影下載網&#xff0c;分享最新電影&#xff0c;高清電影、綜藝、動漫、電視劇等下載&#xff01;https://dydytt.net/index.htm 我們要爬取這個頁面上的內容 二、代碼…

【C++】:STL詳解 —— 紅黑樹封裝map和set

目錄 紅黑樹的源代碼 正向迭代器的代碼 反向迭代器的代碼 set的模擬實現 map的模擬實現 紅黑樹的源代碼 #pragma once #include <iostream>using namespace std; // set ->key // map ->key/value// set ->key // map ->key/valueenum Colour {RED,BLAC…

MATLAB控制函數測試要點剖析

一、功能準確性檢驗 基礎功能核驗 針對常用控制函數&#xff0c;像用于傳遞函數建模的 tf 、構建狀態空間模型的 ss &#xff0c;以及開展階躍響應分析的 step 等&#xff0c;必須確認其能精準執行基礎操作。以 tf 函數為例&#xff0c;在輸入分子與分母系數后&#xff0c;理…

MoonSharp 文檔一

目錄 1.Getting Started 步驟1&#xff1a;在 IDE 中引入 MoonSharp 步驟2&#xff1a;引入命名空間 步驟3&#xff1a;調用腳本 步驟4&#xff1a;運行代碼 2.Keeping a Script around 步驟1&#xff1a;復現前教程所有操作 步驟2&#xff1a;改為創建Script對象 步驟…

ROS云課三分鐘-差動移動機器人導航報告如何撰寫-及格邊緣瘋狂試探

提示詞&#xff1a;基于如上所有案例并結合roslaunch teb_local_planner_tutorials robot_diff_drive_in_stage.launch和上面所有對話內容&#xff0c;設計一個差速移動機器人仿真實驗&#xff0c;并完成報告的全文撰寫。 差速移動機器人導航仿真實驗報告 一、實驗目的 驗證 T…

ACE協議學習1

在多核系統或復雜SoC&#xff08;System on Chip&#xff09;中&#xff0c;不同處理器核心或IP&#xff08;Intellectual Property&#xff09;模塊之間需要保持數據的一致性。常用的是ACE協議or CHI。 先對ACE協議進行學習 ACE協議&#xff08;Advanced Microcontroller Bu…

ajax之生成一個ajax的demo示例

目錄 一. node.js和express ?二. 使用express創建后端服務 三. 創建前端 一. node.js和express ajax是前端在不刷新的情況下訪問后端的技術&#xff0c;所以首先需要配置一個后端服務&#xff0c;可以使用node.js和express。 首先生成一個空項目&#xff0c;新建main目錄…

Java 字節碼操縱框架 -ASM

Java 字節碼操縱框架 -ASM 1.ASM 概述: ASM 是用于 Java 字節碼操縱的框架,可動態生成新類或增強現有類的功能。它既能直接產生二進制 class 文件,也能在類被加載到虛擬機之前動態改變類行為,通過讀取類文件信息來分析、修改類行為,甚至生成新類。許多流行框架如 cglib、…

kafka + flink +mysql 案例

假設你有兩個Kafka主題&#xff1a;user_activities_topic 和 product_views_topic&#xff0c;并且你希望將user_activities_topic中的數據寫入到user_activities表&#xff0c;而將product_views_topic中的數據寫入到product_views表。 maven <dependencies><!-- …