From d6747f310f1235084e37d871212fb66aff37ba13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Fri, 29 Mar 2019 19:18:08 +0100 Subject: Eevee: Material: Decouple transparent shadows from blend mode This makes it easier to exclude a surface from casting shadows and can be used to manipulate the shadows even for opaque surfaces. Versionning ensure that old behavior is transfered to new rendering logic. --- source/blender/blenloader/intern/versioning_280.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'source/blender/blenloader/intern/versioning_280.c') diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c index 522d036818d..960fb3b417c 100644 --- a/source/blender/blenloader/intern/versioning_280.c +++ b/source/blender/blenloader/intern/versioning_280.c @@ -2945,6 +2945,15 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain) } FOREACH_NODETREE_END; } + if (!MAIN_VERSION_ATLEAST(bmain, 280, 53)) { + for (Material *mat = bmain->materials.first; mat; mat = mat->id.next) { + /* Eevee: Keep material appearance consistent with previous behavior. */ + if (!mat->use_nodes || !mat->nodetree || mat->blend_method == MA_BM_SOLID) { + mat->blend_shadow = MA_BS_SOLID; + } + } + } + { /* Versioning code until next subversion bump goes here. */ } -- cgit v1.2.3