当前位置: 首页 > news >正文

visionOS空间计算实战开发教程Day 1:环境安装和编写第一个程序

安装

截至目前visionOS还未在Xcode稳定版中开放,所以需要下载​​Xcode Beta版​​。比如我们可以下载Xcode 15.1 beta 2,注意Xcode 15要求系统的版本是macOS Ventura 13.5或更新,也就是说2017年的MacBook Pro基本可以勉强一战,基本上还是推荐使用M系列芯片的电脑进行开发。

Xcode 15.1 beta 2

创建项目

安装好SDK后,如果一切正常就可以开始创建visionOS项目了,在点击Create New Project..后会看到一个专属的visionOS的标签页,如下图所示:

新建visionOS项目

接下来和普通的iOS项目并没有太大区别,填入相关信息:

visionOS创建项目信息填写

Initial Scene有两个选项:Window和Volume,基本的区别是一个二维的,一个是三维的,后者添加多了一个深度信息。Immersive Space在将Immersive Space Render选择为RealityKit时会有三个选项:Mixed、Progressive和Full。这里我们都保持默认选项。

有些新手读者可能会问,如果在原有项目中基础上新增一个visionOS的版本该怎么做呢?一般公共部分可以抽取到一个​​shared​​的文件夹,然后在原项目中新增一个Target即可:

第一个程序

创建完项目项目文件结构可以参见下图,打开​​ContentView.swift​​​可以看到默认已为我们创建了一个包含有初始3D模型和​​Hello, world!​​文本的界面。

visionOS初始开发界面

项目的入口文件​​visionOSDemoApp.swift​​(因本项目命令为visionOSDemo)与iOS项目并没有区别。

import SwiftUI@main
struct visionOSDemoApp: App {var body: some Scene {WindowGroup {ContentView()}}
}

我们的第一个程序就是修改​​ContentView.swift​​​,因为这里并不需要使用RealityKit和3D素材,只需要导入​​SwiftUI​​即可。

Day 1: Hello visionOS

struct ContentView: View {var body: some View {VStack {Text("Hello, visionOS!")}}
}

在模拟器中的展示效果如下:

Hello, visionOS!

visionOS内置有多个模拟场景(Kitchen(Day)、Kitchen(Night)、Living Room(Day)、Living Room(Night)、Museum(Day)和Museum(Night)),可通过模拟器的右上角或预览界面的左下角进行切换:

visionOS模拟场景

 其它相关内容请见​​虚拟现实(VR)/增强现实(AR)&visionOS开发学习笔记​​

参考资料:https://github.com/satoshi0212/visionOS_30Days

http://www.lryc.cn/news/240032.html

相关文章:

  • java常见数值类型取值范围/ int short long BigInteger取值范围
  • echarts产品日常奇怪需求
  • CSDN文章保存为MD文档(一)
  • 【tomcat】java.lang.Exception: Socket bind failed: [730048
  • 什么是高防IP?有什么优势?怎么选择高防IP?
  • 不存在类型变量 A, T 的实例,使 Collector<T, A, List<T>> 符合 Supplier<R>
  • 千兆光模块和万兆光模块的供应链管理
  • pytorch训练出现的bug
  • 【AGC】集成AGC服务上架应用市场审核问题
  • element emitter broadcast向下广播 dispatch向上分派
  • 基于 Modbus 的工业数据采集、控制(part 2)
  • vue前端项目如何配置后端项目的请求地址
  • Lora学习资料汇总
  • Oracle的控制文件多路复用,控制文件备份,控制文件手工恢复
  • 在线视频课程教育系统源码/网课网校/知识付费/在线教育系统/在线课程培训系统源码
  • 程序员护城河:保障系统安全与网络稳定的不可或缺力量
  • html属性值可以不用引号吗,实例验证
  • angular 实现模块共享
  • 带记忆的超级GPT智能体,能做饭、煮咖啡、整理家务!
  • 易点易动设备管理系统提升设备能耗管理和设备状态监控效率
  • 【idea】解决idea 执行maven build总下载 Downloading maven-metadata.xml文件
  • HttpClient发送MultipartFile多文件及多参数请求
  • TMUX设置鼠标滚轮滑动来浏览之前的前面内容
  • 「go查漏补缺」命名规则以及 GROM 结构体的应用
  • Django 集成 Celery 实现高效的异步任务处理
  • Java之异常(上):基本异常体系
  • 你的关联申请已发起,请等待企业微信的管理员确认你的申请
  • .nvmrc 文件使用详解
  • 深度学习之基于YoloV5抽烟检测系统
  • 解释器模式 (Interpreter Pattern)