當前位置: 首頁>>代碼示例>>Java>>正文


Java VkDebugReportCallbackEXT類代碼示例

本文整理匯總了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;
}
 
開發者ID:LWJGLX,項目名稱:autostack,代碼行數:21,代碼來源:ClearScreenDemoUseNewStack.java

示例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;
}
 
開發者ID:oreonengine,項目名稱:oreon-engine,代碼行數:18,代碼來源:VKRenderEngine.java

示例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;
}
 
開發者ID:httpdigest,項目名稱:lwjgl3-swt,代碼行數:23,代碼來源:ClearScreenDemo.java


注:本文中的org.lwjgl.vulkan.VkDebugReportCallbackEXT類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。