Does this user have display zoom on in their system preferences?
I use it since my eye sight isn’t great, but if I don’t turn it off before playing games they looked weird. I actually try and accommodate display zoom when I write games, just to be nice to those that need it on.
Thanks for your answer. I will ask to this user about this, but the difference is huge!! the game is unplayable… I already have a bad review because of this;(
There is something I could do through coding?
It is hard to say without knowing what is already going on.
Are you passing around any display size parameters that might be getting reset? Did you archive your app, then load it via AppLoader onto the device? I was told this by an App Store tester that this is how they test apps. It usually shows problems.
You don’t have an iPhone 8 to test on? Did you test on any iOS hardware or just always in the simulator?
The user who send me this bug is telling me that the display zoom was the problem. There is a way to check if the display zoom is enable and put a message to the user when the game starts?
I need a device with this problem in order to see what parameter is changing and then adjust the code. Without a device (the simulator doesn´t have this option) I can´t be sure so I can´t upload an update… I´m trying to find a friend with a proper device to test this.
Garz - You will need to use ObjC or Swift to access any iOS native libraries.
If you have not done platform specific code with cocos2dx, I would recommend to do the following:
I would create 1 header file and 2 C++ files, ZoomLevelHelper.h and rename one cpp file to ZoomLevelHelper_iOS.mm, and the other to ZoomLevelHelper_Android.cpp. Create the class ZoomLevelHelper in the header with a simple static method maybe like static float getZoomLevel();
In the ZoomLevelHelper_iOS.mm, wrap the file with a #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) //can now use objC AND import iOS native libraries to use the code you found in the example above. //implement the float getZoomLevel(); to check that standard or zoomed value. #endif // CC_TARGET_PLATFORM == CC_PLATFORM_IOS
For the ZoomLevelHelper_Android.cpp
Wrap the file with #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) #endif // CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID
and just return some default value.
Then from AppDelegate, you can call float zoomLevel = ZoomLevelHelper::getZoomLevel();
You will probably end up using different names and maybe different methods like make it a bool bool usesStandardZoom(). Up to how you want to do the logic, but you will need to use iOS code.
Also – Congrats on Apple feature! It looks like the app is currently featured on the Apple AppStore!
Thanks for your response @tdebock. I ’m out for 2 days because of my other work but i will try to fix this next monday. For now i just update the info in the App Store informing about this bug.
About the Apple feature… i checked the US AppStore all day and I’m very happy because the game is like the 80 in the action games ranking but this is not like an Apple feature right?
I’m checking the App Store from Spain so maybe the store is loading different … Did you see our game in other section?
Thanks again for your help. I really appreciate it.
Hi! the problem is that the Log of the screen size returns a different value with the zoom display enable. I setup the different resolutions one by one with the simulator but i didn´t expect this problem with the Zoom display;(
I already correct this for the iphone 6+, 7+ and 8+ but for the iPhone Xr and the XSMax i can´t find the zoom resolution… An update is on the way with this fixed but in the Xr and XSMax the user get a message into the app to disable the zoom mode… Is not the best solution for now but hopefully i get more positive reviews;(
has anyone the resolutions of this devices with the zoom enable?