女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Vision Pro開發(fā)實踐(結合24黑馬idea)

京東云 ? 來源:jf_75140285 ? 作者:jf_75140285 ? 2024-09-04 17:56 ? 次閱讀

這是我參與創(chuàng)作者計劃的第1篇文章

開篇

之前寫過一篇文章,主要介紹visionPro基本信息、操作和基礎適配的文章: http://sd.jd.com/article/30242?shareId=152384&isHideShareButton=1

恰逢2024黑客馬拉松舉行,我結合本次參賽的一個idea,介紹一下visionOS的開發(fā)實踐,希望能為大家在進行“空間計算”開發(fā)的過程當中提供幫助。

idea內容

這次結合的idea是我參加黑馬比賽時想到的,主要內容是:在商品評價時增加商品的3D模型,用戶可以在虛擬現(xiàn)實環(huán)境中查看商品的3D模型,并對模型的特定位置進行評論。例如,用戶可以點擊運動鞋鞋底部分,留下關于材質和舒適度的評論。直接在商品3D模型的對應位置添加詳細評論具像化評價內容,更為直觀。

結合這個idea我實踐開發(fā)了簡單的展示Demo,開發(fā)過程和用到的知識點比較適合作為visionOS開發(fā)入門的教程,所以在本篇文章里向大家作簡單的介紹。

實踐開發(fā)

場景

結合idea,我們要做的工作,首先是采用mixed的展示形式,這樣更符合“商品評價”的應用場景。如果對.mixed, .progressive,.full三種展示形式還不了解的同學,可以看我前一篇文章的介紹。

@main
struct MyImmersiveApp: App {
    @State private var currentStyle: ImmersionStyle = .mixed


    var body: some Scene {
        WindowGroup() {
            ContentView()
        }


        // Display a fully immersive space.
        ImmersiveSpace(id: "USDZ Test") {
        }.immersionStyle(selection: $currentStyle)
    }
}

后續(xù)的開發(fā)主要集中在ContentView中。

添加3D模型

Xcode原生支持的3D模型文件類型是.usdz,支持編程的模型文件類型是.reality,右鍵點擊工程,可以直接向工程里添加模型文件。

wKgZombX08SAVJnJAAKIjvbhxvw902.png

添加后的模型可以預覽

wKgaombX08WAUysUAANlBjuLik0143.png

visionOS開發(fā)中主要有兩種方式向view中添加3D模型:Model3D和RealityView+ModelEntity

Model3D

Model3D(named: "sneaker", bundle: realityKitContentBundle)
    .scaleEffect(0.1)
    .frame(depth: 120)
    .frame(width: 200, height: 200)
    .background(Color.gray.opacity(0.3))
    .cornerRadius(12)

這種方式主要用于簡單的加載和展示3D模型,如果僅用于展示,可以采用這種方式。

RealityView+ModelEntity

RealityView { content in
    if let sneaker = try? await ModelEntity(named: "sneaker") {
        content.add(sneaker)
    } Task {
        // Asynchronously perform any additional work to configure
        // the content after the system renders the view.
    }
}
.frame(width: 600, height: 600)
.scaleEffect(1)
.edgesIgnoringSafeArea(.all)
.background(Color.white.opacity(0.1))

利用ModelEntity加載模型,添加到RealityView的content中展示,這樣可以對模型做各種操作,比如添加子模型,修改光照,材質等要素。舉個例子來講,我需要在運動鞋模型“sneaker”上面添加一個可以與用戶交互的白色圓點模型,用于在用戶點擊的時候添加/展示對應部分的評價。

// 創(chuàng)建白色圓點
let sphere = MeshResource.generateSphere(radius: 0.8)
// 材質
let material = SimpleMaterial(color: .white, isMetallic: false)
let sphereEntity = ModelEntity(mesh: sphere, materials: [material])
                                    
// Add tap gesture to the model
sphereEntity.generateCollisionShapes(recursive: true)
// 將圓點放置在運動鞋模型的底部
sphereEntity.position = [-10, -0.8, 3] //
// 將圓點添加到模型
sneaker.addChild(sphereEntity)

效果:

wKgZombX08aAK5zQAAzjrbSwaXk905.png

用戶交互

模型旋轉可以通過gesture實現(xiàn),使用戶可以360度的觀察商品,并在不同的位置添加評論:

@State private var sneaker: ModelEntity?

.gesture(
    DragGesture()
    .onChanged { value in
        // 計算旋轉角度
        let rotationDelta = Float(value.translation.width / 100.0) // 調整比例因子以控制旋轉速度
        print("drag!(rotationDelta)")
        if let modelEntity = sneaker {
            modelEntity.transform.rotation = simd_quatf(angle: currentRotation + rotationDelta, axis: [0, 1, 0])
        }
    }
    .onEnded { value in
        // 更新當前旋轉角度
        currentRotation += Float(value.translation.width / 100.0)
    }
)

效果:

wKgaombX08uAAFyBACfp00Kb_NQ769.gif

然后為該模型添加點擊效果,點擊時展示用戶針對商品該部分的詳細評論:

.onTapGesture {
    showTextOverlay.toggle()
}

效果:

wKgZombX09SANS-OAFjEtoKamio740.gif

更多擴展

如果有一定的3D模型編程經驗,就可以直接把用戶交互做在模型上,比如展示商品材質,使用動畫等等,我借用蘋果官方提供的示例模型進行演示:

wKgaombX09eAK7D6AAjvx7xGJRw272.gif

同時,可以為該商品添加空間視頻評價,利用visionPro拍攝的空間視頻,可以直接通過AVKit加載,上傳和播放,使用戶可以通過空間視頻第一視角真切地看到商品的真實情況,增強用戶信心:

import AVKit

public func makeVideoEntity() -> Entity {
    let entity = Entity()
    // 加載視頻
    let asset = AVURLAsset(url: Bundle.main.url(forResource: "evaluate", withExtension: "MOV")!)
    let paltItem = AVPlayerItem(asset: asset)
    // 創(chuàng)建播放器
    let player = AVPlayer()
    entity.components[VideoPlayerComponent.self] = .init(avPlayer: player)
    // 操作視頻文件
    entity.scale *= 0.4
    player.replaceCurrentItem(with: paltItem)
    //播放
    player.play()
        
    return entity
}

其他idea

本次參加黑馬大賽,我還有兩個更進一步的idea:

3D模型動畫展示

?用戶可以直接對商品3D模型進行操作,掌握使用方法,了解相關特性

?功能描述:通過3D模型動畫,用戶可以直觀地了解產品的特性和使用方法。例如,用戶可以看到升降桌的升降詳細過程,或者一款咖啡機的操作步驟。

?實現(xiàn)方式:在3D模型中嵌入動畫腳本,用戶可以通過點擊或語音指令觸發(fā)動畫播放。動畫將展示產品的各個細節(jié)和使用場景,幫助用戶更好地理解產品。

比如,可以直接通過3D模型演示宇航服的開啟和穿戴方法,用戶可以360度的學習:

wKgaombX09uAJMpTACDRRBpsLNI610.gif

虛擬商品銷售

?在京東app直接購買虛擬類型商品,并能夠直接在京東vision的虛擬空間中使用

?功能描述:針對非實體類虛擬商品,拓展新的銷售模式和渠道,購買的商品可以在虛擬現(xiàn)實設備中展示和使用。例如花卉商品的3D模型、畫作等。

?實現(xiàn)方式:通過NFT等認證技術授予購買者產權認證,在京東vision中創(chuàng)建虛擬空間,用戶可以查看、擺放和使用虛擬商品。

形象一下:藝術家可以直接在京東上架自己的虛擬藝術品,用戶購買后可以在京東Vision的虛擬空間里直接陳列展示。我可以擁有全虛擬世界唯一的一副《蒙娜麗莎》,并把它掛在我家的墻上!

這種營銷模式在國外的某些平臺上已經有所嘗試,我們可以搶占商機,拓寬出這樣一條新的賽道。

?審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 開發(fā)
    +關注

    關注

    0

    文章

    373

    瀏覽量

    41352
  • VisionPro
    +關注

    關注

    6

    文章

    20

    瀏覽量

    15745
  • idea
    +關注

    關注

    1

    文章

    70

    瀏覽量

    4536
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    好了,我們來好好聊聊Vision Pro這東西吧!

    好了,我們來好好聊聊Vision Pro這東西吧! 01 Vision Pro是個啥 這東西就是這次蘋果推出的Apple Vision
    發(fā)表于 06-07 10:14

    蘋果MR Vision Pro將會帶動哪些零部件出貨?

    蘋果身上。 簡單來說,Vision Pro本質上其實還是VR設備,不過所有操作界面可以結合頭顯攝像頭捕捉的外界環(huán)境,在頭顯內部顯示出來,即一款數(shù)字內容無縫融入真實世界的VR顯示設備。同時Vi
    發(fā)表于 06-08 10:19

    LabVIEW調用康耐視Vision Pro dll

    LabVIEW調用康耐視Vision Pro dll,直接調用CogToolBlock
    發(fā)表于 09-08 15:07

    儀器設備研制與開發(fā)-科研與實踐教學結合,自主開發(fā)實踐教學設

    摘 要:我們將科研與實踐教學相結合,有意識地將科研成果轉移到學生的實踐教學中去,自主開發(fā)了3套學生實踐教學使用的設備和系統(tǒng),對學生素質培養(yǎng)起
    發(fā)表于 02-14 16:11 ?0次下載

    IntelliJ Idea開發(fā)環(huán)境安裝教程

    我們后面會在IntelliJ Idea開發(fā),因此先安裝開發(fā)環(huán)境。
    的頭像 發(fā)表于 10-17 10:53 ?1571次閱讀

    TinyAnimal:Grove Vision AI上的動物識別實踐

    電子發(fā)燒友網(wǎng)站提供《TinyAnimal:Grove Vision AI上的動物識別實踐.zip》資料免費下載
    發(fā)表于 06-13 16:20 ?0次下載
    TinyAnimal:Grove <b class='flag-5'>Vision</b> AI上的動物識別<b class='flag-5'>實踐</b>

    蘋果公司或下調MR頭顯Vision Pro的產量

    蘋果公司或下調MR頭顯Vision Pro的產量 蘋果的MR頭顯Vision Pro一經推出就吸引了一大批的眼球,盡管價錢高到離譜,依然被寄予厚望。 在2023年6月6日的蘋果WWDC
    發(fā)表于 07-04 11:58 ?5648次閱讀

    蘋果apple Vision Pro 設計亮點,震撼!

    近期,蘋果重磅發(fā)布Apple Vision Pro,標志著用戶界面UI設計方式的革新。蘋果Apple Vision Pro 是一種VR 和 AR 混合現(xiàn)實
    的頭像 發(fā)表于 07-04 19:56 ?3303次閱讀
    蘋果apple <b class='flag-5'>Vision</b> <b class='flag-5'>Pro</b> 設計亮點,震撼!

    Intellij IDEA 開發(fā)工具實例

    本篇博客我們將會以Intellij IDEA 開發(fā)工具為例,所以我這里簡單談談我們所使用的開發(fā)工具。 目前大家做Java開發(fā)的,無外乎就兩種,eclipse或者Intellij
    的頭像 發(fā)表于 09-25 16:21 ?1110次閱讀
    Intellij <b class='flag-5'>IDEA</b> <b class='flag-5'>開發(fā)</b>工具實例

    曝蘋果砍掉了低配版Vision Pro:銷量不被看好

    分析師郭明錤據(jù)蘋果已經取消了他開發(fā)低配版vision pro 2024年vision pro的出貨量為40萬到60萬輛之間,不會有大幅增長。
    的頭像 發(fā)表于 09-28 14:41 ?1177次閱讀

    蘋果Vision Pro這塊屏,有故事

    體驗過 Vision Pro 的媒體們都對這兩塊屏幕的顯示效果表示了肯定。屏幕顯示效果可以說是 XR 都帶設備的靈魂,而 Vision Pro 的屏幕做到了看不到像素點,幾乎就是肉眼看
    的頭像 發(fā)表于 10-22 10:11 ?3011次閱讀
    蘋果<b class='flag-5'>Vision</b> <b class='flag-5'>Pro</b>這塊屏,有故事

    蘋果Vision Pro夏季將在法國推出?

    據(jù)悉,自去年12月份以來,蘋果已經針對美國零售員工啟動Vision Pro相關培訓,并在今年1月中旬開展,此時距離Vision Pro正式開售僅有兩周左右。
    的頭像 發(fā)表于 03-30 11:13 ?1776次閱讀

    Vision Board 創(chuàng)客營】Vision Board上的DAC實踐

    1、概述 感謝官方舉辦【Vision Board 創(chuàng)客營】活動,使得我有機會試用Vision Board開發(fā)板,體驗嵌入式AI的快樂。在此,再次感謝官方以及導師們的熱情幫助。在本次活動中,本人
    的頭像 發(fā)表于 04-24 21:55 ?938次閱讀
    【<b class='flag-5'>Vision</b> Board 創(chuàng)客營】<b class='flag-5'>Vision</b> Board上的DAC<b class='flag-5'>實踐</b>

    蘋果擱置Vision Pro 2開發(fā),轉向更親民頭顯

    在全球科技行業(yè)持續(xù)發(fā)展的背景下,蘋果公司的一則最新消息引起了廣泛關注。由于第一代Vision Pro頭顯設備上市后銷售情況并不理想,蘋果決定暫時擱置第二代Vision Pro
    的頭像 發(fā)表于 06-20 10:52 ?878次閱讀

    蘋果低價版Vision Pro量產延至2027年后

    知名分析師郭明錤近日發(fā)表觀點,指出低價版Vision Pro的量產時間已被遞延至2027年之后,這一決定已醞釀多時。 據(jù)悉,Vision Pro是蘋果公司推出的一款頭戴顯示設備,因其出
    的頭像 發(fā)表于 11-05 10:40 ?556次閱讀