如何将 Unity 集成到 Swift 3 iOS 项目中
How to integrate Unity into a Swift 3 iOS project
我只是想知道将 Unity 项目实施到现有 Swift 3 iOS 项目中的最佳策略是什么。到目前为止,我只在 Objective-C 中发现了示例代码。那里有流行的框架或包装器吗?
我认为本指南非常有用:
https://github.com/blitzagency/ios-unity5
请注意有一些陷阱:
首先我有几个链接器错误,但我没有考虑到 Unity 项目配置仅为 "real devices" 设置。当我尝试在模拟器上构建项目时,出现了 100 多个编译错误。
然后我尝试在我的测试设备上构建它,但仍然存在一些错误,直到我注意到我必须添加一些必要的框架,这些框架就列在那里:
https://github.com/blitzagency/ios-unity5/issues/36#issuecomment-303716827
AssetsLibrary, AudioToolbox, AVFoundation, CFNetwork, CoreGraphics,
CoreLocation, CoreMedia, CoreMotion, CoreVideo, Foundation, iAd,
libiconv.2.tdb, MediaPlayer, MediaToolBox, (this was the missing one)
OpenAL, OpenGLES, QuartzCore, Security, SystemConfiguration, UIKit,
libiPhone-lib.a, libVuforia.a*, libVuforiaUnityPlayer.a*
*only if you use Vuforia in your scene
最后也是最重要的一步是遵循以下拉取请求中列出的建议,然后它将完美地 运行 和 Swift 3:
https://github.com/blitzagency/ios-unity5/pull/42
merged current evolutions from other forks (like swift 3 support),
updated to work with Unity 5.5.2, Xcode 8.3.2 and Swift 3.1, removed
some boilerplate like main.swift added possibility to pause unity to
take full advantage of reduced cpu cylces and therefore battery
consumption, when unity is not running (active)
如果使用Cocoa Pods,最好不要使用本仓库提供的配置文件。我实际上最终手动操作了所有构建设置,因此不会与 pod 配置文件发生冲突。
希望能对你有所帮助
编码愉快
接受的答案中提到的教程是将 Unity 集成到 Swift 项目的一个很好的分步指南。
但是,Swift 4 和 Unity 2017.1 需要进行一些更改。这是一个 demo project 以备不时之需。
我只是想知道将 Unity 项目实施到现有 Swift 3 iOS 项目中的最佳策略是什么。到目前为止,我只在 Objective-C 中发现了示例代码。那里有流行的框架或包装器吗?
我认为本指南非常有用:
https://github.com/blitzagency/ios-unity5
请注意有一些陷阱:
首先我有几个链接器错误,但我没有考虑到 Unity 项目配置仅为 "real devices" 设置。当我尝试在模拟器上构建项目时,出现了 100 多个编译错误。
然后我尝试在我的测试设备上构建它,但仍然存在一些错误,直到我注意到我必须添加一些必要的框架,这些框架就列在那里:
https://github.com/blitzagency/ios-unity5/issues/36#issuecomment-303716827
AssetsLibrary, AudioToolbox, AVFoundation, CFNetwork, CoreGraphics, CoreLocation, CoreMedia, CoreMotion, CoreVideo, Foundation, iAd, libiconv.2.tdb, MediaPlayer, MediaToolBox, (this was the missing one) OpenAL, OpenGLES, QuartzCore, Security, SystemConfiguration, UIKit, libiPhone-lib.a, libVuforia.a*, libVuforiaUnityPlayer.a*
*only if you use Vuforia in your scene
最后也是最重要的一步是遵循以下拉取请求中列出的建议,然后它将完美地 运行 和 Swift 3:
https://github.com/blitzagency/ios-unity5/pull/42
merged current evolutions from other forks (like swift 3 support), updated to work with Unity 5.5.2, Xcode 8.3.2 and Swift 3.1, removed some boilerplate like main.swift added possibility to pause unity to take full advantage of reduced cpu cylces and therefore battery consumption, when unity is not running (active)
如果使用Cocoa Pods,最好不要使用本仓库提供的配置文件。我实际上最终手动操作了所有构建设置,因此不会与 pod 配置文件发生冲突。
希望能对你有所帮助
编码愉快
接受的答案中提到的教程是将 Unity 集成到 Swift 项目的一个很好的分步指南。
但是,Swift 4 和 Unity 2017.1 需要进行一些更改。这是一个 demo project 以备不时之需。