render pass stuff for multisampling

This commit is contained in:
Greg Wells
2025-07-05 17:02:38 -04:00
parent 2ffa5adbb9
commit d567ce0beb
8 changed files with 51 additions and 11 deletions

View File

@@ -8,7 +8,6 @@ typedef enum gnDeviceType {
} gnDeviceType;
typedef enum gnMultisampleCountFlags {
GN_SAMPLES_NONE = 0,
GN_SAMPLE_BIT_1 = 1 << 0, // 0x01
GN_SAMPLE_BIT_2 = 1 << 1, // 0x02
GN_SAMPLE_BIT_4 = 1 << 2, // 0x04

View File

@@ -2,6 +2,7 @@
#include "stdint.h"
#include "utils/gryphn_image_format.h"
#include "utils/gryphn_error_code.h"
#include "core/src/output_device/gryphn_physical_output_device.h"
#include "gryphn_handles.h"
typedef enum gnRenderPassStage {
@@ -32,6 +33,8 @@ typedef struct gnRenderPassAttachmentInfo_t {
gnImageLayout initialLayout;
gnImageLayout finalLayout;
gnMultisampleCountFlags samples;
} gnRenderPassAttachmentInfo;
typedef struct gnSubpassAttachmentInfo_t {
@@ -42,7 +45,11 @@ typedef struct gnSubpassAttachmentInfo_t {
typedef struct gnSubpassInfo_t {
uint32_t colorAttachmentCount;
gnSubpassAttachmentInfo* colorAttachments;
gnSubpassAttachmentInfo* depthAttachment;
uint32_t resolveAttachmentCount;
gnSubpassAttachmentInfo* resolveAttachments;
} gnSubpassInfo;
#define GN_SUBPASS_EXTERNAL -1

View File

@@ -2,6 +2,7 @@
#include "utils/gryphn_image_format.h"
#include "utils/gryphn_error_code.h"
#include "utils/math/gryphn_vec3.h"
#include "core/src/output_device/gryphn_physical_output_device.h"
#include <gryphn_handles.h>
typedef enum gnTextureType {
@@ -18,6 +19,7 @@ typedef enum gnTextureWrap {
typedef struct gnTextureInfo {
gnExtent3D extent;
gnMultisampleCountFlags samples;
uint32_t mipmapLevels;
gnTextureType type;
gnImageFormat format;