本文整理匯總了Java中org.lwjgl.vulkan.VkDebugReportCallbackEXT類的典型用法代碼示例。如果您正苦於以下問題:Java VkDebugReportCallbackEXT類的具體用法?Java VkDebugReportCallbackEXT怎麽用?Java VkDebugReportCallbackEXT使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
VkDebugReportCallbackEXT類屬於org.lwjgl.vulkan包,在下文中一共展示了VkDebugReportCallbackEXT類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: setupDebugging
import org.lwjgl.vulkan.VkDebugReportCallbackEXT; //導入依賴的package包/類
/**
* This function sets up the debug callback which the validation layers will use to yell at us when we make mistakes.
*/
private static long setupDebugging(VkInstance instance, int flags, VkDebugReportCallbackEXT callback) {
// Again, a struct to create something, in this case the debug report callback
VkDebugReportCallbackCreateInfoEXT dbgCreateInfo = VkDebugReportCallbackCreateInfoEXT.callocStack()
.sType(VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT) // <- the struct type
.pNext(NULL) // <- must be NULL
.pfnCallback(callback) // <- the actual function pointer (in LWJGL a Closure)
.pUserData(NULL) // <- any user data provided to the debug report callback function
.flags(flags); // <- indicates which kind of messages we want to receive
LongBuffer pCallback = stackMallocLong(1); // <- allocate a LongBuffer (for a non-dispatchable handle)
// Actually create the debug report callback
int err = vkCreateDebugReportCallbackEXT(instance, dbgCreateInfo, null, pCallback);
long callbackHandle = pCallback.get(0);
if (err != VK_SUCCESS) {
throw new AssertionError("Failed to create VkInstance: " + translateVulkanResult(err));
}
return callbackHandle;
}
示例2: setupDebugging
import org.lwjgl.vulkan.VkDebugReportCallbackEXT; //導入依賴的package包/類
private long setupDebugging(VkInstance instance, int flags, VkDebugReportCallbackEXT callback) {
VkDebugReportCallbackCreateInfoEXT dbgCreateInfo = VkDebugReportCallbackCreateInfoEXT.calloc()
.sType(VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT)
.pNext(0)
.pfnCallback(callback)
.pUserData(0)
.flags(flags);
LongBuffer pCallback = memAllocLong(1);
int err = vkCreateDebugReportCallbackEXT(instance, dbgCreateInfo, null, pCallback);
long callbackHandle = pCallback.get(0);
memFree(pCallback);
dbgCreateInfo.free();
if (err != VK_SUCCESS) {
throw new AssertionError("Failed to create VkInstance: " + VKUtil.translateVulkanResult(err));
}
return callbackHandle;
}
示例3: setupDebugging
import org.lwjgl.vulkan.VkDebugReportCallbackEXT; //導入依賴的package包/類
/**
* This function sets up the debug callback which the validation layers will use to yell at us when we make mistakes.
*/
private static long setupDebugging(VkInstance instance, int flags, VkDebugReportCallbackEXT callback) {
// Again, a struct to create something, in this case the debug report callback
VkDebugReportCallbackCreateInfoEXT dbgCreateInfo = VkDebugReportCallbackCreateInfoEXT.calloc()
.sType(VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT) // <- the struct type
.pNext(NULL) // <- must be NULL
.pfnCallback(callback) // <- the actual function pointer (in LWJGL a Closure)
.pUserData(NULL) // <- any user data provided to the debug report callback function
.flags(flags); // <- indicates which kind of messages we want to receive
LongBuffer pCallback = memAllocLong(1); // <- allocate a LongBuffer (for a non-dispatchable handle)
// Actually create the debug report callback
int err = vkCreateDebugReportCallbackEXT(instance, dbgCreateInfo, null, pCallback);
long callbackHandle = pCallback.get(0);
memFree(pCallback); // <- and free the LongBuffer
dbgCreateInfo.free(); // <- and also the create-info struct
if (err != VK_SUCCESS) {
throw new AssertionError("Failed to create VkInstance: " + translateVulkanResult(err));
}
return callbackHandle;
}