Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2018-10-09 18:32:13 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-10-09 18:34:04 +0300
commite234ce9b2272323ef2666d3f0718ecb8c688b693 (patch)
tree44b5d18a5fb306b747791671239d9c48ac434d4c /source/blender/draw/engines/eevee/eevee_materials.c
parent6d6e3869ce52085bbd4351de96cbc0e6b51b974b (diff)
Eevee: Add support/Fix Object Info node
Caveat: Random output does not yet work with instance (dupli) objects.
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_materials.c')
-rw-r--r--source/blender/draw/engines/eevee/eevee_materials.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_materials.c b/source/blender/draw/engines/eevee/eevee_materials.c
index 2b57c93202b..38c2fb50f81 100644
--- a/source/blender/draw/engines/eevee/eevee_materials.c
+++ b/source/blender/draw/engines/eevee/eevee_materials.c
@@ -1080,23 +1080,23 @@ void EEVEE_materials_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata)
}
}
-#define ADD_SHGROUP_CALL(shgrp, ob, geom, oedata) do { \
+#define ADD_SHGROUP_CALL(shgrp, ob, ma, geom, oedata) do { \
if (is_sculpt_mode_draw) { \
DRW_shgroup_call_sculpt_add(shgrp, ob, ob->obmat); \
} \
else { \
if (oedata) { \
- DRW_shgroup_call_object_add_with_callback(shgrp, geom, ob, EEVEE_lightprobes_obj_visibility_cb, oedata); \
+ DRW_shgroup_call_object_add_with_callback(shgrp, geom, ob, ma, EEVEE_lightprobes_obj_visibility_cb, oedata); \
} \
else { \
- DRW_shgroup_call_object_add(shgrp, geom, ob); \
+ DRW_shgroup_call_object_add_ex(shgrp, geom, ob, ma, false); \
} \
} \
} while (0)
-#define ADD_SHGROUP_CALL_SAFE(shgrp, ob, geom, oedata) do { \
+#define ADD_SHGROUP_CALL_SAFE(shgrp, ob, ma, geom, oedata) do { \
if (shgrp) { \
- ADD_SHGROUP_CALL(shgrp, ob, geom, oedata); \
+ ADD_SHGROUP_CALL(shgrp, ob, ma, geom, oedata); \
} \
} while (0)
@@ -1536,11 +1536,11 @@ void EEVEE_materials_cache_populate(EEVEE_Data *vedata, EEVEE_ViewLayerData *sld
}
/* Shading pass */
- ADD_SHGROUP_CALL(shgrp_array[i], ob, mat_geom[i], oedata);
+ ADD_SHGROUP_CALL(shgrp_array[i], ob, ma, mat_geom[i], oedata);
/* Depth Prepass */
- ADD_SHGROUP_CALL_SAFE(shgrp_depth_array[i], ob, mat_geom[i], oedata);
- ADD_SHGROUP_CALL_SAFE(shgrp_depth_clip_array[i], ob, mat_geom[i], oedata);
+ ADD_SHGROUP_CALL_SAFE(shgrp_depth_array[i], ob, ma, mat_geom[i], oedata);
+ ADD_SHGROUP_CALL_SAFE(shgrp_depth_clip_array[i], ob, ma, mat_geom[i], oedata);
char *name = auto_layer_names;
for (int j = 0; j < auto_layer_count; ++j) {