remove all my stupid debug messages

This commit is contained in:
Gregory Wells
2025-06-24 16:04:02 -04:00
parent 17a9495a0a
commit cc31fd7d5c
5 changed files with 7 additions and 212 deletions

View File

@@ -1,158 +1,2 @@
#include "vulkan_debugger.h"
#include <instance/vulkan_instance.h>
void vkPopulateDebugMessengerCreateInfo(VkDebugUtilsMessengerCreateInfoEXT* createInfo) {
createInfo->sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT;
createInfo->messageSeverity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT;
createInfo->messageType = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT;
}
// gnBool vkCheckValidationLayerSupport(uint32_t count, const char** layers) {
// uint32_t layerCount;
// vkEnumerateInstanceLayerProperties(&layerCount, NULL);
// if (layerCount == 0) return gnFalse;
// VkLayerProperties* properties = malloc(sizeof(VkLayerProperties) * layerCount);
// vkEnumerateInstanceLayerProperties(&layerCount, properties);
// for (int i = 0; i < count; i++) {
// gnBool layerFound = gnFalse;
// for (int c = 0; c < layerCount; c++) {
// if (strcmp(layers[i], properties[c].layerName) == 0) {
// layerFound = gnTrue;
// break;
// }
// }
// if (layerFound == gnFalse)
// return gnFalse;
// }
// return gnTrue;
// }
// typedef struct vk_userData_t {
// gnDebuggerCallback debuggerCallback;
// void* userData;
// } vkUserData;
// static VKAPI_ATTR VkBool32 VKAPI_CALL vk_debuggerDebugCallback(
// VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
// VkDebugUtilsMessageTypeFlagsEXT messageType,
// const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,
// void* pUserData) {
// struct vk_userData_t userData = *(struct vk_userData_t*)pUserData;
// gnMessageSeverity severity;
// gnMessageType type;
// gnMessageData data = {
// .message = gnCreateString(pCallbackData->pMessage)
// };
// switch (messageSeverity) {
// default: break;
// case VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT: severity = GN_MESSAGE_VERBOSE; break;
// case VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT: severity = GN_MESSAGE_INFO; break;
// case VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT: severity = GN_MESSAGE_WARNING; break;
// case VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT: severity = GN_MESSAGE_ERROR; break;
// }
// switch (messageType) {
// default: break;
// case VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT: type = GN_DEBUG_MESSAGE_GENERAL; break;
// case VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT: type = GN_DEBUG_MESSAGE_VALIDATION; break;
// case VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT: type = GN_DEBUG_MESSAGE_PERFORMANCE; break;
// }
// gnDebuggerCallback callback = *userData.debuggerCallback;
// gnBool result = callback(severity, type, data, userData.userData);
// if (result == gnFalse) return VK_FALSE;
// return VK_TRUE;
// }
// VkResult vk_createDebugUtilsMessengerEXT(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pDebugMessenger) {
// PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)vkGetInstanceProcAddr(instance, "vkCreateDebugUtilsMessengerEXT");
// if (vkCreateDebugUtilsMessengerEXT != NULL) {
// return vkCreateDebugUtilsMessengerEXT(instance, pCreateInfo, NULL, pDebugMessenger);
// }else
// return VK_ERROR_EXTENSION_NOT_PRESENT;
// return VK_SUCCESS;
// }
// void vk_destroyDebugUtilsMessengerEXT(VkInstance instance, VkDebugUtilsMessengerEXT debugMessenger, const VkAllocationCallbacks* pAllocator) {
// PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT) vkGetInstanceProcAddr(instance, "vkDestroyDebugUtilsMessengerEXT");
// if (vkDestroyDebugUtilsMessengerEXT != NULL) {
// vkDestroyDebugUtilsMessengerEXT(instance, debugMessenger, pAllocator);
// }
// }
// gnReturnCode gnCreateDebuggerFn(gnDebuggerHandle debugger, gnInstanceHandle instance, const struct gnDebuggerInfo_t info) {
// debugger->debugger = malloc(sizeof(gnPlatformDebugger));
// if (instance->valid == gnFalse) {
// for (int i = 0; i < instance->instance->instanceMessageCount; i++) {
// info.callback(
// instance->instance->instanceMessages[i].severity,
// instance->instance->instanceMessages[i].type,
// instance->instance->instanceMessages[i].data,
// info.userData
// );
// }
// return GN_INVALID_INSTANCE;
// } else {
// for (int i = 0; i < instance->instance->instanceMessageCount; i++) {
// info.callback(
// instance->instance->instanceMessages[i].severity,
// instance->instance->instanceMessages[i].type,
// instance->instance->instanceMessages[i].data,
// info.userData
// );
// }
// }
// if (instance->instance->instanceMessageCount > 0) free(instance->instance->instanceMessages);
// instance->instance->instanceMessageCount = 0;
// const char* layers[] = {
// "VK_LAYER_KHRONOS_validation"
// };
// if (!checkValidationLayerSupport(1, layers))
// return GN_FAILED_TO_CREATE_DEBUGGER;
// struct vk_userData_t* userData = (struct vk_userData_t*)malloc(sizeof(struct vk_userData_t));
// userData->debuggerCallback = info.callback;
// userData->userData = info.userData;
// VkDebugUtilsMessengerCreateInfoEXT createInfo = {};
// createInfo.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT;
// createInfo.messageSeverity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT;
// createInfo.messageType = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT;
// createInfo.pUserData = (void*)userData;
// createInfo.pfnUserCallback = vk_debuggerDebugCallback;
// VkResult result = vk_createDebugUtilsMessengerEXT(instance->instance->vk_instance, &createInfo, NULL, &debugger->debugger->debugMessenger); if (result != VK_SUCCESS) {
// gnMessageSeverity severity = GN_MESSAGE_ERROR;
// gnMessageType type = GN_DEBUG_MESSAGE_VALIDATION;
// gnMessageData data = {
// .message = gnCombineStrings(
// gnCreateString("Failed to create gnDebuggerObject with api vulkan\n"),
// gnCombineStrings(gnCreateString("Returned with a vulkan error code of: (please do this)"), "")
// )
// };
// info.callback(
// severity,
// type,
// data,
// info.userData
// );
// return GN_FAILED_TO_CREATE_DEBUGGER;
// }
// return GN_SUCCESS;
// }
// void gnDestroyDebuggerFn(gnDebuggerHandle debugger) {
// vk_destroyDebugUtilsMessengerEXT(debugger->instance->instance->vk_instance, debugger->debugger->debugMessenger, NULL);
// }

View File

@@ -5,5 +5,3 @@
typedef struct gnPlatformDebugger_t {
VkDebugUtilsMessengerEXT debugMessenger;
} gnPlatformDebugger;
void vkPopulateDebugMessengerCreateInfo(VkDebugUtilsMessengerCreateInfoEXT* createInfo);

View File

@@ -92,8 +92,11 @@ gnReturnCode createInstance(gnInstanceHandle instance, gnInstanceInfo instanceIn
userData->debuggerCallback = instanceInfo.debugger->info.callback;
userData->userData = instanceInfo.debugger->info.userData;
VkDebugUtilsMessengerCreateInfoEXT debugCreateInfo = {};
vkPopulateDebugMessengerCreateInfo(&debugCreateInfo);
VkDebugUtilsMessengerCreateInfoEXT debugCreateInfo = {
.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT,
.messageSeverity = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT,
.messageType = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
};
debugCreateInfo.pfnUserCallback = vk_debuggerDebugCallback;
debugCreateInfo.pUserData = userData;
createInfo.pNext = &debugCreateInfo;
@@ -102,7 +105,6 @@ gnReturnCode createInstance(gnInstanceHandle instance, gnInstanceInfo instanceIn
}
createInfo.enabledExtensionCount = extensions.count;
createInfo.ppEnabledExtensionNames = extensions.data;

View File

@@ -2,7 +2,6 @@
#include "vulkan_swapchain_support.h"
#include <output_device/vulkan_physical_device.h>
#include "vulkan_surface/vulkan_surface.h"
#include "debugger/gryphn_debugger.h"
#include "textures/vulkan_texture.h"
#include "sync/semaphore/vulkan_semaphore.h"
#include "stdio.h"
@@ -11,50 +10,9 @@ gnReturnCode createPresentationQueue(gnPresentationQueueHandle presentationQueue
presentationQueue->presentationQueue = malloc(sizeof(struct gnPlatformPresentationQueue_t));
vkSwapchainSupportDetails details = vkGetSwapchainSupport(device->physicalDevice.physicalDevice->device, presentationInfo.surface->windowSurface->surface);
if (details.capabilities.currentExtent.width != presentationInfo.imageSize.x || details.capabilities.currentExtent.height != presentationInfo.imageSize.y) {
gnDebuggerSetErrorMessage(device->instance->debugger,
(gnMessageData){
.message = gnCreateString("Image size is unsupposed for presentation queue")
}
);
presentationInfo.imageSize = (gnUInt2){ details.capabilities.currentExtent.width, details.capabilities.currentExtent.height };
}
if (details.formatCount == 0) {
gnDebuggerSetErrorMessage(device->instance->debugger,
(gnMessageData){
.message = gnCreateString("Format count for presentation queue is zero")
}
);
return GN_NO_SUPPORTED_FORMATS;
}
if (details.presentModeCount == 0) {
gnDebuggerSetErrorMessage(device->instance->debugger,
(gnMessageData){
.message = gnCreateString("Present mode count for presentation queue is zero")
}
);
return GN_NO_SUPPORTED_PRESENT_MODES;
}
int index = -1;
VkFormat convertedFormat = vkGryphnFormatToVulkanFormat(presentationInfo.format.format);
VkColorSpaceKHR convertedColorSpace = vkGryphnColorSpaceToVulkanColorSpace(presentationInfo.format.colorSpace);
for (int i = 0; i < details.formatCount; i++) {
if (details.formats[i].format == convertedFormat && details.formats[i].colorSpace == convertedColorSpace) {
index = i;
break;
}
}
if (index == -1) {
gnDebuggerSetErrorMessage(device->instance->debugger, (gnMessageData){
.message = gnCreateString("Unsupported color format passed to Gryphn")
});
return GN_UNKNOWN_IMAGE_FORMAT;
}
VkPresentModeKHR presentMode = VK_PRESENT_MODE_FIFO_KHR;
VkExtent2D extent = {
.width = presentationInfo.imageSize.x,
@@ -66,8 +24,8 @@ gnReturnCode createPresentationQueue(gnPresentationQueueHandle presentationQueue
createInfo.surface = presentationInfo.surface->windowSurface->surface;
createInfo.minImageCount = presentationInfo.minImageCount;
createInfo.imageFormat = details.formats[index].format;
createInfo.imageColorSpace = details.formats[index].colorSpace;
createInfo.imageFormat = convertedFormat;
createInfo.imageColorSpace = convertedColorSpace;
createInfo.imageExtent = extent;
createInfo.imageArrayLayers = 1;
createInfo.imageUsage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT;

View File

@@ -2,7 +2,6 @@
#include "vulkan_texture.h"
#include "output_device/vulkan_output_devices.h"
#include "output_device/vulkan_physical_device.h"
#include "debugger/gryphn_debugger.h"
VkImageType vkGryphnTextureType(gnTextureType type) {
switch(type) {
@@ -245,12 +244,6 @@ void textureData(gnTextureHandle texture, void* pixelData) {
memcpy(data, pixelData, texture->texture->size);
vkUnmapMemory(texture->device->outputDevice->device, texture->texture->buffer.memory);
if (texture->texture->beenWrittenToo) {
gnDebuggerSetErrorMessage(texture->device->instance->debugger, (gnMessageData){
.message = gnCreateString("this texture has alreay been written too with gnTextureData (vulkan) i need to implement the functionality to write to it multible times")
});
}
//gnDevice device, VkImage image, VkFormat format, VkImageLayout oldLayout, VkImageLayout newLayout
VkTransitionImageLayout(texture->device, texture->texture->image.image, texture->info.format, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL);
VkCopyBufferToImage(texture->texture->buffer, texture->texture->image, texture->texture->width, texture->texture->height, texture->device);