[Bf-blender-cvs] [2c432baad0b] tmp-workbench-rewrite2: Add texture mirror extension type support (see D16432)
Miguel Pozo
noreply at git.blender.org
Fri Jan 20 15:20:16 CET 2023
Commit: 2c432baad0b4e21c8173d5c66ec07b81c290e16f
Author: Miguel Pozo
Date: Thu Jan 19 17:07:19 2023 +0100
Branches: tmp-workbench-rewrite2
https://developer.blender.org/rB2c432baad0b4e21c8173d5c66ec07b81c290e16f
Add texture mirror extension type support (see D16432)
===================================================================
M source/blender/draw/engines/workbench/workbench_materials_next.cc
===================================================================
diff --git a/source/blender/draw/engines/workbench/workbench_materials_next.cc b/source/blender/draw/engines/workbench/workbench_materials_next.cc
index ec42c696ccc..74622882e52 100644
--- a/source/blender/draw/engines/workbench/workbench_materials_next.cc
+++ b/source/blender/draw/engines/workbench/workbench_materials_next.cc
@@ -69,17 +69,19 @@ void get_material_image(Object *ob,
if (node && image) {
switch (node->type) {
case SH_NODE_TEX_IMAGE: {
- NodeTexImage *storage = static_cast<NodeTexImage *>(node->storage);
+ const NodeTexImage *storage = static_cast<NodeTexImage *>(node->storage);
const bool use_filter = (storage->interpolation != SHD_INTERP_CLOSEST);
- const bool use_repeat = (storage->extension == SHD_IMAGE_EXTENSION_REPEAT);
+ const bool use_mirror = (storage->extension == SHD_IMAGE_EXTENSION_MIRROR);
+ const bool use_repeat = use_mirror || (storage->extension == SHD_IMAGE_EXTENSION_REPEAT);
const bool use_clip = (storage->extension == SHD_IMAGE_EXTENSION_CLIP);
SET_FLAG_FROM_TEST(sampler_state, use_filter, GPU_SAMPLER_FILTER);
SET_FLAG_FROM_TEST(sampler_state, use_repeat, GPU_SAMPLER_REPEAT);
SET_FLAG_FROM_TEST(sampler_state, use_clip, GPU_SAMPLER_CLAMP_BORDER);
+ SET_FLAG_FROM_TEST(sampler_state, use_mirror, GPU_SAMPLER_MIRROR_REPEAT);
break;
}
case SH_NODE_TEX_ENVIRONMENT: {
- NodeTexEnvironment *storage = static_cast<NodeTexEnvironment *>(node->storage);
+ const NodeTexEnvironment *storage = static_cast<NodeTexEnvironment *>(node->storage);
const bool use_filter = (storage->interpolation != SHD_INTERP_CLOSEST);
SET_FLAG_FROM_TEST(sampler_state, use_filter, GPU_SAMPLER_FILTER);
break;
More information about the Bf-blender-cvs
mailing list