Bill Hollings
Forum Replies Created
-
AuthorPosts
-
MoltenGL is actively supported.
However, at this time, we are not planning to move beyond OpenGL ES 2.0, unless there is significant interest…nor do we plan to add Metal 2 support at this time.
…Bill
MoltenVK 0.18.1 is available for download now, and includes support for larger textures.
Please download and let us know whether this fixes the issue for you.
…Bill
We are making these changes now. Do you have a sample app that includes a large texture…so we can test it to make sure it works in the way you are using it?
…Bill
Thanks for identifying the issue with
gl_FragDepth
. It is indeed not behaving correctly. We have fixed this now…and it will appear in the next release of MoltenVK.Sampler arrays are new in Metal2 and support for them has not yet been added to MoltenVK. Please look for it later in the year.
…Bill
2017-06-22 at 12:24 pm in reply to: How embed MoltenVK iOS framework into my project with CMake? #1271I’m glad you resolved your issue. Thanks for sharing it here.
You also may be interested to know that with the new 0.18.0 release of Molten, you can now use MoltenVK as a dynamic library on iOS (and macOS).
…Bill
Okay. Thanks for the dev history explanation.
…Bill
Thanks very much for letting us know about this! Great work!
Would you allow us to publicize this through our Twitter feed and future press releases?
Thanks…
…Bill
MoltenVK does not currently use iOS Metal Heaps. They will be introduced in an upcoming release.
…Bill
2017-05-08 at 7:57 pm in reply to: Getting the Metal from vulkan types to call insertDebugCaptureBoundary #1256Right. Unfortunately…there is nothing in the current version of MoltenVK that can help with that. We can look to add the capability to make a distinct call to insert a debug capture boundary in a future release.
In the meantime…I assume you are using multiple queues for performance through concurrency? Is it possible to temporarily use your presentation queue for your texture manipulation efforts, until you determine what the problem is through a GPU frame trace?
…Bill
2017-05-08 at 6:23 pm in reply to: Getting the Metal from vulkan types to call insertDebugCaptureBoundary #1254Is the problem that your effort is not happening in a queue that ends up being presented at all?
…Bill
2017-05-08 at 5:07 pm in reply to: Getting the Metal from vulkan types to call insertDebugCaptureBoundary #1252MoltenVK automatically handles that for you as part of the Vulkan
vkQueuePresentKHR()
call…so that you can capture GPU frames.As with any app, you need to ensure that within your Xcode Scheme, your app is being run in Debug mode and GPU Frame Capture is enabled.
Please try it out with the Demo apps that come with MoltenVK, and confirm that it is working. If you are still having trouble, please expand on how you are using it, and what might be different between your app and the MoltenVK Demo apps.
…Bill
2017-04-24 at 3:37 pm in reply to: MoltenShaderConverter does only support vertex & fragment shaders? #1228I don’t have a strict timeline to offer at this point…but it is a high priority for us…so work should begin within the next few weeks…with delivery a couple of months out.
…Bill
Good feedback. I appreciate you letting us know your results with that texture size.
Unfortunately…it’s not currently possible to do either of what you are asking.
The
VkDeviceMemory
objects that back Vulkan image objects, are in turn backed byMTLBuffers
. Based on your feedback, we can look at re-factoring how memory management works with textures within MoltenVK, but that will require some development effort, and wouldn’t be available for several weeks.And unfortunately, the other option…of applying an existing
MTLTexture
to aVkImage
…does not exist within the MoltenVK API.What is your timing on needing this kind of capability?
…Bill
Under Vulkan, device memory is allocated and populated separately from the creation of a buffer or image on that memory.
In order to support this behaviour in the general sense, currently, all device memory allocations under MoltenVK are backed by a
MTLBuffer
. Consequently, device memory allocations are limited by the size of aMTLBuffer
on the runtime platform.…Bill
2017-04-19 at 9:40 am in reply to: vkGetPhysicalDeviceSurfaceSupportKHR sometimes returns presentSupport as false #1216I have not been able to replicate this on a MacBook 2014 running Sierra 10.12.4.
The
presentSupport
always comes back astrue
for either the discrete or integrated GPU.Normally, the only reason why that value would come back as
false
should be if the GPU reports that it is running headless (with no display attached)…which should never happen on a MacBook.The fact that restarting your computer resets this issue indicates that it might be an issue within Apple’s Metal drivers on your particular platform. What Mac and OS X version are you using?
…Bill
You are entirely correct. As you expected, the format
VK_FORMAT_B8G8R8A8_SRGB
is indeed supported as a surface format on both macOS and iOS by MoltenVK and Metal.The value
VK_FORMAT_A8B8G8R8_SRGB_PACK32
is being reported incorrectly by thevkGetPhysicalDeviceSurfaceFormatsKHR()
function. TheVK_FORMAT_B8G8R8A8_SRGB
value should be reported instead.We’ll fix this for the next release.
Thanks for pointing out this issue.
…Bill
2017-04-05 at 9:56 am in reply to: MoltenShaderConverter does only support vertex & fragment shaders? #1211Thanks for supporting MoltenVK in your game engine, and thanks for including the link to it.
The shader converter does not currently support conversion of Tessellation or Compute shaders from SPIR-V.
However, both features are a top priority for us, and will be under development very soon. You should expect to see them soon.
Regards…
…Bill
2017-04-04 at 1:46 pm in reply to: vkGetPhysicalDeviceSurfaceSupportKHR sometimes returns presentSupport as false #1209It’s hard to see how that is happening. The logic is pretty simple for returning that value.
Are you encountering this on iOS or OS X?
Is there any pattern to when it returns one value or the other?
Are you able to provide us with instructions or sample code in order to reproduce the issue?
…Bill
Hi Alex…
MoltenVK is a Vulkan implementation that runs on top of Metal on macOS and iOS.
The Xcode iPad/iPhone simulator does not support Metal.
So…you (like all developers using Metal) need to compile and run your code using a real iPad or iPhone device.
…Bill
Hi Alex…
Thanks for your interest in MoltenVK.
MoltenVK is a standard implementation of Vulkan, and works like other implementations, using the same Vulkan C bindings. For iOS, you link to the MoltenVK framework within your project (typically Xcode).
We have not tested MoltenVK with VulkanSharp, but as long as you can access the standard Vulkan API through VulkanSharp, and have the ability to link to the MoltenVK iOS framework within your dev environment, it should work.
Regards…
The MoltenVK Team
At present, we are focused on developing the driver layer features of Vulkan on iOS and macOS.
We are aware that support for higher layers on these platforms is necessary, and have engaged in discussions with LunarG about working together to add these platforms to the layer frameworks.
Unfortunately, I can’t give you a timeframe yet for delivery of those capabilities.
…Bill
Currently, the
VK_MVK_macos_surface
andVK_MVK_ios_surface
extensions are similar to theVK_KHR_android_surface
extension, and for the same reasons. Each GPU device is expected to be able to render to the system display, and therefore no equivalent query functions are currently provided.Such functionality may be added to either extension in the future should it proved needed.
…Bill
I’m not sure why you are having trouble with the Triangle and Cube demos in
VulkanSamples
. I’ve just tried downloadingMolten
andVulkanSamples
, as you have, and it builds and runs fine.The error is happening within Xcode’s built-in copy operation. Perhaps have a look at the files within the Xcode Copy Bundle Resources Build Phase, and verify that Xcode has permissions to the
VulkanSamples
folder.Regarding the Cinder demo, unfortunately, it is not yet publicly available. We are working to get it released through the Cinder team.
…Bill
2016-12-28 at 10:00 pm in reply to: iOS prints VK_ERROR_FEATURE_NOT_PRESENT: vkCmdDrawIndexed(): #1177As the error suggests, the Metal device that you are using does not support drawing with a non-zero vertex or instance base, which is used by the Hologram demo.
You require an A9X GPU (iOS_GPUFamily3_v1), or OS X/macOS (OSX_GPUFamily1_v1) to support that feature.
In your app, you can determine the availability of this feature by calling the
vkGetPhysicalDeviceMetalFeaturesMVK()
function as defined invk_mvk_moltenvk.h
.…Bill
Sorry to hear you are having trouble.
Did you follow the instructions in the Installation section of the
README_MoltenVK_Demos.md
document…including retrieving thebrenwill
version of the LunarG demos (not theLunarG
version), and making the required change to the symbolic link to theVulkanSamples
directory?…Bill
-
AuthorPosts