iOS7 MFI Controllers, how do I prep for their use?

Hey guys, I know that this question is most likely not answerable at the moment, but I was wanting to start the topic to give this a place to go in the future.

As we all probably know by now, iOS 7 adds a dedicated api for using apple certified controllers. This is awesome news, especially for us Unity iOS devs (now we can create the games we really want to without worrying as much about the difficult learning curve of touch controls). Obviously we can’t buy these controllers to test with yet, and even if we could, Unity hasn’t integrated the api quite yet. I am assuming, however, that the api will bubble up through the standard joystick api currently in Unity. If this is the case, then we could theoretically buy something like the xbox360 controller to start testing joystick input controls for our iOS games. Obviously you wouldn’t be able to test on the device, but you could test in editor and make sure that the feel of the controls work, then once the actual ios controllers start rolling out, hopefully they would just work on device with the current setup.

Does this sound plausible? Are there any caveats that I am missing?

We can discuss public knowledge that has been released. In this case, all buttons have pressure sensitivity so if unity wanted to support it natively, it would need that. Failing this, prime will have a handle on it. Meanwhile develop game normally, because you are NOT allowed to release a joypad only game.

Essentially, you should just make the touch screen game in the meantime.

Yeah I get what you are saying for sure. At this point my touch controls are already implemented (still need further refining though), I was just wanting to get a head start on implementing some joystick controls so that I could be ready at launch to support the new controllers. Hopefully Unity will integrate this api in asap. Thanks!

Are you saying that you’re not allowed to require the apple controller for your games? Where did you hear this?

That is what Apple is saying in the mfi controller api documentation. Your app won’t be allowed into the app store if you only support the controller. you have to have some sort of touch control implemented.

Yes you can’t require user to have a controller. It’s said in the official document where the controllers are introduced.

I can understand apple that they say you can’t require user to have a controller.
They do the same with the other devices too.
They say you can not restrict an app to iphone 5 only.
The apps should run as many apple devices and at as many users as possible.
I guess you could make additional content if the user have a Controller attached or something of that kind.

Just to be clear: the pressure sensitivity is a hardware requirement, not a software one. Meaning that you can chose to use the pressure sensitivity or not. In xcode, there’s two different ways of implementing, for whether or not you want pressure sensitivity.

The real issue here, is that apple for some reason has chosen to let the developers take care of connecting to the joypads in each game… I don’t really get why…

Dear Unity,

Any ETA you could provide for updates on the external controllers would be greatly appreciated by us developers with time-sensitive launches.

Thank you!

For those interested, we have MFI Game Controllers implemented already. If you have the controllers and would like to check it out, send me a private message and I’ll send you a link to the beta Unity Package. When iOS 7.0 is released, it will be part of the iOS SDK by UD3XT package as a free update.

Edit: it’s available now in the asset store.

Hi,

Also, for the one that would like the input settings taking in account IOS controller, I made a package with input settings, where you can access extended controllers input ( dPad, right axis, L2, R2, etc) mixed with the usual inputs ( Fire 1, Jump) etc. So with this, Basic and Extended controls are covered.

https://hutonggames.fogbugz.com/default.asp?W1175

On that page, download the “GameControllerInputSettings.unitypackage” link. Ignore the rest if you are not a PlayMaker user.

Bye,

Jean