visionOS空间计算实战开发教程Day 2 使用RealityKit显示3D素材

这篇具有很好参考价值的文章主要介绍了visionOS空间计算实战开发教程Day 2 使用RealityKit显示3D素材。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们在​​Day1​​中学习了如何创建一个visionOS应用,但在第一个Demo应用中我们的界面内容还是2D的,看起来和其它应用并没有什么区别。接下来我们先学习如何展示3D素材,苹果为方便开发人员,推出了RealityKit,接下来看如何使用。

首先我们需要一个3D素材,Apple在​​Quick Look​​​页面提供了一些素材,读者也可以到​​Sketchfab​​​等网站获取其它的免费或付费素材,推荐的格式是usdz,这是Pixar研发开源的一种文件格式,目前根据​​AOUSD​​官网其主要成员有苹果、英伟达、AutoDesk、Adobe和Unity等业界大佬。并且主流的设备软件基本都内置或由社区提供了对usdz的格式转换工具。

import SwiftUI
import RealityKit

struct ContentView: View {
    private let url = URL(string: "https://developer.apple.com/augmented-reality/quick-look/models/teapot/teapot.usdz")!
    
    var body: some View {
        VStack {
            Text("Show teapot")
            Model3D(url: url) { model in
                model
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .frame(width: 200, height: 200)
            } placeholder: {
                ProgressView()
            }
        }
        .padding()
    }
}

可以看到Model3D和SwiftUI中其它视图的使用差别并不大,因为我们要从网络上拉取资源,所以使用​​ProgressView​​来提示用户资源处于加载中的状态。

visionOS空间计算实战开发教程Day 2 使用RealityKit显示3D素材,空间计算visionOS增强现实开发,空间计算,swiftui,ios,apple vision pro,swift

其它相关内容请见​​虚拟现实(VR)/增强现实(AR)&visionOS开发学习笔记​​文章来源地址https://www.toymoban.com/news/detail-753446.html

到了这里,关于visionOS空间计算实战开发教程Day 2 使用RealityKit显示3D素材的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Wpf 使用 Prism 实战开发Day19

    由于待办事项功能页,数据已正常渲染出来了。但页面新增,查询,修改,删除等功能还未实现。本章节来实现页面的请求后台实现CURD(增删改查) 根据渲染出来的待办事项,点击对应的待办事项时,查找出该条数据,显展示在编辑窗口中。 同时在搜索框中输入的参数或选

    2024年04月23日
    浏览(37)
  • Wpf 使用 Prism 实战开发Day10

    1-9章节已经把基本功能都做好了,但页面的数据是后台模拟生成的静态数据。接下来所有章节就是实现,页面的所有数据都是从数据库中获取,并且实现页面数据的持久化以及增删改查。 使用Sqlite 做为数据库  1.打开 MyToDo.Api项目,右键=》选择 管理NuGet 程序包 ,进行下载安

    2024年01月25日
    浏览(43)
  • Wpf 使用 Prism 实战开发Day13

    在上一节  ToDoController 控制器,或 IToDoService 服务接口中,方法的传参都是直接传的实体类。但在实际开发过程中,这样是不允许的。标准且规范的做法是,定义一个数据传输层,即Dto层。 1. 创建 BaseDto 基类,用于存放共用属性。 2. 创建待办事项 Dto类,并继承自 BaseDto 基类

    2024年01月20日
    浏览(45)
  • Wpf 使用 Prism 实战开发Day08

    1.效果图 MemoView.xaml 页面代码      1. 在  ItemsControl 中,添加滚动条  ScrollViewer  这样使用 ScrollViewer 把内容区域包裹起来,就能让内容区域支持滚动了        2 . 添加滚动条后的效果图如下:  使用md 中的一个自带动画 md:TransitioningContent 来实现该功能  需要设置一个属性,

    2024年02月03日
    浏览(38)
  • Wpf 使用 Prism 实战开发Day14

    备忘录控制器(MemoController)和待办事项控制器 (ToDoController)功能实现差不多一样。基本套路就是: 定义控制器(Controller) 定义数据传输层(Dto) 配置实体类(Entity)和数据传输类(Dto) 关系映射(Auto Mapper) 定义服务接口(IService) 实现服务接口 (Service) 把服务注入控

    2024年01月22日
    浏览(43)
  • Wpf 使用 Prism 实战开发Day01

    1.  VisualStudio 2022 2.  . NET SDK 7.0 3.  Prism 版本 8.1.97 以上环境,如有新的版本,可自行选择安装新的版本为主 项目名称:这里只是记录学习,所以随便命名都无所谓,只要觉得合理就行 注意: 下载的包名是 Prism.DryIoc 。为什么不是Prism.xxx其他包,而是 Prism.DryIoc ,别问我,我也不

    2024年02月08日
    浏览(37)
  • Wpf 使用 Prism 实战开发Day03

    效果图:   创建 Models ,放置实体类。 实体类需要继承自 Prism 框架的  BindableBase ,目的是让实体类支持数据的动态变更!  例如: 系统导航菜单实体类 创建View文件夹  放置前端显示页面 。例如:创建首页: MainView.xaml 创建ViewModel 文件夹,放置前端逻辑处理类。意思是:有前端

    2024年02月08日
    浏览(42)
  • Wpf 使用 Prism 实战开发Day11

     仓储(rep):仓储接口定义了对实体类访问数据库及操作的方法。它统一管理数据访问的逻辑,并与业务逻辑层进行解耦。 简单的理解就是对访问数据库的一层接口封装。 工作单元(uow):用来保证我们处理业务逻辑的,稳定性,完整性。防止在业务操作过程中,涉及对数据

    2024年02月02日
    浏览(48)
  • C/C++|物联网开发入门+项目实战|空间读写|非字符空间|返回值内部实现|嵌入式C语言高级|C语言函数的使用(2)-学习笔记(12)

    参考: 麦子学院-嵌入式C语言高级-C语言函数的使用 空间的读写 void fun(char *p); const char *p 只读空间,只为了看 char *p;该空间可能修改,几乎都要变 strcpy(); 定义:char *strcpy(char *dest,const char *src); sprintf(); 作用 1、修改 int * short * long * 2、空间传递 2.1 子函数看看空间里的情况

    2023年04月22日
    浏览(62)
  • C/C++|物联网开发入门+项目实战|指针|嵌入式C语言高级|C语言内存空间的使用-学习笔记(9)

    参考: 麦子学院-嵌入式C语言高级-内存空间 内存类型资源地址、门牌号的代名词 指针:地址的代名词 指针变量:存放指针这个概念的盒子 *P char *p *p; C语言娟译器对指针这个特殊的概念,有2个疑问? 1、分配一个盒子,盒子要多大? 在32bit系统中,指针就4个字节 2、盘子里存放

    2023年04月22日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包