Posts

Post not yet marked as solved
3 Replies
0 Views
Ok if there is no new setting in Xcode for giving access to third party drivers then the problem must be somewhere else. I am already in contact with the vendor.
Post not yet marked as solved
18 Replies
0 Views
Same problem. After I installed macOS 11.0 beta (20A5395g) and Xcode 12.2 beta 3 (12B5035g) all my mac projects are crashing with the same error message. The symbolic breakpoint mentioned above by aussiebloke solves the problem.
Post not yet marked as solved
3 Replies
0 Views
I would also like to know if there is a SwiftUI solution for this.
Post not yet marked as solved
31 Replies
0 Views
TextField on macOS needs a label and not only a placeholder (all label in forms on macOS should auto align) Sliders and Labels on macOS seems to have a wrong vertical alignment TouchBar is linked to the control that has the focus. More often it makes sense to show the TouchBar when the window appears or the app launches Missing alignment guide for SwiftUI controls having labels. You can either have the leading, trailing or center but not the position behind the label where the control starts The layout of SwiftUI elements on macOS have still some issues
Post not yet marked as solved
1 Replies
0 Views
I found a similar discussion for this problem in the internet. But to be honest the solution they provide looks more like an ugly workaround. Instead using an array of observable items they are using unique ids for each list item and store them into a dictionary. Then they have another array with the keys. In the SwiftUI list they are iterating with ForEach over the keys and pass the dictionary items to the list view. The dictionary item is then used for the detail view. This works but to be honest I hope someone has a better solution for this very common problem. In my application I have a sidebar with a list of items containing an image/name/subtitle and a detailed view for changing these values. After leaving the details view the changes are stored correctly in the array. But the publisher for the list does not inform the SwiftUI view that it has to update the list.
Post marked as solved
11 Replies
0 Views
We are now in development. Can this also happen after we released our app? In my opinion I did something wrong with the NavigationView and frame modifier. After this the sidebar was collapsed. But if this happen also in the release version even the code is correct the users cannot delete the container folder.
Post marked as solved
11 Replies
0 Views
Seems I have the same problem. First both sidebar and detail view were visible. Once the sidebar is collapsed there is no way to bring it back. Any ideas to solve this in code?
Post marked as solved
3 Replies
0 Views
Thank you, thats exactly what I need.
Post not yet marked as solved
4 Replies
0 Views
It seems that the commit() causes the memory increase. The MTLCommandQueue makeCommandBuffer call is not the problem. Only when you commit your command buffer you will the memory usage going up. autoreleasepool{} does not make a difference. Maybe it is not a bug but data stored in memory for debugging with Xcode.
Post marked as solved
3 Replies
0 Views
Hi Jim,this solved the problem. I hope Apple will give us some additional alignments like .leftControlAlignment and .rightControlAlignment similar to .firstTextBaseline and .lastTextBaseline that we already have for Text(). Then we don't need to use custom alignment guides for all the controls with labels. But this works perfect. Thank you for your good explanation.
Post not yet marked as solved
3 Replies
0 Views
In the documentation it is written that MTLFunctionConstantValues are supported in mac 10.12 and newer. You write that you are testing with 10.11. It seems that this is the reason why you get the errors.https://developer.apple.com/documentation/metal/mtlfunctionconstantvaluesMaybe I am wrong but as I understand the feature set table the number of function constants mentioned there has nothing to do with the API calls or the attribute function_constant(0).
Post not yet marked as solved
3 Replies
0 Views
After pulling out my last hair I found the problem:If you don't set a label on the blit encoder then instruments shows this command in the DMA channel.If you set a label like in the code below (line 4) then the command uses the GPUs BLIT channel.if let commandBuffer = engine.commandQueue.makeCommandBuffer() { commandBuffer.label = "Copy Image to GPU [\(processorID)]" if let encoder = commandBuffer.makeBlitCommandEncoder() { encoder.label = "Copy Image to GPU [\(processorID)]" encoder.copy(from: inputBufferSystemMemory, sourceOffset: 0, to: inputBuffer, destinationOffset: 0, size: inp encoder.endEncoding() } commandBuffer.commit() }Maybe someone knows if this is correct otherwise I would file a radar because for me it looks like a bug. Unfortunately I cannot add the screenshots to show the gpu channels from instruments.
Post not yet marked as solved
14 Replies
0 Views
I don't want to open a new thread because I think it perfectly fits into this one. Even some years past already.I develop a metal macOS app on a 2018 MacBook Pro. Metal System Trace shows me five different channels for my second GPU. Maybe someone has an idea how the GPU execution model in Metal works in detail.For example I have one MTLCommandBuffer with three different encoders.a) render encoder which renders a textureb) this texture is the input for the next compute encoder which writes its results into a MTLBufferc) a blit encoder uses this buffer for syncronization with the CPU memoryIn one WWDC 2019 video it was showed how the GPU channels work and that the depencies will result in the correct execution order.But what I see in instruments is that sometimes the execution order is exactly like I encoded the commands, but sometimes not. Instead of a-b-c there is also b-a-c. And then the result is completely wrong.As I saw textureBarrier() is now deprecated. But I am also not sure if this is the correct way of syncronization. I still want parallism in the GPU channels. But outputs from one encoded command should be used as inputs in the second command or render encoder as I encoded them into the MTLCommandBuffer.As I understand the scheduling of metal command buffers seperating the single tasks into several command buffers will not be a solution for this problem. The command buffers will be executed in the order they are enqueed but not syncronized with their outputs (correct me if I am wrong).So how can I enqueue commands into one ore several command buffers and be sure their execution order in time is exactly the one I can see in the Xcode depency graph?