The highest value in General -> Deployment Info -> Deployment Target pulldown in Xcode 11.5 on my system is 11.3.However, default tvOS simulator is running 11.4. Also, creating a new tvOS project shows target 11.4, but greyed out.Should I file a bug, or am I misunderstanding the situaiton (I've been away from Xcode for a while). Thanks.
Post
Replies
Boosts
Views
Activity
Any reason to expect a texture gather on a 2D single channel ushort texture in a fragment shader to not work in Simulator Version 11.5 (921.9.1) on
MacBook Pro (Retina, 15-inch, Mid 2015) with AMD Radeon R9 M370X 2 GB ? (It's returning 0x1B for all four values)
When target is Apple TV 4K device, it works as fine.
When doing a forums search with a tag and a keyword the results are not ordered by time.
For example a search for "[forum feedback]order"
Would also be nice to have option to order results by time ascending/descending, number of answers, number of responses, number of views.
Anyone else have an issue where Instruments gets stuck "Analyzing, Transferring data" when ending a capture when "Options for: Metal Applications" -> "Performance Limiters" is enabled?
After Instruments gets into this state, it ignores Quit, and must be Force Quit.
Instruments Version 11.5 (11E608c)
MacOS 10.15.5 (19F101)
tvOS 13.4.6 (17L570)
Is there a way to run, debug, and profile an app from Xcode on an AppleTV 4K when the HDMI port is not connected?
Ideally, there would be a way to configure the Apple TV to pretend that it's connected to a 4K or 1080p display.
QuickTime Player's remote device Movie Recording feature could be used to view content in near real time (with some system performance impact).
In a fragment shader, an expression that adds together the four components of a ushort4 is the heaviest line in the profile.
Is there a faster way to do this?
The relevant lines from shader are:
ushort4 iterationSamples;
iterationSamples=tex2D.gather(quadSampler, inFrag.m_TexCoord);
ushort totalIterations=(iterationSamples.x+iterationSamples.y)+(iterationSamples.z+iterationSamples.w);	// 40% of shader time on this line
Device is Apple TV 4K running tvOS 13.4.6 (17L570)
Xcode 11.5 (11E608c)
Is there an explanation why "Capture GPU Frame" reports this fragment shader uses Float instead of Half instructions.
fragment half4 texturedQuadFragment/*ConstantColorNoParameters*/()
{
METAL_CONST half4 color={0.5h,0.25h,0.75h,1.0h};
return color;
}
The Pipeline Statistics, Remarks pane reports:
High Float-to-Half Ratio
A relatively high amount of floating-point operations use 32-bit float data types
Instead, use 16-bit half data types to increase performance.
Ratio is 100.0% - TextureQuadShader.metal:texturedQuadFragmentMultiline Total Number of Instructions 4 Performance, Counters, Fragment Shader reports:
FS ALU Instructions, 4,216,440
FS ALU Float Instructions, 98.5%
FS ALU Half Instructions, 1.51% Assembly listing doesn't indicate Float usage:
define <4 x half> @texturedQuadFragment() local_unnamed_addr #0 {
ret <4 x half> <half 0xH3800, half 0xH3400, half 0xH3A00, half 0xH3C00>
}
Fragment shader is rendering to CAMetalLayer Display Drawable, 1920x1080 BGRA8Unorm
Apple TV 4K
tvOS 13.4.6 (17L570)
Xcode 11.5 (11E608c)
MacOS 10.15.5 (19F101)
When doing GPU Frame Capture to AppleTV HD I see a message
“Profiling GPU trace: This may take a while…” after a minute I see
“Deployment Target is lower than device OS version. Shader performance data may not be available.”
However, I’m using the current release version [tvOS 13.4.8, Xcode 11.6 (11E708) on MacOS 10.15.6 (19G73)]
with the target's Deployment Target set to 13.4.
“Pipeline Statistics” page can be displayed and shows graphs and instruction counts, but has 0 for Total Function Execution Time.
Clicking on Performance (or other GPU options) in Debug Navigator causes another minute of
“Profiling GPU trace: This may take a while…”
during which I can’t select a different GPU display option.
Any suggestions or should I just file a radar?
These messages are appearing in the text output of the debug area when running my metal app under Simulator for AppleTV 4K.
2020-08-10 22:30:57.937497-0700 Mandelbits[3074:322942] libMobileGestalt MGIOMFBSupport.c:145: screen parameters are unexpected: MGScreenClass3840x2160x2x80 SCREENTYPE(3840,2160,2, 80) 2020-08-10 22:30:57.937639-0700 Mandelbits[3074:322942] screen parameters are unexpected: MGScreenClass3840x2160x2x80 SCREENTYPE(3840,2160,2, 80) The message changes to this for "AppleTV 4K (1080p)".
2020-08-10 22:50:04.430681-0700 Mandelbits[3316:340765] libMobileGestalt MGIOMFBSupport.c:145: screen parameters are unexpected: MGScreenClass1920x1080x1x40 SCREENTYPE(1920,1080,1, 40) 2020-08-10 22:50:04.430870-0700 Mandelbits[3316:340765] screen parameters are unexpected: MGScreenClass1920x1080x1x40 SCREENTYPE(1920,1080,1, 40) Any idea what these mean? App still starts up and runs.
Environment: Simulator 12.0 (940.14), Xcode 12.0 beta 4 (12A8179i), macOS 10.15.6 (19G73).
Is there a way to test Switch Control on AppleTV without a dedicated Switch device? iOS can be configure so a tap anywhere on the screen produces a switch click response, but I don't see that capability in tvOS.
The accessibilityCustomActions I've added to my app show up in the little Switch Control Menu that appears when a switch is activated in iOS. However, the accessibilityCustomActions do not appear in tvOS 13.4.8.
Do I need to configure accessibilityCustomActions differently in tvOS than iOS?
Are tap (not press) and panning available via tvOS Switch Control Accessibility?
In iOS, the little switch control menu has a Gestures sub-menu that allows a variety of touch gestures to be performed, but I don't see a similar capability when Switch Control is enabled in tvOS 13.4.8.
My AppleTV app has a very simple UI - Tap to Zoom In
Press to Zoom Out
Swipe to pan around (continuous panning, not moving through items)
which I'm trying to make accessible.
The FPS drops by 4 on AppleTV 4K (8 on HD) when I enable a UIView that contains 6 UIButtons (Type=System), each with a SF Symbol as the background image and no label.
Is this expected?
Are there any suggestions for the most performant way to mix UIKit controls with Metal?
Anyone notice a Metal performance hit on devices running tvOS 14.0.1 vs 13.4.8, possibly due to compositor (backboardd) using more time?
In 13.4.8 Instruments A10X State is typically 2 channels active. However, in 14.0.1 it is typically 3 channels active.
The tvOS App template project asset catalog "Top Shelf Image Wide" entry has slots for images labeled "Apple TV" and "tvOS Marketing".
I assume the "Apple TV" entry is for images as described in the tvOS Human Interface Guidelines.
Can anyone provide an explanation of (or pointer to documentation of) the "tvOS Marketing" images slots.