Post

Replies

Boosts

Views

Activity

CAMetalLayer nextDrawable delay with Control Center
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.
5
0
2.8k
Jan ’23
resolveConflictingSavedGames Questions....
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!
1
0
838
Feb ’22
TestFlight any App security issues?
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....
0
0
1k
Jan ’22
Archive build failure in Xcode 12.4
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.
0
0
747
Nov ’21
Shader compiler issue with XCode 12 on iOS 10.1.1
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; }
9
0
2.3k
Nov ’21
CAMetalLayer nextDrawable delay with Control Center
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.
Replies
5
Boosts
0
Views
2.8k
Activity
Jan ’23
resolveConflictingSavedGames Questions....
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!
Replies
1
Boosts
0
Views
838
Activity
Feb ’22
TestFlight any App security issues?
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....
Replies
0
Boosts
0
Views
1k
Activity
Jan ’22
Archive build failure in Xcode 12.4
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.
Replies
0
Boosts
0
Views
747
Activity
Nov ’21
Shader compiler issue with XCode 12 on iOS 10.1.1
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; }
Replies
9
Boosts
0
Views
2.3k
Activity
Nov ’21