Now I am using iOS 16 beta 6, I can get buttonA/buttonB is pressed event. but cannot get accelerator motion data info.
//work
buttonA?.valueChangedHandler = {(_ button: GCControllerButtonInput, _ value: Float, _ pressed: Bool) -> Void in
print(">>> ButtonA tapped")
}
//work
buttonB?.valueChangedHandler = {(_ button: GCControllerButtonInput, _ value: Float, _ pressed: Bool) -> Void in
print(">>> ButtonB tapped")
}
// this is not works
gameController.motion?.valueChangedHandler = { (motion: GCMotion)->() in
print(">>>> motion data \(motion.acceleration.x) \(motion.acceleration.y) \(motion.acceleration.z)")
if let delegate = self.motionDelegate {
delegate.motionUpdate(motion: motion)
}
}
Is there any plan to support this?
Post not yet marked as solved
I want to use iPhone as a bluetooth keyboard or joystick to control a host device. To input contents or play games on another device.
As far as I know. My goal can't be done. There are three relate frameworks:
CoreBluetooth. When I try to add a peripheral with HID service 1812, the method returns a error. There's another HID service 1124, over BT classic. Is it available?
ExternalAccessory. Our host device is not a MFI device.
GameController. By this iPhone can work as a host device, not a input device.
Thanks for any suggestions!
Post not yet marked as solved
As a digital artist from China who creates concept art for large gaming companies, I absolutely love using the iPad Pro and Apple Pencil. I rely on them for long hours each day to complete my work. Apple Pencil's design is truly innovative, and I am eager to praise its developers. They are undoubtedly geniuses, and I have always appreciated Apple's intuitive design that feels natural and instinctual to use.
However, there are two missing features that are crucial to artists and users alike. I find it surprising that these features have not yet been implemented by Apple or any third-party tools. Therefore, I am reaching out to the developers themselves for help in bringing these essential features to Apple Pencil users.
The first feature is the inability to customize the location of the pencil's point of contact. I hope that a system-level setting can be added to allow for micro-adjustments of the stylus's nose position. Technically, this is not a difficult feature to implement, as third-party software such as Artstudio Pro already offers it. The reason why this feature is so necessary is that many artists, including myself, use third-party stylus tips that are longer and thinner than the default tip. While they provide greater precision and tactile feedback, the point of contact is often shifted to the lower right of the physical point of contact with the screen. This inconsistency can make drawing and writing feel strange and uncomfortable, and it remains a significant pain point for many artists.
The solution is simple: add a new setting called "Drawing Offset" to the Apple Pencil interface, which allows for adjustment of the stylus's point of contact by modifying the x and y axis values. This will ensure that no matter what type of stylus tip an artist uses, they can always achieve pinpoint accuracy. I am confident that the implementation of this feature will be greatly appreciated by artists all over the world.
The second pressing feature is the ability to map keys on game controllers. As an artist, I have always dreamed of using my iPad to create professional artwork from any location, such as lounging on the couch or sitting in any outdoor setting. I imagined using the Switch's Joy-Con controller in my left hand as a shortcut for drawing tools.
In reality, I often have to endure back pain while sitting at my desk to work. This is because I can only use the keyboard as a shortcut when drawing at my desk. I can't walk around with my keyboard and iPad to draw because Joy-Con cannot map various keyboard shortcuts to the iPad to assist with drawing. You might say, why not use gesture control? Gesture control is great and works well when I'm just doodling, but for professional-level precise drawing needs, a physical keyboard with shortcuts is a must.
If, after connecting Joy-Con, I can customize the keyboard shortcuts mapped to each Joy-Con button in the settings, such as mapping Ctrl-Z to the trigger button, then I only need to draw with my right hand on the iPad, and my left hand can easily control the undo function by pressing the Joy-Con button. Even when lying on the couch, using Joy-Con as a shortcut keyboard is very intuitive.
I think these two functions are very intuitive designs, and I originally thought that Apple should have had these functions already. Or, considering the shortcut key needs of artists for drawing after connecting Joy-Con, it would have allowed custom mapping of Joy-Con button positions to any keyboard shortcut. But unfortunately, it cannot be done, and it is also impossible to implement through third-party software.
I hope you can consider adding these two functions to improve the drawing experience for artists, and I believe artists from all over the world will cheer for it. To be honest, this could be a revolution in experience and efficiency, and just these two functions will change everything about art creation, and people will love Apple for it.
I will also continue to write to third-party drawing software companies and hope that they can develop similar feature support. Of course, the best situation would be if you saw what I said and it was just a matter of raising your hand to include these two features in the next update. I am truly grateful!
Post not yet marked as solved
Hi,
I have tried many Controler Mappers (Enjoyable, GamePad Mapper...) and each of them doesn't automatically activate the mapping (config list) once the Gamepad is switched on (after being off). It has to be activated manually.
I need this feature for an exhibition.
Does anybody recommand a Mapping App that would do the job?
Thanks
Post not yet marked as solved
hey hey i have a question and i use the GCVirtualController in a spritekit game. But I think the elements in my scene are way too high. I would like them below. is it possible to change the elements such as the thumbstick, the Y or X position?
Post marked as Apple Recommended
I tried to connect my xbox controller to my MacBook, even though the controller is registered in bluetooth setting, but it doesn't function at all.
Have anyone met the same problem and if there's a fix for this problem
Post not yet marked as solved
Someone somewhere in Apple Development needs to do something. This just cannot be allowed to continue. This has been reported by many others before me .. but nothing changes.
What their Reviewers do borders on Assault which is a Crime.
How much longer?
The very capable folk such as Quinn are tarnished by working along side some of the Reviewers. I truly feel sorry for Quinn.
Submitted my Monster Paddle Pong App that operates on Apple TV and iPad with a Game Controller.
SO the Tester uploads my App to their iPad and starts poking their finger all over the screen .. and NOTHING happens.
Maybe their reading skills aren’t ample because that Game Controller requirement is delineated in sentence #1.
Promotional Text:
Monster Paddle Pong is FUN! to play on a iPad + Apple TV with a Extended Game Controller. Match wits with your skill to react quickly. See the Description for more info.
Description Text:
Monster Paddle Pong is FUN! to play on a iPad or Apple TV with a Game Controller. It mischievously matches wits with your skill to react quickly.
It's 100% free, so give it a GO!
Pressing the Right Shoulder Button starts the Game and causes the Dinossaur Ball to start moving .. and unless the Ball is moving the Monster Paddle will not move.
As a matter of fact, until this Right Shoulder Button is first pressed, only the Left Shoulder Button works (described below).
This makes sense because after all what’s so hard in hitting a stationary target? Right?
Use your Game Controller’s A, B, X, Y buttons & the Joysticks to move the Monster Paddle and hit the moving Dinossaur Ball.
If you’re successful then your Score in the upper right corner advances. If instead your Monster Paddle hits one of the 4 Walls, your score decreases by 1.
All this is graphically depicted in the About Scene which can be accessed by pressing your Controller’s Left Shoulder Button once.
BTW, press this Left Shoulder a 2nd time, and you will see my Credits Scene.
I don’t want to get too detailed here because a big part of FUN! is the thrill of Discovering.
So, feel free to DISCOVER, most notably pressing all the buttons on your Controller to see the MAGIC! each of them makes happen.
Post not yet marked as solved
Hi, was just wondering if anyone will see this and have a solution to this problem or if apple gets enough criticism on this subject to fixing the problem... I WANT TO PLAY CLONE HERO ON MY M1 IMAC!!!! not to mention I'd like to see some sort of compatibility for older-gen controllers in general, but I literally scour the internet once a month for hours trying to find anyone who is working on drivers for this and it seems that Apples M1 chip has completely ruined that demographic of gaming and coders. Everyone is completely unable to create a driver that creates compatibility for 360 controllers. Apple, I really expect an answer as I've been an avid user my whole life, and everything I use is apple. I'm a designer, and I really enjoy your tech but honestly, this is becoming very exhausting as you are not very welcoming to gaming capabilities, and customization like other PCs are. Other PCs allow complete control and change to almost every aspect of them. I can't even play guitar hero or other games from 2000. Not very advanced if you can't even run simple games from much simpler processors. This along with other similar issues, I genuinely regret spending so much money on a computer that can't even run anything I bought it for besides the general run-of-the-mill apps that are on their app store.
Post not yet marked as solved
import UIKit
import AVFoundation
class ViewController: UIViewController {
@IBOutlet weak var player: UIImageView!
@IBOutlet weak var enemy: UIImageView!
@IBOutlet weak var scoreLabel: UILabel!
@IBOutlet weak var gameOverLabel: UILabel!
@IBOutlet weak var levelLabel: UILabel!
@IBOutlet weak var powerUp: UIImageView!
@IBOutlet weak var powerUpLabel: UILabel!
var score = 0
var gameOver = false
var level = 1
var powerUpActive = false
var powerUpTime = 0
var backgroundMusic: AVAudioPlayer!
var enemyDeathSound: AVAudioPlayer!
var powerUpSound: AVAudioPlayer!
override func viewDidLoad() {
super.viewDidLoad()
// Add swipe gestures
let leftSwipe = UISwipeGestureRecognizer(target: self, action: #selector(swipeLeft))
leftSwipe.direction = .left
view.addGestureRecognizer(leftSwipe)
let rightSwipe = UISwipeGestureRecognizer(target: self, action: #selector(swipeRight))
rightSwipe.direction = .right
view.addGestureRecognizer(rightSwipe)
// Load sound effects
loadSounds()
// Start the enemy moving
moveEnemy()
// Start the game loop
Timer.scheduledTimer(timeInterval: 0.01, target: self, selector: #selector(gameLoop), userInfo: nil, repeats: true)
}
func loadSounds() {
let backgroundMusicPath = Bundle.main.path(forResource: "background", ofType: "mp3")
let backgroundMusicUrl = URL(fileURLWithPath: backgroundMusicPath!)
do {
backgroundMusic = try AVAudioPlayer(contentsOf: backgroundMusicUrl)
backgroundMusic.numberOfLoops = -1
backgroundMusic.prepareToPlay()
backgroundMusic.play()
} catch {
print("Error loading background music")
}
let enemyDeathSoundPath = Bundle.main.path(forResource: "enemyDeath", ofType: "wav")
let enemyDeathSoundUrl = URL(fileURLWithPath: enemyDeathSoundPath!)
do {
enemyDeathSound = try AVAudioPlayer(contentsOf: enemyDeathSoundUrl)
enemyDeathSound.prepareToPlay()
} catch {
print("Error loading enemy death sound")
}
let powerUpSoundPath = Bundle.main.path(forResource: "powerUp", ofType: "wav")
let powerUpSoundUrl = URL(fileURLWith
Post not yet marked as solved
Hi!
We are currently developing a game with online capabilities for Apple Arcade and received the following guidelines:
Required: If you must authenticate the local player on a third-party server, use fetchItemsForIdentityVerificationSignature using gamePlayerID (note: documentation for this API references teamPlayerID not gamePlayerID).
It's true that the documentation for fetchItemsForIdentityVerificationSignature only references teamPlayerID, but it's not clear how to use gamePlayerID in this context.
We tried simply swapping teamPlayerID for gamePlayerID when generating a signature, but it didn't work (expectedly, given that the two IDs are different).
What are the steps involved to make the authentication compliant?
Thanks in advance!
Post not yet marked as solved
We have an iOS app in Development with in-app purchases that works fine on iOS devices.
When running the app on Apple Silicon Macs, the app locks the mouse pointer and renders its own (via GCMouse listener events).
When the user selects an in-app item to purchase, the operating system displays the purchase confirmation dialog as expected, however because the pointer is still locked, users are unable to click elements on the dialog or see a pointer. I've tried running setNeedsUpdateOfPrefersPointerLocked and returning false prior to the purchase but the pointer remains locked. Is there a better way to immediately release the lock or ensure the in-app purchase dialog gets the mouse pointer?
Thanks.
Post not yet marked as solved
Il mio gamepad con cavo usb non funziona più.
Ha sempre funzionato su Steam, ma ora non viene più rilevato come controller. Non viene rilevato come controller nemmeno su giochi scaricati dall'apple store.
Ho provato diversi gamepad e il problema è sempre lo stesso.
Se vado su "informazioni di sistema" viene rilevata come periferica usb.
Se faccio il test su https://gamepad-tester.com/ funziona tutto correttamente, ma continua a non essere rilevato come controller dai giochi.
Come posso sistemare il problema? Fino ad un mese fa funzionava tutto perfettamente.
Attualmente ho macos Monterey 12.6.1
Grazie
Post not yet marked as solved
I can't use my Steam-Controller with non-steam games like World of Warcraft, because they detect the controller as keyboard and mouse. Where can I download a native MacOS driver witch does not require the Steam client running?
Post not yet marked as solved
How to get code testflight please? 😔🙏
Hello,
After upgrading to macOS 13.0, the OS no longer responds to input from my DualSense controller. It used to work just fine before the upgrade. The controller does get detected by the OS and can be seen as connected in the controller settings pane. Clicking on the Identify button in the Game controllers settings pane does make the controller to vibrate. But it seems the OS either is not receiving input from the controller, or is not responding to them. Can you please confirm if this is a bug ? Is there anything I can do to get the controller working again ?
Thank you so much
Post not yet marked as solved
I'm using an Xbox Wireless Controller Model 1708 (listed as a supported device here) on a Late 2012 iMac running Catalina 10.15.7. The controller connects to the system just fine, but I can't interface with it using the Game Controller framework.
At boot, I query the list of connected controllers and it's always empty--even if I've already connected my controller to the iMac. I can register for the controller connect/disconnect notifications, and they appear to be working. I receive a connect notification for my Xbox controller shortly after booting (not sure why there's a delay...). The problem is that the GCController object for my Xbox controller returns NIL when I query its extended gamepad profile.
How can I query button states if I can't access the extended profile?
I can access the deprecated GCGamepad profile as well as the micro gamepad profile, but neither give me access to the full controller's button state.
I've tried searching for help and I noticed an unanswered question with the same problem here.
How are you all supporting Xbox controllers in your apps? Is it unsupported in Catalina?
Cheers! :)
Post not yet marked as solved
I connected the native PS4/Xbox joystick to my M1 MacBook to test my iPad Game, choose "My Mac (Designed for iPad)" and run it via xcode/ archive and install it as an mac app.
But the joystick buttons response very slowly and have large delay (detect input via GCController.extendedGamepad.valueChangedHanlder).
The same code runs property if I build the app to iPad and connect the same joystick.
My app CPU Percentage Used is over 100%, is it relative to this question?
Post not yet marked as solved
I'm using MacBook Pro (14-inch, 2021) paired over bluetooth with Xbox Wireless Controller (STANDARD GAMEPAD Vendor: 045e Product: 02e0) according to result tested on https://gamepad-tester.com/ which works fine.
Steam Big picture mode works fine.
I test the following games with and without steam input support.
Steam's Hollow Knight
Steam's Overcooked 2
the controller doesn't work in game at all but it able to navigate and works fine with the steam overlay in-game.
Does anybody have this issue? is there any workaround?
Post not yet marked as solved
I found that GCMouse not work when I run iOS app on M1 Mac directly, so I want to detect and handle the mouse event via gestureRecognizer or other way. But is there any way to handle middle/right button easily?