(四)Unity開發Vision Pro——參考文檔

4.參考文檔

4.1 支持的功能和組件

4.1.1 支持的 Unity 功能和組件

大多數 Unity 組件無需修改即可在此平臺上運行 - 包括大多數自定義 MonoBehaviours、動畫邏輯、物理、輸入處理、資產管理、AI 等。然而,需要渲染的組件需要特殊的支持。因此,一些組件在此平臺上提供的功能集有所減少;其他目前不支持。下表總結了該平臺上各種渲染組件支持的當前狀態。

有關轉換舊項目的更多信息,另請參閱將 Unity 項目移植到 PolySpatial XR

4.1.2 Unity 仿真組件/系統

在此頁面中不可能列出 Unity 公開的所有系統和軟件包,但下表列出了對一系列 Unity 核心功能的支持狀態:

成分

地位

轉換

支持的

聲音的

不支持空間音頻

網狀過濾器

支持的

動畫/動畫師

支持的

二維物理

支持的

3D 物理

支持的

腳本

支持的

人工智能和導航網格

支持的

地形

實驗支持

MonoBehaviours預計可以工作,但它們將取決于具體情況,具體取決于您的腳本與哪些其他組件交互。

4.1.3 渲染組件/系統

成分

地位

網格渲染器

不支持“Lighting”(陰影、GI 不支持“Probes” 立即模式下不支持此組件 不支持“Additional Settings”(動態遮擋、渲染層)

蒙皮網格渲染器

僅未優化的動畫(如果模型導入檢查器的裝備選項卡上的優化游戲對象選項出現,則必須將其勾選。)

粒子系統

部分支持;看粒子系統以下

不支持

相機

不支持

光環

不支持

鏡頭光暈

不支持

線條渲染

不支持

投影儀

不支持

軌跡渲染器

不支持

視覺效果

不支持

鏡頭光暈

不支持

細節層次 (LoD)

不支持

遮擋區域

不支持

閉塞門戶

不支持

天空盒

不支持

URP 貼花投影儀

不支持

瓷磚地圖渲染器

不支持

視頻播放器

支持有限

圖形光線投射器

不支持

Shaderlab 著色器

不支持

后處理器

不支持

光照貼圖

需要手動支持

烘焙照明

不支持

開導

不支持

光探頭

需要手動支持

反射探頭

不支持

樹木

不支持

多霧路段

不支持

其中一些功能由于平臺限制而不受支持(例如,全屏圖形后處理器與共享渲染系統的想法不兼容),而其他功能則屬于正在進行或計劃開發的領域。

4.1.4 粒子系統

PolySpatial XR 中對粒子的支持是一項正在進行的工作。下表顯示了 Unity粒子系統當前支持的特定模塊和設置的支持狀態:

模塊

地位

排放

部分支持

形狀

部分支持

生命周期內的速度

部分支持

生命周期內的極限速度

部分支持

繼承速度

部分支持

整個生命周期內的力

部分支持

整個生命周期的顏色

部分支持

按速度著色

不支持

使用壽命期間的尺寸

部分支持

尺寸按速度

不支持

整個生命周期內的輪換

部分支持

按速度旋轉

不支持

外力

不支持

噪音

部分支持

碰撞

部分支持

觸發器

不支持

子發射器

部分支持

紋理片動畫

部分支持

不支持

步道

不支持

自定義數據

不支持

渲染器

部分支持

4.1.4 用戶界面(UI)

Unity UI在世界空間中工作,但屏幕空間 UI 和高級視覺功能(如遮罩、陰影等)當前無法工作。下表總結了其他 UI 功能的支持狀態:

成分

地位

文本網格

支持的

畫布渲染器

部分支持

精靈渲染器

支持的

文本網格專業版

? 部分支持
? 僅光柵
? 無自定義著色器

矩形變換

沒有對尺寸的具體支持

4.1.5 最后的想法

Unity 有更多組件,但本節涵蓋了普通 XR 應用程序的主要部分。一般來說,您現有的 Unity 項目可能需要移植到 PolySpatial XR。

您將需要通過編寫自己的 PolySpatial XR 兼容系統或找到這些限制的解決方法來實驗、研究和適應 PolySpatial XR 要求和約束,以支持您現有的功能。

4.2 PolySpatial資產支持

1.網格

RealityKit 提供了一組有限的預定義頂點格式。網格可以提供位置、法線、切線、顏色、混合權重和混合索引。Unity 將為 RealityKit 提供最多 8 個紋理坐標,但請注意,在其 MaterialX 實現中只有前兩個 UV 通道可用,從而限制了額外幾何數據的實用性。

由于Unity和RealityKit使用不同的坐標系,因此在系統之間傳遞時,一些頂點屬性會被修改。針對位置、法線和切線執行慣用手交換。所有 UV 通道的 UV 都會翻轉。

2.材質

有關 VisionOS 上材質和著色器支持的詳細信息,請參閱PolySpatial 材質支持。

Unity ShaderGraphs

請參閱Shader Graph 支持,了解有關如何將通過 Unity ShaderGraph 定義的自定義著色器轉換為 MaterialX 以與 RealityKit 互操作的詳細信息。

3.紋理

Unity 在 VisionOS 上提供對 2D 紋理的支持,并利用本機紋理壓縮選項。

VisionOS 的 RealityKit 不支持 3D 紋理或立方體貼圖,因此用戶必須根據 2D 紋理重新實現這些紋理資源。

4.渲染紋理

Unity 會將渲染目標實時復制到 RealityKit,但目前只能按速度進行有限數量的提交。引入額外的渲染目標可能會與 Unity 自己的圖形緩沖區提交相沖突,從而影響整體性能。

另請注意,修改 RenderTextures 后必須手動將其標記為臟;目前,不會自動發生此類臟污,并且如果紋理未臟污,則不會將其復制到 RealityKit。

5.字體

VisionOS 支持光柵化字體和 SDF 字體,但我們強烈建議使用 SDF 字體,以確保所有觀看距離下的清晰度。

4.3 材質

每個管道的幾個重要標準著色器已映射到最接近的可用 RealityKit 模擬。目前的支持包括:

  • 標準 URP 著色器:Lit、Simple Lit、Unlit(+TBD - 更多即將推出)
  • 標準內置著色器:標準,(+待定 - 更多即將推出)

4.3.1 自定義著色器

可以通過 Unity ShaderGraph 為 VisionOS 創作著色器和材質。在幕后,這些著色器圖被轉換為 MaterialX。雖然 MaterialX 非常具有表現力,但某些 ShaderGraph 節點在 MaterialX 中沒有類似物。在 ShaderGraph 編輯器中,不支持的節點將通過符號來指示#,但另請參閱ShaderGraph 支持。支持點亮和未點亮根節點。

ShaderLab、Metal 和其他基于代碼的著色器不可用,因為 VisionOS 的 RealityKit 目前不公開低級著色語言。

4.3.2 無光照材質

4.3.2.1 通用渲染管線/無光照

對于 URP 未光照材質,PolySpatial 支持Base Map顏色和紋理屬性以及 和OpaqueTransparent使用混合模式Alpha)曲面類型。?Alpha Clipping可能已啟用;如果Threshold大于零,則不會執行混合(僅進行 alpha 測試)。

4.3.2.2 無光照/彩色

對于內置渲染器管道未點亮的顏色材質,Main Color支持該屬性。

4.3.2.3 無光照/紋理

對于內置渲染器管線未點亮的紋理材質,Base (RGB)支持該紋理。

4.3.2.4 無光照/透明

對于內置渲染器管道未點亮的透明材質,Base (RGBA)支持紋理。

4.3.3 光照材質

4.3.3.1 通用渲染管線/光照

對于 URP 光照材質,顏色和紋理受到尊重,選項和屬性Base Map也是如此。Render FaceSurface Inputs?TilingOffset

Specular工作流程中并Specular Highlights啟用時,PolySpatial 支持Specular Map關聯顏色的紋理或(灰度)強度。在Metallic工作流程中,PolySpatial 支持Metallic Map紋理或強度并遵循Specular Highlights切換。

對于這兩個工作流程,Smoothness都會考慮強度,但Metallic Alpha不支持紋理通道(例如,來自 )的平滑度。?Normal Map支持 [^1],但不支持正常比例。同樣,Occlusion Map支持,但不支持遮擋強度。?可以指定Emission顏色或紋理;如果兩者都給定,則顏色會降低為灰度并充當乘數。

支持 和 (使用混合模式)曲面Opaque類型TransparentAlphaTransparent模式下,該Preserve Specular標志受到尊重。?Alpha Clipping可能已啟用;如果Threshold大于零,則不會執行混合(僅進行 alpha 測試)。

4.3.3.2 通用渲染管線/簡單光照

對于 URP 簡單光照材質,支持的選項與光照材質相同,只是沒有Metallic屬性且沒有Occlusion Map

4.3.3.3 通用渲染管線/復雜光照

對于 URP 復雜光照材質,支持的選項與光照材質相同,只是添加了選項Clear Coat及其Mask屬性Smoothness

4.3.3.4 標準材質

內置標準光照材質的支持方式與Metallic工作流程中 URP 光照材質的支持方式大致相同。紋理Albedo和顏色同樣受到尊重,Metallic貼圖或強度和Smoothness強度(但不包括平滑度Source)也是如此。?支持Normal Map[^1] 和(但不支持其相應的強度),顏色或紋理、和以及標志也是如此。支持所有渲染模式:、、和。OcclusionEmissionMain Maps?TilingOffsetSpecular HighlightsOpaqueTransparentFadeCutout

4.3.3.5 標準材質(鏡面設置)

內置光照鏡面材質的支持方式與Specular工作流程中 URP 光照材質的支持方式相同。紋理Albedo和顏色也受到類似的尊重,Specular地圖或(灰度)強度和Smoothness強度(但不是平滑度Source)也是如此。?支持Normal Map[^1] 和(但不支持其相應的強度),顏色或紋理、和以及標志也是如此。支持所有渲染模式:、、和。OcclusionEmissionMain Maps?TilingOffsetSpecular HighlightsOpaqueTransparentFadeCutout

[^1]:目前,非著色器圖形材質中使用的法線貼圖必須作為紋理Default類型(即,而不是類型Normal map)導入,并且sRGB (Color Texture)未選中該選項。

4.3.4 特殊用途材質

4.3.4.1 TextMeshPro/距離場

4.3.4.2 TextMeshPro/Mobile/距離場

TMP 距離場材質將轉換為僅遵循Face ColorFace Texture屬性的著色器圖形材質。

4.3.4.3 用戶界面/默認

UI 默認材質將轉換為尊重色調和紋理屬性的無光照材質。

4.3.4.4 通用渲染管線/粒子/無光照

URP 未光照粒子材質將轉換為尊重Base Map紋理和顏色的未光照材質以及Surface Type.

4.3.4.5 AR/基本遮擋

4.3.4.6 AR/遮擋

遮擋材質轉換為基本等效材質

4.3.5 著色器圖形材質

著色器圖可以使用內置或 URP 目標以及 Unlit 或 Lit 材質。支持所有輸出塊。有關著色器圖支持的更多信息,請參閱著色器圖轉換說明

4.4 ShaderGraph支持

您可以使用 Unity ShaderGraph 為visionOS 創建自定義材質。這些將在 Unity 中以其編譯形式進行預覽,但會轉換為 MaterialX 以在模擬器和設備上顯示。雖然 MaterialX 非常具有表現力,但某些 ShaderGraph 節點在 MaterialX 中沒有類似物。在 ShaderGraph 編輯器中,不支持的節點將通過#符號的存在來指示。

出于技術、安全和隱私原因,visionOS 不允許在使用 AR 直通時運行基于 Metal 的著色器或其他低級著色語言。

4.4.1 VisionOS 中的 Shader Graph 限制

下表顯示了VisionOS 的 PolySpatial 中Shader Graph 節點的當前支持狀態,包括支持的節點列表及其各種注意事項。

如果此處未出現節點,則表示當前不支持該節點。請注意,隨著我們繼續添加對更多節點的支持,此列表將會更新。

4.4.2 美術

部分

節點

筆記

調整

對比

顏色可能不一致。

色調

顏色可能不一致。

飽和

顏色可能不一致。

混合

混合

支持差值、減法、加深、減淡、線性減淡、疊加、濾色、覆蓋、求反、乘法

篩選

抖動

- 需要模擬屏幕空間位置。
- 由于 curvelookup 節點定義存在錯誤,目前無法工作。

普通的

正常混合

? 支持

從高度看正常

? 支持

正常重建 Z

? 支持

正常強度

? 支持

正常拆包

? 支持

公用事業

色彩空間轉換

不一致 - 未實現線性轉換。

4.4.3 通道

部分

節點

筆記

渠道

結合

? 支持

分裂

? 支持

調配

? 支持

4.4.4 輸入

Custom Interpolators僅限于此特定/名稱類型:

  • Color:矢量4
  • UV0:矢量2
  • UV1:矢量2
  • UserAttribute:矢量4

部分

節點

筆記

基本的

布爾值

? 支持

顏色

? 支持

持續的

? 支持

整數

? 支持

滑塊

? 支持

時間

? 支持

漂浮

? 支持

向量2

? 支持

矢量3

? 支持

矢量4

? 支持

幾何學

雙切向量

切線和視圖空間選項不是標準的。

法向量

切線和視圖空間選項不是標準的。

位置

切線和視圖空間選項不是標準的。

屏幕位置

? 支持

切向量

切線和視圖空間選項不是標準的。

紫外線

? 支持

頂點顏色

? 支持

頂點ID

? 支持

坡度

坡度

? 支持

樣本梯度

? 支持

燈光

主光方向

? 支持

矩陣

不起作用(由于常量矩陣節點定義中的錯誤)

不起作用(由于常量矩陣節點定義中的錯誤)

矩陣構建

? 支持

變換矩陣

切線和視圖空間選項不是標準的。

場景

相機

PositionDirection支持的輸出(非標準)。

目的

? 支持

場景深度

平臺不允許訪問深度緩沖區,這只是剪輯或視圖空間中的相機距離。

屏幕

? 支持

質地

2D 紋理示例

? 支持

示例紋理 2D LOD

? 支持

采樣器狀態

MirrorOnce不支持換行模式。

紋理 2D 資源

? 支持

紋理尺寸

? 支持

4.4.5 數學

部分

節點

筆記

先進的

絕對

? 支持

指數

? 支持

長度

? 支持

日志

? 支持

模塊

? 支持

否定

? 支持

標準化

? 支持

基本的

添加

? 支持

劃分

? 支持

? 支持

力量

? 支持

平方根

? 支持

減去

? 支持

插值法

逆向線性化

? 支持

萊普

? 支持

平滑步

? 支持

矩陣

矩陣行列式

如果使用 Matrix2,將標記為不受支持。

矩陣轉置

如果使用 Matrix2,將標記為不受支持。

范圍

夾鉗

? 支持

分數

? 支持

最大限度

? 支持

最低限度

? 支持

一減

? 支持

隨機范圍

? 支持

重新映射

? 支持

飽和

? 支持

圓形的

天花板

? 支持

地面

? 支持

圓形的

? 支持

符號

? 支持

? 支持

三角學

反余弦

? 支持

反正弦

? 支持

反正切

? 支持

反正切2

? 支持

余弦

? 支持

他的

? 支持

切線

? 支持

向量

叉積

? 支持

距離

? 支持

點積

? 支持

菲涅耳效應

? 支持

反射

? 支持

繞軸旋轉

? 支持

轉換

有些空間是模擬的,未在測試中涵蓋。

海浪

三角波

? 支持

4.4.6 程序

部分

節點

筆記

噪音

梯度噪聲

- 無法確定目標平臺噪聲函數的行為是否相同。
- 頻率當前關閉(比例映射到幅度而不是頻率)。

沃羅諾伊

- 無法確定目標平臺噪聲函數的行為是否相同。

形狀

橢圓

? 支持

4.4.7 Utility

部分

節點

筆記

Utility

預覽

? 支持

分體式左輪

特定于 PolySpatial 的非標準著色器圖形節點。實現 splitlr 函數,如中所述材質X規格.

邏輯

分支

? 支持

比較

? 支持

或者

? 支持

4.4.8 UV

部分

節點

筆記

紫外線

翻頁書

? 支持

旋轉

僅支持度數。

平鋪和偏移

? 支持

三平面

? 支持

4.5 輸入

在 VisionOS 上有兩種捕獲用戶意圖的方法:3D 觸摸和骨骼手跟蹤。在獨占模式下,開發人員還可以訪問頭部跟蹤數據。

4.5.1 3D Touch 和 TouchSpace

在有界和無界體積中,當用戶使用輸入碰撞器查看對象并執行“捏”(拇指和食指一起觸摸以“點擊”或“拖動”)手勢時,就會提供3D觸摸輸入。PolySpatialTouchSpace輸入設備向開發人員提供該信息。如果用戶按住捏合手勢,則會啟動拖動,并向應用程序提供相對于原始起點的“移動”更新。如果對象在觸手可及的范圍內(無需特定注視),用戶還可以直接在對象上執行捏合手勢。

3D觸摸事件通過PolySpatialTouchSpace 輸入設備公開,該設備構建在封裝之上com.unity.inputsystem,也稱為新輸入系統。綁定到觸摸屏設備的現有操作應該適用于 2D 輸入。對于 3D 輸入,用戶可以將操作綁定到特定的PolySpatialTouchSpace設備以獲得 3D 位置向量。

任何可以接收 3D 觸摸事件的對象都需要將碰撞遮罩設置為 PolySpatial 輸入層的碰撞器。僅報告對這些事件的接觸。目前,平臺不會在點擊手勢開始時提供凝視光線。

4.5.2 骨骼手追蹤

骨骼手部跟蹤由XR Hands 中的手部子系統提供。使用場景中的手部可視化器組件,用戶可以顯示玩家手部的蒙皮網格或每關節幾何體,以及基于手部物理交互的物理對象。用戶可以直接針對手子系統編寫 C# 腳本來推斷骨骼之間的距離和關節角度。Hand Visualizer組件的代碼可在XR Hands Package中找到,并且可以作為利用Hand Subsystem 代碼的良好起點。

4.5.3 頭部追蹤

ARKit 通過VisionOS Package提供頭部跟蹤。這可以使用移動 AR 的創建菜單在場景中進行設置:創建 > XR > XR Origin (Mobile AR)。位姿數據來自devicePosition [HandheldARInputDevice]deviceRotation [HandheldARInputDevice]的新輸入系統。

4.6 自定義 PolySpatial 組件

4.6.1 體積相機

PolySpatial 提供了一個名為 的新 Unity 組件,用于Volume Camera與visionOS 環境提供的模式和體積進行交互。體積相機與常規 Unity 相機類似,因為它們指示用戶應該看到哪些內容,但不同之處在于它們捕獲 3D 內容而不是 2D 圖像。

將 VolumeCamera 組件添加到場景中的對象,以指定向用戶呈現的內容以及內容的呈現方式。保存 VolumeCamera 的 GameObject 的變換(例如比例)會影響向用戶顯示的體積大小。VolumeCamera 的編輯器內預覽范圍可以幫助可視化應渲染的內容。

通常,然后通過相應的“體積渲染器”將該規范體積映射到主機體積渲染器自己的不同OBB,將該內容顯示在主機平臺上。效果是體積相機邊界內的 3D 內容被變換、旋轉、拉伸和/或擠壓以填充體積渲染器的邊界。

Mode設置為 時Unbounded,一切都與典型的 Unity 相機類似,只是體積相機和體積渲染器各自定義了無界 3 空間而不是有界

VolumeCamera組件公開以下屬性

財產

描述

模式

指定音量的模式。

????有界

體積相機具有由其尺寸定義的有限邊界。任意數量的體積相機都可以處于“有界”模式。

????無界

體積相機捕獲所有內容,無論位置如何,并且尺寸字段被禁用和忽略。對于給定應用程序,在給定時間只能有一臺卷相機處于無界模式。將體積相機的模式設置為無界相當于請求您的應用程序切換到“獨占”模式。

方面

定義相機邊界框的(未縮放)大小,該邊界框以 VolumeCamera變換的位置為中心。世界空間維度是通過維度和變換比例的元素相乘來計算的。

剔除掩碼

定義 Unity 圖層的位掩碼。體積相機只會顯示屬于指定圖層的對象。對于典型的 Unity 相機和 CullingMask 工作流程,這可用于指定每個單獨的體積相機可見的對象。例如,庫存體積相機可用于通過定義“庫存”圖層來渲染一個體積內的 3D 庫存,而“小地圖”圖層可用于渲染第二體積內整個場景的鳥瞰圖。

4.6.2 PolySpatial視頻組件

為了支持 VisionOS 上的視頻內容,PolySpatial 目前包含一個自定義的PolySpatialVideoComponent.?我們預計最終會支持股票視visionOS提供關鍵視頻功能。要使用它,請將 設置Target Material Renderer為頻組件,但該組件在此期間為GameObjectMeshRenderer顯示視頻的資源,并設置Clip為指向要播放的視頻資源,例如.mp4

當前系統的一個限制是,必須手動將剪輯復制到../StreamingAssets/PolySpatialVideoClips/文件夾中才能在 VisionOS 上實現完整功能。如果該文件夾不存在,則創建該文件夾。確保剪輯不僅移入此文件夾,而且復制到其中,以便有它的兩個實例。

PolySpatialVideoComponent組件公開以下屬性:

財產

描述

目標材質渲染器

引用應在其上渲染視頻的 MeshRenderer。視頻將覆蓋該 MeshRenderer 上的當前材質。

夾子

要播放的視頻資源。

正在循環

當播放到達剪輯末尾時視頻是否應重復。

醒著玩

視頻是否應在Awake()調用時開始播放。

沉默的

當 true 時,音頻播放被抑制;如果為 false,則遵循體積值。

體積

剪輯的當前音頻播放音量,范圍在 0 到 1 之間。

4.6.3 PolySpatial懸停效果

向平臺提供提示,以在用戶將鼠標懸停在此對象上時應用系統懸停效果。這通常用于向用戶提供該對象是交互式的視覺提示。這種效果可以通過凝視或用手戳來觸發。該效果應用于正在懸停的對象,而不是正在懸停的對象。

出于隱私原因,visionOS 不允許應用程序直接訪問用戶的視線。然而,在視覺上突出顯示用戶正在注視的對象通常是有幫助的,以便暗示如果用戶執行捏合手勢,哪個對象將接收輸入。為此,Unity PolySpatialPolySpatialHoverEffect為visionOS 提供了一個組件,可以將其添加到可能通過注視接收輸入的游戲對象中。該組件的存在指示主機平臺 (RealityKit) 在用戶的凝視光線與其相應的碰撞體相交時向GameObject'應用著色效果。MeshRenderer

必須存在所有三個組件才能實現效果: 指示PolySpatialHoverEffectGameObject顯示懸停,Collider組件定義凝視光線投射的碰撞形狀,提供MeshRenderer將應用著色效果的網格和幾何體。

4.7 PolySpatial Tooling

4.7.1 日志

PolySpatial 日志記錄消息按類別和級別進行標記,以便于更有針對性的調試。從 Unity 編輯器的主菜單中,選擇窗口”>“PolySpatial”>“日志記錄”以打開“PolySpatial 日志記錄”窗口。從這里,您可以切換啟用哪些類別,是否應生成堆棧跟蹤,以及對于啟用堆棧跟蹤的類別,哪些級別將生成跟蹤。

4.7.2 多空間統計

首先,通過啟用項目設置 > PolySpatial > 啟用統計來啟用 PolySpatial 統計跟蹤。然后可以在 Unity Editor 主菜單中的Window > PolySpatial > PolySpatial Statistics下找到該編輯器。在播放模式下,此編輯器顯示時間的直方圖跟蹤、跟蹤的對象以及已復制到 PolySpatial 主機的資源。

4.7.3 調試鏈接

為了便于在播放模式下進行調試,PolySpatial 運行時添加了DebugPolySpatialGameObjectLinks組件,以將每個模擬游戲對象連接到Unity SceneGraph 中其相應的支持游戲對象。

4.7.4 資產查找器

在播放模式下,AssetFinder 會跟蹤已復制到主機渲染器的所有資源。這對于追蹤資產鏈接非常有用。該編輯器可以在 Unity Editor 主菜單中的PolySpatial > Asset Finder下找到。

4.7.5 錄音與回放

要錄制 PolySpatial 播放模式會話,請轉至Windows > PolySpatial > 錄制和播放。按Record進入播放模式并開始錄音。正常進行交互并提供輸入,然后退出播放模式以停止錄制。新文件將添加到列表中;您可以通過選擇該錄音然后按Play按鈕來重播該錄音。新輸入不會被處理,但原始錄音中編碼的輸入將重播。

錄音保存在Library/PolySpatialRecordings任何使用相同版本 PolySpatial 軟件包的機器上,并且可以在任何機器上播放。除此之外,這些文件可以提交給 Unity 支持,使我們能夠調試許多特定于項目的問題,而無需項目的完整 zip 文件。

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

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

相關文章

qt5.15.2 使用mysql8.1

報錯&#xff1a; QMYSQL driver not loaded 報錯&#xff1a;無 QMYSQL 使用 QStringList drivers QSqlDatabase::drivers(); //獲取現在可用的數據庫驅動 foreach(QString driver, drivers) qDebug() << driver; “QSQLITE” “QMARIADB” “QMYSQL” “QMYSQL3” “…

Linux常用命令——dmidecode命令

在線Linux命令查詢工具 dmidecode 在Linux系統下獲取有關硬件方面的信息 補充說明 dmidecode命令可以讓你在Linux系統下獲取有關硬件方面的信息。dmidecode的作用是將DMI數據庫中的信息解碼&#xff0c;以可讀的文本方式顯示。由于DMI信息可以人為修改&#xff0c;因此里面…

網絡編程的使用

文章目錄 基礎代碼URL類進行傳輸編碼解碼 協議TCPUDPhttp PORT端口協議的實現TCPUDP 模擬服務器 基礎代碼 最后一個是&#xff1a;只要再timeout時間內連接上就是true URL類 導了一個common-iojar包&#xff0c;那個IOUtils就是那個里面的工具類 進行傳輸編碼解碼 協議 TC…

多線程:線程池

線程池 提前創建多個線程放入線程池中&#xff0c;使用時直接獲取&#xff0c;使用完直接放入池中&#xff1b;可以避免頻繁創建銷毀&#xff0c;實現重復利用&#xff0c;類似生活中的公共交通工具。好處&#xff1a;提高相應速度&#xff1b;降低資源消耗&#xff1b;便于線…

【Spring Cloud +Vue+UniApp】智慧建筑工地平臺源碼

智慧工地源碼 、智慧工地云平臺源碼、 智慧建筑源碼支持私有化部署&#xff0c;提供SaaS硬件設備運維全套服務。 前言&#xff1a;互聯網建筑工地&#xff0c;是將互聯網的理念和技術引入建筑工地&#xff0c;從施工現場源頭抓起&#xff0c;最大程度的收集人員、安全、環境、材…

微信小程序調用map數據 并在wxml中對數組進行截取的操作

wxs文件的位置如圖 實現數組截取 只保留五張圖片 <wxs module"filter" src"./slicefunc.wxs"></wxs> <view class"wrap"><view class"search-box" bindtap"toSearch"><view class"v1"…

【幾個python虛擬環境會遇到的問題】

幾個python虛擬環境會遇到的問題 twine is not recognized as an internal or external command,operable program or batch file.setup命令不報錯但不起作用pipreqs is not recognized as an internal or external command,operable program or batch file. ‘twine’ is not …

快遞管理系統springboot 寄件物流倉庫java jsp源代碼mysql

本項目為前幾天收費幫學妹做的一個項目&#xff0c;Java EE JSP項目&#xff0c;在工作環境中基本使用不到&#xff0c;但是很多學校把這個當作編程入門的項目來做&#xff0c;故分享出本項目供初學者參考。 一、項目描述 快遞管理系統springboot 系統有1權限&#xff1a;管…

11. Docker Swarm(二)

1、前言 上一篇中我們利用Docker Swarm搭建了基礎的集群環境。那么今天我們就來驗證以下該集群的可用性。上一篇的示例中&#xff0c;我創建了3個實例副本&#xff0c;并且通過訪問http://192.168.74.132:8080得到我們的頁面。 2、驗證高可用 1&#xff09;我們可以通過以下命…

13個頂級AI代碼助手排行榜【2023最新】

AI代碼助手&#xff08;AI Coding Assistant&#xff09;是一種利用人工智能幫助開發人員更快、更準確地編寫代碼的軟件工具。 它可以通過根據提示生成代碼或在你實時編寫代碼時建議自動完成代碼來實現此目的。 以下是AI代碼助手可以做的一些事情&#xff1a; 與你使用的流行代…

YOLOv5可視化界面

Pyside6可視化界面 安裝Pyside6 激活之前的虛擬環境yolov5 在該環境的終端輸入以下命令 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyside6輸入where python找到當前使用的Python的路徑 找到該路徑下的designer.exe文件&#xff08;/Lib/site-packages/PySi…

布置Zabbix監控

一、在 Web 頁面中添加 agent 主機 1.1打開Zabbix的Web頁面 2.2在 Web 頁面中添加 agent 主機 二、在 Web 頁面創建自定義監控項模板 2.1創建模版

《Java面向對象程序設計》學習筆記——第 8 章 設計模式

?專欄&#xff1a;《Java面向對象程序設計》學習筆記 第 8 章 設計模式 一個好的設計系統往往是易維護、易擴展、易復用的。 8.1 設計模式簡介 8.1.1 什么是設計模式 一個設計模式 (pattern) 是針對某一類問題的最佳解決方案&#xff0c;而且己經被成功應用于許多系統的設…

[QT/C++]如何得知鼠標事件是由觸摸事件轉換而來的,使得鼠標觸摸事件分離

依據來源&#xff1a;https://doc.qt.io/qt-5/qml-qtquick-mouseevent.html 具體是在event事件或者mouse系列事件中捕獲到鼠標事件后&#xff0c;用如下代碼判斷鼠標事件是否由觸摸事件轉換而來的 if(mouseEvent->source()Qt::MouseEventSynthesizedBySystem){qDebug()<&…

Chrome

Chrome 簡介下載 簡介 Chrome 是由 Google 開發的一款流行的網絡瀏覽器。它以其快速的性能、強大的功能和用戶友好的界面而聞名&#xff0c;并且在全球范圍內被廣泛使用。Chrome 支持多種操作系統&#xff0c;包括 Windows、macOS、Linux 和移動平臺。 Chrome官網: https://ww…

css3新增選擇器總結

目錄 一、屬性選擇器 二、結構偽類選擇器 三、偽元素選擇器 四、UI狀態偽類選擇器 五、反選偽類選擇器 六、target選擇器 七、父親選擇器、后代選擇器 八、相鄰兄弟選擇器、兄弟們選擇器 一、屬性選擇器 &#xff08;除IE6外的大部分瀏覽器支持&#xff09; E&#…

嵌入式面試筆試刷題(day10)

文章目錄 前言一、數組和鏈表的區別二、什么是內存對齊三、IIC的時序四、static作用五、查看tty設備的方法六、查找指定文件命令七、三次握手和四次揮手1.三次握手2.四次揮手 八、半關閉狀態九、字節流和數據報總結 前言 本篇文章繼續講解筆試和面試。 一、數組和鏈表的區別 …

PHP 使用ThinkPHP實現電子郵件發送示例

文章目錄 首先我們需要設置我們的郵箱客戶端授權&#xff0c;獲取到授權碼找到我們的郵箱設置去賬號中找到這一堆服務&#xff0c;找到后開啟smtp服務開啟服務后管理服務 接下來需要去下載相應的第三方類庫(我這里使用的是PHPMailer)在thinkPHP中封裝一下郵件服務類實際調用效果…

Ajax_4(進階)同步異步+ 宏任務微任務 + Promise鏈 + async終極解決方案 +事件循環原理 + 綜合案例

Ajax(進階) 文章目錄 Ajax(進階)01-同步代碼和異步代碼什么是同步代碼&#xff1f;什么是異步代碼&#xff1f;代碼閱讀 02-回調函數地域概念缺點代碼示例 03-Promise鏈式調用概念細節好處代碼示例 04-Promise鏈式應用代碼示例 05-async函數和await概念代碼示例 06-async和awai…

Mysql 建索引規范

索引規范 今天在建線上表的時候&#xff0c;做了一個varchar的索引&#xff0c;運維說varchar的索引會占用很大的內存。 于是 上網搜了一下建索引規范 一、建表規約 【強制】&#xff08;1&#xff09; 存儲引擎必須使用InnoDB 解讀&#xff1a;InnoDB支持事物、行級鎖、并發…