multisampling in metal

This commit is contained in:
Greg Wells
2025-07-09 13:27:06 -04:00
parent 07d4e13f20
commit 89ea72b341
11 changed files with 59 additions and 20 deletions

View File

@@ -1,5 +1,7 @@
#include "metal_commands.h"
#include "shader_module/metal_shader_module.h"
#include "renderpass/metal_render_pass.h"
#include "utils/math/gryphn_math.h"
void metelBeginRenderPass(gnCommandBuffer buffer, gnRenderPassInfo passInfo) {
int currentColorAttachment = 0;
@@ -127,8 +129,9 @@ void metalBindUniform(gnCommandBufferHandle buffer, gnUniform uniform, uint32_t
];
} else if (uniform->uniform->bindings[i].type == GN_IMAGE_DESCRIPTOR) {
gnImageUniformInfo info = *(gnImageUniformInfo*)uniform->uniform->bindings[i].data;
[encoder setFragmentTexture:info.texture->texture->texture atIndex:
buffer->commandBuffer->boundGraphcisPipeline->graphicsPipeline->fragmentShaderMaps.sets[set].bindings[info.binding]];
uint32_t index = buffer->commandBuffer->boundGraphcisPipeline->graphicsPipeline->fragmentShaderMaps.sets[set].bindings[info.binding];
[encoder setFragmentTexture:info.texture->texture->texture atIndex:index];
[encoder setFragmentSamplerState:info.texture->texture->sampler atIndex:index];
}
}
}