public static void SetDebugMarkerName(this VkCommandBuffer obj, Device dev, string name) { if (!dev.DebugMarkersEnabled) { return; } VkDebugMarkerObjectNameInfoEXT dmo = new VkDebugMarkerObjectNameInfoEXT(VkDebugReportObjectTypeEXT.CommandBufferEXT, (ulong)obj.Handle.ToInt64()) { pObjectName = name.Pin() }; Utils.CheckResult(vkDebugMarkerSetObjectNameEXT(dev.VkDev, ref dmo)); name.Unpin(); }
public static void SetDebugMarkerName(this VkFence obj, Device dev, string name) { if (!dev.DebugMarkersEnabled) { return; } VkDebugMarkerObjectNameInfoEXT dmo = new VkDebugMarkerObjectNameInfoEXT(VkDebugReportObjectTypeEXT.FenceEXT, obj.Handle) { pObjectName = name.Pin() }; Utils.CheckResult(vkDebugMarkerSetObjectNameEXT(dev.VkDev, ref dmo)); name.Unpin(); }
/// <summary> /// if debug marker extension is activated, this will set the name for debuggers /// </summary> public void SetName(string name) { this.name = name; if (!Dev.DebugMarkersEnabled) { return; } VkDebugMarkerObjectNameInfoEXT dmo = DebugMarkerInfo; dmo.pObjectName = name.Pin(); Utils.CheckResult(vkDebugMarkerSetObjectNameEXT(Dev.VkDev, ref dmo)); name.Unpin(); }
private void SetDebugMarkerName(VkDebugReportObjectTypeEXT type, ulong target, string name) { Debug.Assert(_setObjectNameDelegate != null); VkDebugMarkerObjectNameInfoEXT nameInfo = VkDebugMarkerObjectNameInfoEXT.New(); nameInfo.objectType = type; nameInfo.@object = target; int byteCount = Encoding.UTF8.GetByteCount(name); byte *utf8Ptr = stackalloc byte[byteCount]; fixed(char *namePtr = name) { Encoding.UTF8.GetBytes(namePtr, name.Length, utf8Ptr, byteCount); nameInfo.pObjectName = utf8Ptr; VkResult result = _setObjectNameDelegate(_device, &nameInfo); CheckResult(result); } }