Skip to content

Commit 6f2814a

Browse files
committed
fix missing mirror/repeat
1 parent f277b0b commit 6f2814a

File tree

4 files changed

+19
-1
lines changed

4 files changed

+19
-1
lines changed

ShaderGlass/Shader.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ Shader::Shader(ShaderDef& shaderDef) :
119119
{
120120
if(value == "clamp_to_edge")
121121
m_clamp = true;
122+
else if(value == "repeat")
123+
m_repeat = true;
124+
else if(value == "mirrored_repeat")
125+
m_mirror = true;
122126
}
123127
}
124128

ShaderGlass/Shader.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ class Shader
4848
DXGI_FORMAT m_format {DXGI_FORMAT_B8G8R8A8_UNORM};
4949
bool m_filterLinear {false};
5050
bool m_clamp {false};
51+
bool m_mirror {false};
52+
bool m_repeat {false};
5153
int m_frameCountMod {0};
5254

5355
Shader(ShaderDef& shaderDef);

ShaderGlass/ShaderPass.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,18 @@ void ShaderPass::Initialize(winrt::com_ptr<ID3D11Device> device, winrt::com_ptr<
108108
samplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
109109
samplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
110110
}
111+
if(m_shader.m_repeat)
112+
{
113+
samplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_WRAP;
114+
samplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_WRAP;
115+
samplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_WRAP;
116+
}
117+
if(m_shader.m_mirror)
118+
{
119+
samplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_MIRROR;
120+
samplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_MIRROR;
121+
samplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_MIRROR;
122+
}
111123
}
112124
}
113125

ShaderGlass/Texture.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Texture::Texture(TextureDef& textureDef) : m_linear(false), m_mipmap(false), m_r
2626
{
2727
if(value == "repeat")
2828
m_repeat = true;
29-
if(value == "clamp_to_border")
29+
if(value == "clamp_to_edge")
3030
m_clamp = true;
3131
if(value == "mirrored_repeat")
3232
m_mirror = true;

0 commit comments

Comments
 (0)