So I have a Metal App up and running at a nice solid 60 fps.....Sometimes when I swipe up the control center and then slide it down the fps dips to 30-40fps. It hangs there for awhile and then goes back up to 60 fps. Sometimes it fails to go back to 60 fps and just sits at 40 fps.I have tried several of the Metal Examples and the same behavior is observed.I tracked it down and the delay is being caused by the nextDrawable command. I call this as late in the frame as possible and I am running metal from the same thread via a Display link just like the examples. However, even the examples suffer from stutter if the Control Center is brought up during execution.Minimizing\switching the app and then bringing it back up to focus magically fixes the issue. This is also happening in the Metal examples.Does anyone have any ideas what could be causing this? Many thanks for anyones help.
Post
Replies
Boosts
Views
Activity
So I have access to the conflicting save games. I go through the save games and then pick the one with the most current time and load it.
Now my question is when calling resolveConflictingSavedGames. It requires a conflictingSavedGames array that includes all the conflicting save games. Do I include ALL the conflicting save games I found including the one I just loaded with the most recent time?
Also in the resolveConflictingSavedGames completion handler what exactly do I do? Do I just check for errors and nothing else?
Thank you for any help I can get!
So I have started beta testing my game using TestFlight with some friends I know. Everything is working fine.
Now I wish to expand my testing by including many more beta testers who of course I would not know. I would just invite them to test the game for me.
Are there any security risks with doing this? ie. Could they grab the app and then distribute it on jail broken phones? Or somehow get access to my source code since the app is running on TestFlight?
Thanks for anyone that can answer my concerns....
Hello I am trying to archive my product for submission to the App Store and I am coming across this error:
Could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1205.0.22.9.0_0' Reader: '1200.0.32.29_0')', using libLTO version 'LLVM version 12.0.0, (clang-1200.0.32.29)' for architecture armv7
I am building on Xcode 12.4 and on macOS Catalina 10.15.7
I am on a Mac Mini (Late 2012)
I can compile and run the project on all my devices. But archiving the product generates this error. Is there any way to resolve this issue?
Thanks in advance for any help anyone can provide.
Hello,
So before on XCode 10.3 on MacOS Mojave my code worked without any problems.
However I have since upgraded to XCode 12.4 with MacOS Catalina (10.15.7)
Now when I attempt:
id MTLRenderPipelineState pcMTLRenderPipeLineState = [pcMTLDevice newRenderPipelineStateWithDescriptor: pcMTLRenderPipeLineDesc error: &pcError];
I get the following error:
Compiler failed to build request
CMetalPipeLineState::Create: Failed to generate a pipeline state object: Error Domain=AGXMetalA7 Code=1 "Could not resolve texture/samplers references" UserInfo={NSLocalizedDescription=Could not resolve texture/samplers references}
Does anyone have any idea what could be causing this?
The full debug output is shown below:
CMetalPipeLineState::Create: Descriptor: MTLRenderPipelineDescriptorInternal: 0x1701b5c40
{
"Alpha to Coverage" = 0;
"Alpha to One" = 0;
"Blend States" = (
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = "MTLPixelFormatBGRA8Unorm_sRGB";
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
},
{
"Alpha Blend Operation" = MTLBlendOperationAdd;
"Blending Enabled" = 0;
"Destination Alpha Blend Factor" = MTLBlendFactorZero;
"Destination RGB Blend Factor" = MTLBlendFactorZero;
"Pixel Format" = MTLPixelFormatInvalid;
"RGB Blend Operation" = MTLBlendOperationAdd;
"Source Alpha Blend Factor" = MTLBlendFactorOne;
"Source RGB Blend Factor" = MTLBlendFactorOne;
"Write Mask" = RGBA;
}
);
"Depth Attachment Format" = MTLPixelFormatDepth32Float;
"Fragment Depth Compare Clamp Mask" = 0x0;
"Fragment Function" = "MTLDebugFunction: 0x170272200 - _MTLFunctionInternal: 0x170196da0\n{\n attributes = \"null\";\n device = \"AGXA7Device: 0x101728000\\n{\\n name = \\\"Apple A7 GPU\\\";\\n}\";\n functionType = MTLFunctionTypeFragment;\n name = \"diffuse_main_ps\";\n}";
"Rasterization Enabled" = 1;
"Sample Count" = 1;
"Sample Coverage" = 1;
"Sample Mask" = 0xffffffffffffffff;
"Stencil Attachment Format" = MTLPixelFormatInvalid;
"Vertex Depth Compare Clamp Mask" = 0x0;
"Vertex Array" = "null";
"Vertex Enabled" = 1;
"Vertex Function" = "MTLDebugFunction: 0x170271f40 - _MTLFunctionInternal: 0x170196720\n{\n attributes = \"null\";\n device = \"AGXA7Device: 0x101728000\\n{\\n name = \\\"Apple A7 GPU\\\";\\n}\";\n functionType = MTLFunctionTypeVertex;\n name = \"diffuse_vp_main_vs\";\n}";
label = "null";
maxTessellationFactor = 16;
tessellationControlPointIndexType = MTLTessellationControlPointIndexTypeNone;
tessellationFactorFormat = MTLTessellationFactorFormatHalf;
tessellationFactorScaleEnabled = 0;
tessellationFactorStepFunction = MTLTessellationFactorStepFunctionConstant;
tessellationOutputWindingOrder = MTLWindingClockwise;
tessellationPartitionMode = MTLTessellationPartitionModePow2;
}
So by some weird twist of fate I am able to save and read iCloud files from my game app using GameKit. So you maybe wondering what the problem would be and it has to do with Managing iCloud storage.
When I go to Settings>iCloud>Storage>Manage Storage
I see my app and ONLY my app. It has an ugly name (not the one I display for the app) and it also shows a default icon as opposed to my app icon.
Why is it that ONLY my app shows up here and absolutely NONE of my other installed 3rd party apps? I have NOT currently released my app on the app store as I am in development. But I have over 32 apps installed on the phone and ABSOLUTELY none of them show up in iCloud Manage Storage. Of course it would be impossible that none of these apps use iCloud since they are all games and they say they support Game Center to save game progress.
Does anyone have an idea of why this is? Also why does the iCloud not pickup my app icons as well as the display name for the app. Or better yet how can I have it so that my app does not show up in iCloud Manage Storage?
Thanks for any help!
So my app name is already taken. Actually all app names are taken no matter what I pick even though there are NO games on the app store with said app names and no trade marks have been filled. I still don't understand what is going on in this regard.
My question is this can I register the app with a place holder name such as "Booger Gobblers 666 ***" then later delete this app and re register it with the actual trade marked name? Or is this not allowed? Of course I will only do this for test purposes and will not publish on the app store with this name (It would probably be rejected anyways based on the name).
I need to do this in order to continue developing the app by connecting it to Game Center and using the GameKit API.
Thank you in advance for any help!