Интеграция Unity3D с UIView

Пожалуйста, исправьте меня, если этот вопрос дублируется. Я просто наткнулся на Unity3D, и я просто хочу спросить, возможно ли интегрировать Unity3D поверх другого UIView?

Ответ 1

Я думаю, что это невозможно, потому что созданный AppController.mm действует как UIApplicationDelegate. И даже если вам удастся заставить его работать, похоже, что вам не повеселится в долгосрочной перспективе. Основные обновления Unity3D могут изменить некоторые внутренние элементы.

Но другой путь, то есть вызов кода Obj-C из Unity3D и показ произвольных UIViews, определенно работает. См. Как использовать xcode-игру на unity3d, особенно Умный марсианский блог - эксперимент с собственным пользовательским интерфейсом iPhone и Unity 3 Pro.

Ответ 2

Может быть, но гораздо проще пойти наоборот. Используйте Native Toolkit:

http://u3d.as/content/prime31/native-toolkit-unity-to-i-os-bridge/1vj

С этим вы можете воспитывать UIViews поверх своего приложения Unity3D. Он отлично работает и очень прост в использовании. Я думаю, что это, по сути, версия для плагинов и игр, описанная в сообщениях в блоге, связанных с ответом Кей.

Ответ 3

Да, это так.

Этот поток подробно рассказывает: http://forum.unity3d.com/threads/unity-appcontroller-subclassing.191971/

Один из разработчиков Unity даже отправляет примерный код. Не то, как конкретно помещать Unity в UIView, но как включить Unity AppController в конечном итоге, что бы вы ни хотели с ним.

Я поддерживаю гибридные приложения Unity CocoaTouch в течение нескольких лет. Раньше это был полный хак. Теперь Unity имеет незначительную поддержку для него, основываясь на вещах, изложенных в этом потоке. Но это очень важно, чтобы поддерживать его. iOS и Unity немного меняют каждый релиз, поэтому вы должны объединить единство в приложение iOS, немного отличающееся от каждой версии. Иногда возникали странные проблемы, которые требовали от меня времени. Я лично, по опыту, избегал делать гибридные приложения Unity и CocoaTouch для чего-то серьезного и очень предсказуемого, пока они не станут более официальными. В идеале есть официальная документация об этом в руководстве. Не только один из разработчиков публикует примеры кода и форум.

Ответ 4

Как нет руководства по управлению этим с новым Unity 5 (с поддержкой IL2CPP для 64 бит) и Vuforia 4.x - я решил записать свой опыт с ним в кратком учебнике.

http://www.makethegame.net/unity/add-unity3d-to-native-ios-app-with-unity-5-and-vuforia-4-x/

Надеюсь, что это поможет кому-то, поскольку это была действительно плохая задача.