Skip to content

Commit 983d62c

Browse files
GLTF::Material::TextureShaderAttribs: added GetUVSelector, GetWrapUMode, and GetWrapVMode methods
1 parent bfa1c21 commit 983d62c

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

AssetLoader/interface/GLTFLoader.hpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,10 @@ struct Material
270270
PackedProps &= ~UVSelectorShiftedMask;
271271
PackedProps |= (static_cast<Uint32>(Selector) & UVSelectorMask) << UVSelectorShift;
272272
}
273+
int GetUVSelector() const
274+
{
275+
return static_cast<int>((PackedProps >> UVSelectorShift) & UVSelectorMask) - 1;
276+
}
273277

274278
static_assert(TEXTURE_ADDRESS_WRAP == 1, "TEXTURE_ADDRESS_WRAP must be 1");
275279
static_assert(TEXTURE_ADDRESS_MIRROR == 2, "TEXTURE_ADDRESS_MIRROR must be 2");
@@ -286,6 +290,14 @@ struct Material
286290
PackedProps &= ~WrapVShiftedMask;
287291
PackedProps |= (((std::max)(static_cast<Uint32>(AddressMode), 1u) - 1u) & WrapVMask) << WrapVShift;
288292
}
293+
TEXTURE_ADDRESS_MODE GetWrapUMode() const
294+
{
295+
return static_cast<TEXTURE_ADDRESS_MODE>(((PackedProps >> WrapUShift) & WrapUMask) + 1u);
296+
}
297+
TEXTURE_ADDRESS_MODE GetWrapVMode() const
298+
{
299+
return static_cast<TEXTURE_ADDRESS_MODE>(((PackedProps >> WrapVShift) & WrapVMask) + 1u);
300+
}
289301
};
290302
static_assert(sizeof(TextureShaderAttribs) % 16 == 0, "TextureShaderAttribs struct must be 16-byte aligned");
291303

0 commit comments

Comments
 (0)