苹果头显Vision Pro深度解读3 苹果头显visonOS开发指南

news/2025/2/12 2:45:55/

1  程序员visonOS开发指南  

作为iOS开发者,切换到visionOS开发非常简单啊,过去的一些技术基本上都用得上。目前根据苹果WWDC官方的文档,视频,我们可以知道:

开发语言,使用的是swift object-c c c++等,swift当然作为首选。

开发界面,使用的是swiftUI, 如果要展示3D模型,

用RealityKit.  空间计算以及交互,

有ARKit。如果你只是过去的iOS应用,

重新打包发布下也可以直接在visionOS上用,甚至可以直接使用iOS的软件。 所以会使用swift,swiftUI, 学习下ARKit,RealityKit就能够胜任visionOS应用开发。

深入的visionOS开发

熟悉3D领域的知识。OpenGL不知道是否继续支持,首选的肯定是Metal。

3D领域的模型格式啊,uv,纹理,贴图,光照,顶点变换管线,渲染管线这些也是基础的知识,各种3D格式,fbx/gltf/glb/usdz等等。

开发3D,你最好还要懂得一个建模软件,官方前列推荐的是blender。

除了3D,音视频也是重头戏,H265格式,3D视频格式。还有流媒体等领域的知识,都是作为资深visionOS开发必须掌握的基础。

2 软件开发也是一场豪赌.  

软件开发者,选择一个技术方向,抱谁的大腿,也是一场自己命运的赌博。 尤其是程序员,如果长期做某一项技术,容易形成宗教一般的信仰,崇拜。要他改变,非常难。

比如我自己,我大学四年,死磕linux,qt。 于是我在2008年,就开始研究Nokia的手机开发方案,Meego, symbian。用Qt去开发诺基亚的手机应用。一方面因为自己长期使用的技术很难切换,另一方面相信Nokia,Intel,三星这些公司。结果发现,操作系统领域,是微软,谷歌,苹果的天下。

虽然从技术的角度,学习Qt也是很好的,但是从编程投入产出比,相对于iOS,Android就很低了。我也是毕业做了一年嵌入式linux Qt音视频后,才快速切换到手机音视频开发赛道。相当于浪费了三年时间。

所以程序员做开发,选择一个技术,最好未来能够大规模应用流行,否则你也是上了贼船。职业生涯跟押对宝的开发者来说,就差太远。所以选择正确的技术方向,然后All in它。

3 苹果头显游戏开发 游戏引擎1 Unity3d

Unity3D是一个很好用的游戏引擎,对于初学者也很友好,尤其是它的c#作为主要开发语言,也非常好用。 当年iOS上最初一些成功的游戏,都是unity3D开发的,比如滑雪大冒险,神庙逃亡。

后来国内大量的游戏公司,基本上也都是用Unity3d作为游戏开发首选。游戏公司也非常好招人。Unity3d,入门开发比较简单,但是想深入也需要花很多时间去学习。

游戏开发行业,程序员所占的权重,不像普通应用那么高。游戏策划,2D 3D美术啊,技术美术啊,服务器开发啊,所占的权重都跟游戏客户端程序员差不多甚至更高。

所以普通个人,你如果想开发一个普通工具软件,一两个人就能完成,最多自己学习下UI设计。 但是如果你想做一个独立2D,3D游戏开发者,就相对困难一些。

2D,3D美术资源,shader,都没那么容易,更适合团队协作去完成。3D领域的开发投入太高,这也是这些年元宇宙比较困难的因素之一。

4 苹果头显游戏开发 游戏引擎2 Godot  

VR AR头显游戏开发,除了Unity3D,其实还有UE,cocos3D这些游戏引可以选择。当然UE母公司跟苹果关系好像有点不好。

那么最像Unity3D的开源游戏引擎,Godot也是一个不错的选择。

Godot支持c#开发,官方推荐的额是自家的GDScript一种类似python的脚本,学习起来也很快。Godot有些好处,比如跟Blender操作无缝衔接。shader开发也是glsl那一套东西,支持所有的平台,免费开源。 而且可以支持GDExtension 最近写c c++插件,本身似乎也支持ARKit,如果什么东西不支持,自己封装一些,写个插件也很容易。

重点是开源免费,适合个人,小工作室。

我个人2012年开始用Unity3d写过几个应用,但后来因为这些应用都没怎么赚到钱,以及国内上架游戏需要版号,所以买了几年Unity3D,就没用它了。但是不妨碍Unity3d很好用啊。

2017年以后,我更多的使用OpenGL,Metal开发了一些软件,很多时候都在自己写渲染引擎。

今年我有两个软件,想用回unity3d, 但看了下关注了很多年的Godot, 就决定用Godot代替Unity3d了。用了大半年,写了两个项目,发现Godot也很好用。无论你用GDScript或者C#都可以。

VR AR MR开发时代,音视频,图像处理开发技术,尤其是OpenGL ES是最基础的技术。

这里给大家推荐我个人的音视频,图像处理开发系列课程。

 


http://www.ppmy.cn/news/401879.html

相关文章

vue怎么实现office,PDF,图片,OFD文件预览

要在Vue中实现Office、PDF、图片和OFD文件的预览,可以使用不同的第三方库来处理不同类型的文件。以下是一个详细的教程和代码示例,使用vue-pdf库来预览PDF文件,使用vue-doc-preview库来预览Office文件(如Word、Excel和PowerPoint&…

Android kotlin 实现仿蜜源ViewPager和指示器对应上面TabLayout功能

文章目录 一、实现效果二、引入依赖三、源码实现1、ViewPager实体类2、指示器样式(自定义类)3、主视图实现一、实现效果 二、引入依赖 在app的build.gradle在添加以下代码 1、TabLayout:implementation com.google.android.material:material:1.1.0 2、implementation com.gi…

k8s master组件无法重启

1.案例 k8s的master组件出错,删掉pod重新拉起也无法正常启动 kubectl get pod -n kube-system 可以看到controller和scheduler组件都显示异常 kubectl describe pod kube-apiserver-k8s-master03 -n kube-system 通过describe查看组件容器的详细信息也并没有报错…

【二等奖方案】系统访问风险识别「LOL四缺一」团队解题思路

第十届CCF大数据与计算智能大赛(2022 CCF BDCI)已圆满结束。大赛官方竞赛平台DataFountain(简称DF平台)将陆续释出各赛题获奖队伍的方案思路。本方案为【系统访问风险识别】赛题的二等奖获奖方案,赛题地址:…

柏笙个人博客

我的个人博客 https://www.baisheng.xyz/

Python编程小知识-1-省略号运用

默默无闻的省略号很好用 在Python中&#xff0c;一切皆对象&#xff0c;省略号也不例外。 在Python 3中你可以直接写来得到它 >>>...Ellipsis >>>type(...) <class ellipsis>而在 Python 2中没有这个语法&#xff0c;只能直接写Ellipsis来获取。 &…

Python编程小知识-3-直接运行的zip和修改提示符

目录 可直接运行的zip包 如何修改解释器提示符 可直接运行的zip包 我们可以经常看到有Python包&#xff0c;居然可以以zip包进行发布&#xff0c;并且可以不用解压直接使用 这与大多数人的认识的Python包格式不一样&#xff0c;正常人认为 Python包的格式要嘛是egg,要嘛是whl格…

Java中 :: (方法引用)

:: 中被叫做 方法引用 可以进一步简化lambda的用法。 类名::静态方法 public class Task {public static void main(String[] args) {String[] arr{"aaaa", "bbbb", "cccc"};List<String> stringList Arrays.asList(arr);//引用静态…