aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Image
diff options
context:
space:
mode:
authorriperiperi <rhy3756547@hotmail.com>2020-11-02 20:03:06 +0000
committerGitHub <noreply@github.com>2020-11-02 17:03:06 -0300
commit4c6feb652f7dfa0cf54ea0866d076469816a3bbe (patch)
treefe8f9f97eeac24d54d70725a2bf2fc8dc4846387 /Ryujinx.Graphics.Gpu/Image
parente1da7df2075f45ac3d19538f7781115978282100 (diff)
Add seamless cubemap flag in sampler parameters. (#1658)
* Add seamless cubemap flag in sampler parameters. * Check for the extension
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Image')
-rw-r--r--Ryujinx.Graphics.Gpu/Image/Sampler.cs3
-rw-r--r--Ryujinx.Graphics.Gpu/Image/SamplerDescriptor.cs9
2 files changed, 12 insertions, 0 deletions
diff --git a/Ryujinx.Graphics.Gpu/Image/Sampler.cs b/Ryujinx.Graphics.Gpu/Image/Sampler.cs
index 92c255e5..4c05329a 100644
--- a/Ryujinx.Graphics.Gpu/Image/Sampler.cs
+++ b/Ryujinx.Graphics.Gpu/Image/Sampler.cs
@@ -23,6 +23,8 @@ namespace Ryujinx.Graphics.Gpu.Image
MinFilter minFilter = descriptor.UnpackMinFilter();
MagFilter magFilter = descriptor.UnpackMagFilter();
+ bool seamlessCubemap = descriptor.UnpackSeamlessCubemap();
+
AddressMode addressU = descriptor.UnpackAddressU();
AddressMode addressV = descriptor.UnpackAddressV();
AddressMode addressP = descriptor.UnpackAddressP();
@@ -49,6 +51,7 @@ namespace Ryujinx.Graphics.Gpu.Image
HostSampler = context.Renderer.CreateSampler(new SamplerCreateInfo(
minFilter,
magFilter,
+ seamlessCubemap,
addressU,
addressV,
addressP,
diff --git a/Ryujinx.Graphics.Gpu/Image/SamplerDescriptor.cs b/Ryujinx.Graphics.Gpu/Image/SamplerDescriptor.cs
index 9f5a847b..2c28b743 100644
--- a/Ryujinx.Graphics.Gpu/Image/SamplerDescriptor.cs
+++ b/Ryujinx.Graphics.Gpu/Image/SamplerDescriptor.cs
@@ -185,6 +185,15 @@ namespace Ryujinx.Graphics.Gpu.Image
}
/// <summary>
+ /// Unpacks the seamless cubemap flag.
+ /// </summary>
+ /// <returns>The seamless cubemap flag</returns>
+ public bool UnpackSeamlessCubemap()
+ {
+ return (Word1 & (1 << 9)) != 0;
+ }
+
+ /// <summary>
/// Unpacks the reduction filter, used with texture minification linear filtering.
/// This describes how the final value will be computed from neighbouring pixels.
/// </summary>