- 微软为Windows混合显示的OpenXR runtime何时发布?
- 苹果操作系统是用什么语言编写的?
- Khronos发布OpenXR 0.90临时标准,对AR/VR产业有怎样的意义?
- 未经苹果官方认证的应用可以在macOS平台上运行吗?
微软为Windows混合显示的OpenXR runtime何时发布?
OpenXR是新兴的跨平台标准,旨在简化VR平台应用和头显设备之间的迁移。OpenXR由Kronos Group开发,由API(面向应用开发者)和设备层(面向虚拟现实或者增强现实设备,为设备本身提供抽象接口)两个中间件组成。使用OpenVR之后,应用程序只需要编写一次就可以在任意VR系统上运行,并访问可使用这些应用的VR系统设备。
OpenXR包含除苹果之外的几乎所有科技公司,而且伴随着0.90版临时标准的发布微软成为首个为中间件提供runtime的公司。微软写道:“自今天开始通过使用Mixed Reality OpenXR开发者预览版,你可以尝试临时OpenXR 0.90 API。这个早期runtime能够让使用OpenXR 0.90 API开发的应用程序在Windows Mixed Reality沉浸式头显设备中使用。如果你没有头显设备,你也可以使用 Windows Mixed Reality模拟器。”
访问:
苹果操作系统是用什么语言编写的?
底层内核部分是纯C语言,基于FreeBSD+mach微内核。中间驱动层用C与C++实现。上层API则使用Objective-C进行封装~
其整个应用层的运行时均***用Core Foundation的runtime,Core Foundation是纯C的API,不过Objective-C与它之间具有无缝桥接性~
比如,你可以直接将一个UIColor引用指向一个CGColorRef引用对象。
Khronos发布OpenXR 0.90临时标准,对AR/VR产业有怎样的意义?
在今天于旧金山举办的游戏开发者大会(GDC 2019)上,Khronos 工作组发布了面向增强现实(AR)和虚拟现实(VR)硬件的 OpenXR 0.90 早期标准。
感兴趣的开发者和制造商,可以到 Khronos 网站上查看临时发布的标准公告,以便后续提交反馈。
【OpenXR 工作组拥有来自各大软硬件和游戏行业的诸多支持者】
其中包括英特尔、AMD、英伟达、三星、高通、Valve、Oculus、谷歌、Unity 等科技巨头。遗憾的是,苹果并未参与其中。
在遍历了应用程序中有关渲染、追踪、帧定时、输入等相对应的一组通用对象和函数后,你会发现各个厂商的 API 功能和定义有多么巨大的不同。
好消息是,在 OpenXR 0.90 的强制统一之下,软件开发人员只需经历最少量的修改,即可完成跨多个 XR 系统、无障碍运行其应用程序的工作。
Khronos OpenXR 工作组成立于 2017 年初,得到了业内领先的 XR 公司的支持与参与。
Oculus 联合创始人兼 Facebook VR 产品负责人 Nate Mitchell 在一份声明中称:
Facebook 和 Oculus 坚信,开放的 OpenXR 标准能够为用户和开发者带来价值。为用户和开发者带来的价值。
未经苹果官方认证的应用可以在MacOS平台上运行吗?
今天下午苹果发出提醒:为了确保开发者和Mac用户均能顺利过渡,app Notarize审核机制生效时间将放宽至2020年1月份。根据苹果官方说明,自 macOS 10.15 起,所有从互联网下载的未进行 notarize 的App,默认将无法被打开,所以在 App Store 外分发的 App,也必须在发布前将App上传到苹果的[_a***_]进行处理。
代码签名(App Notarize)机制是一种对抗恶意软件的重要武器,它能够帮助用户识别已签名App的真实身份,并验证目标应用是否被非法篡改过。代码签名机制基于密码学方法来判断代码的真实性,并防止攻击者将恶意代码伪装成合法代码。Notarization机制是建立在当前Gatekeeper安全检查之上的一个新验证层,是Gatekeeper技术的补充。
总的来说,Notarization机制的特点如下:
1.Notarization机制是将其提交给苹果审核的过程,其目的就是要让苹果对商店里的应用程序进行安全控制。
2.Stapling是将Notarization机制附加到应用程序或kext上的过程,这样它就可以离线运行或在某种安全隔离的网络上运行。
3. Notarization机制只是针对开发人员的,目前只是在测试,等到 macOS 10.14.5,很可能会强制使用Notarization机制。
4.内核扩展Notarization机制是10.14.5的强制性要求,未经Notarization机制验证的内核扩展将在10.14.5加载时失败。
开发人员可以在截止日期之前进行使用某些不符合此前条件的App Notarize,例如使用较旧SDK的应用程序或包含未由开发者ID签名的组件。
苹果在其开发者网站上有完整的配额清单: