Compare commits

...

6 Commits

Author SHA1 Message Date
Andy Hovingh
3e6fd9d044 TEMP fix constants presence (even though not used at this point) 2025-05-30 15:25:30 -05:00
bridgewaterrobbie
d943293fd8 Hack do not merge: Make metal have the same hack to compare linear only 2025-05-30 15:18:48 -05:00
bridgewaterrobbie
acc6c801ec Allow srgb support to be signaled 2025-05-30 15:18:48 -05:00
Syed Idris Shah
a09ab9625d fix the render target usage
bindPipeline should be able to handle both default and custom render targets
2025-05-30 15:18:45 -05:00
Syed Idris Shah
2c65946217 temp code and prints 2025-05-30 15:16:19 -05:00
Juan Caldas
c166bea8fc Dynamically update the Spec Constant value 2025-05-30 15:16:15 -05:00
5 changed files with 11 additions and 11 deletions

View File

@@ -218,11 +218,11 @@ void MetalBlitter::blitDepthPlane(id<MTLCommandBuffer> cmdBuffer, const BlitArgs
}
[encoder setFragmentTexture:srcTextureColor atIndex:0];
SamplerMinFilter filterMin = SamplerMinFilter::NEAREST_MIPMAP_NEAREST;
SamplerMinFilter filterMin = SamplerMinFilter::LINEAR;
if (args.filter == SamplerMagFilter::NEAREST) {
filterMin = SamplerMinFilter::NEAREST_MIPMAP_NEAREST;
filterMin = SamplerMinFilter::LINEAR;
} else if (args.filter == SamplerMagFilter::LINEAR) {
filterMin = SamplerMinFilter::LINEAR_MIPMAP_NEAREST;
filterMin = SamplerMinFilter::LINEAR;
}
SamplerState const s {

View File

@@ -1533,7 +1533,7 @@ void MetalDriver::readPixels(Handle<HwRenderTarget> src, uint32_t x, uint32_t y,
id<MTLTexture> readPixelsTexture = [mContext->device newTextureWithDescriptor:textureDescriptor];
MetalBlitter::BlitArgs args{};
args.filter = SamplerMagFilter::NEAREST;
args.filter = SamplerMagFilter::LINEAR;
args.source.level = miplevel;
args.source.region = MTLRegionMake2D(0, 0, srcTexture.width >> miplevel, srcTexture.height >> miplevel);
args.source.texture = srcTexture;
@@ -1650,7 +1650,7 @@ void MetalDriver::blit(
<< "Metal does not support blitting to/from non-2D textures.";
MetalBlitter::BlitArgs args{};
args.filter = SamplerMagFilter::NEAREST;
args.filter = SamplerMagFilter::LINEAR;
args.source.region = MTLRegionMake2D(
(NSUInteger)srcOrigin.x,
std::max(srcTexture->height - (int64_t)srcOrigin.y - size.y, (int64_t)0),

View File

@@ -348,7 +348,7 @@ constexpr inline MTLSamplerMinMagFilter getFilter(SamplerMinFilter filter) noexc
case SamplerMinFilter::NEAREST:
case SamplerMinFilter::NEAREST_MIPMAP_NEAREST:
case SamplerMinFilter::NEAREST_MIPMAP_LINEAR:
return MTLSamplerMinMagFilterNearest;
return MTLSamplerMinMagFilterLinear;
case SamplerMinFilter::LINEAR_MIPMAP_NEAREST:
case SamplerMinFilter::LINEAR:
case SamplerMinFilter::LINEAR_MIPMAP_LINEAR:
@@ -359,7 +359,7 @@ constexpr inline MTLSamplerMinMagFilter getFilter(SamplerMinFilter filter) noexc
constexpr inline MTLSamplerMinMagFilter getFilter(SamplerMagFilter filter) noexcept {
switch (filter) {
case SamplerMagFilter::NEAREST:
return MTLSamplerMinMagFilterNearest;
return MTLSamplerMinMagFilterLinear;
case SamplerMagFilter::LINEAR:
return MTLSamplerMinMagFilterLinear;
}
@@ -369,10 +369,10 @@ constexpr inline MTLSamplerMipFilter getMipFilter(SamplerMinFilter filter) noexc
switch (filter) {
case SamplerMinFilter::NEAREST:
case SamplerMinFilter::LINEAR:
return MTLSamplerMipFilterNotMipmapped;
return MTLSamplerMipFilterLinear;
case SamplerMinFilter::NEAREST_MIPMAP_NEAREST:
case SamplerMinFilter::LINEAR_MIPMAP_NEAREST:
return MTLSamplerMipFilterNearest;
return MTLSamplerMipFilterLinear;
case SamplerMinFilter::NEAREST_MIPMAP_LINEAR:
case SamplerMinFilter::LINEAR_MIPMAP_LINEAR:
return MTLSamplerMipFilterLinear;

View File

@@ -943,7 +943,7 @@ void MetalTexture::loadWithBlit(uint32_t level, uint32_t slice, MTLRegion region
}
MetalBlitter::BlitArgs args{};
args.filter = SamplerMagFilter::NEAREST;
args.filter = SamplerMagFilter::LINEAR;
args.source.level = 0;
args.source.slice = 0;
args.source.region = sourceRegion;

View File

@@ -524,7 +524,7 @@ bool WebGPUDriver::isAutoDepthResolveSupported() {
}
bool WebGPUDriver::isSRGBSwapChainSupported() {
return false;
return true;
}
bool WebGPUDriver::isProtectedContentSupported() {