[Bf-blender-cvs] [f755724] experimental-build: Revert "Custom-Bake, test build"
Dalai Felinto
noreply at git.blender.org
Thu Dec 17 19:54:48 CET 2015
Commit: f755724fbc57dc06a7538400064d59948927d397
Author: Dalai Felinto
Date: Thu Dec 17 16:54:27 2015 -0200
Branches: experimental-build
https://developer.blender.org/rBf755724fbc57dc06a7538400064d59948927d397
Revert "Custom-Bake, test build"
This reverts commit bef519ae362427f263832e07aad19b9d09f9fc13.
===================================================================
M intern/cycles/blender/addon/__init__.py
M intern/cycles/blender/addon/engine.py
M intern/cycles/blender/addon/properties.py
M intern/cycles/blender/addon/ui.py
M intern/cycles/blender/blender_python.cpp
M intern/cycles/blender/blender_session.cpp
M intern/cycles/blender/blender_session.h
M intern/cycles/kernel/kernel_bake.h
M intern/cycles/kernel/kernel_types.h
M intern/cycles/render/bake.cpp
M intern/cycles/render/bake.h
M source/blender/blenkernel/intern/scene.c
M source/blender/blenloader/intern/versioning_270.c
M source/blender/editors/object/object_bake_api.c
M source/blender/makesdna/DNA_scene_types.h
M source/blender/makesrna/RNA_enum_types.h
M source/blender/makesrna/intern/rna_render.c
M source/blender/makesrna/intern/rna_scene.c
M source/blender/render/extern/include/RE_bake.h
M source/blender/render/extern/include/RE_engine.h
M source/blender/render/intern/source/external_engine.c
===================================================================
diff --git a/intern/cycles/blender/addon/__init__.py b/intern/cycles/blender/addon/__init__.py
index e883413..0783c1c 100644
--- a/intern/cycles/blender/addon/__init__.py
+++ b/intern/cycles/blender/addon/__init__.py
@@ -67,8 +67,8 @@ class CyclesRender(bpy.types.RenderEngine):
def render(self, scene):
engine.render(self)
- def bake(self, scene, obj, pass_type, pass_filter, object_id, pixel_array, num_pixels, depth, result):
- engine.bake(self, obj, pass_type, pass_filter, object_id, pixel_array, num_pixels, depth, result)
+ def bake(self, scene, obj, pass_type, object_id, pixel_array, num_pixels, depth, result):
+ engine.bake(self, obj, pass_type, object_id, pixel_array, num_pixels, depth, result)
# viewport render
def view_update(self, context):
diff --git a/intern/cycles/blender/addon/engine.py b/intern/cycles/blender/addon/engine.py
index 833bf04..030f0db 100644
--- a/intern/cycles/blender/addon/engine.py
+++ b/intern/cycles/blender/addon/engine.py
@@ -105,11 +105,11 @@ def render(engine):
_cycles.render(engine.session)
-def bake(engine, obj, pass_type, pass_filter, object_id, pixel_array, num_pixels, depth, result):
+def bake(engine, obj, pass_type, object_id, pixel_array, num_pixels, depth, result):
import _cycles
session = getattr(engine, "session", None)
if session is not None:
- _cycles.bake(engine.session, obj.as_pointer(), pass_type, pass_filter, object_id, pixel_array.as_pointer(), num_pixels, depth, result.as_pointer())
+ _cycles.bake(engine.session, obj.as_pointer(), pass_type, object_id, pixel_array.as_pointer(), num_pixels, depth, result.as_pointer())
def reset(engine, data, scene):
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index 8373611..cbd1a8b 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -492,10 +492,18 @@ class CyclesRenderSettings(bpy.types.PropertyGroup):
('UV', "UV", ""),
('EMIT', "Emit", ""),
('ENVIRONMENT', "Environment", ""),
- ('DIFFUSE', "Diffuse", ""),
- ('GLOSSY', "Glossy", ""),
- ('TRANSMISSION', "Transmission", ""),
- ('SUBSURFACE', "Subsurface", ""),
+ ('DIFFUSE_DIRECT', "Diffuse Direct", ""),
+ ('DIFFUSE_INDIRECT', "Diffuse Indirect", ""),
+ ('DIFFUSE_COLOR', "Diffuse Color", ""),
+ ('GLOSSY_DIRECT', "Glossy Direct", ""),
+ ('GLOSSY_INDIRECT', "Glossy Indirect", ""),
+ ('GLOSSY_COLOR', "Glossy Color", ""),
+ ('TRANSMISSION_DIRECT', "Transmission Direct", ""),
+ ('TRANSMISSION_INDIRECT', "Transmission Indirect", ""),
+ ('TRANSMISSION_COLOR', "Transmission Color", ""),
+ ('SUBSURFACE_DIRECT', "Subsurface Direct", ""),
+ ('SUBSURFACE_INDIRECT', "Subsurface Indirect", ""),
+ ('SUBSURFACE_COLOR', "Subsurface Color", ""),
),
)
diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py
index 3d5eccc..e2aa266 100644
--- a/intern/cycles/blender/addon/ui.py
+++ b/intern/cycles/blender/addon/ui.py
@@ -1438,38 +1438,6 @@ class CyclesRender_PT_bake(CyclesButtonsPanel, Panel):
row.prop(cbk, "normal_g", text="")
row.prop(cbk, "normal_b", text="")
- elif cscene.bake_type == 'COMBINED':
- box = layout.box()
- box.label(text="Combined Settings:")
-
- row = box.row()
- row.prop(cbk, "use_pass_ambient_occlusion")
- row.prop(cbk, "use_pass_emit")
-
- row = box.row(align=True)
- row.prop(cbk, "use_pass_direct", toggle=True)
- row.prop(cbk, "use_pass_indirect", toggle=True)
-
- split = box.split()
- split.active = cbk.use_pass_direct or cbk.use_pass_indirect
-
- sub = split.column()
- sub.prop(cbk, "use_pass_diffuse")
- sub.prop(cbk, "use_pass_glossy")
-
- sub = split.column()
- sub.prop(cbk, "use_pass_transmission")
- sub.prop(cbk, "use_pass_subsurface")
-
- elif cscene.bake_type in {'DIFFUSE', 'GLOSSY', 'TRANSMISSION', 'SUBSURFACE'}:
- layout.separator()
- box = layout.box()
- box.label(text="{0} Settings:".format(cscene.bake_type.title()))
-
- row = box.row(align=True)
- row.prop(cbk, "use_pass_direct", toggle=True)
- row.prop(cbk, "use_pass_indirect", toggle=True)
- row.prop(cbk, "use_pass_color", toggle=True)
class CyclesParticle_PT_CurveSettings(CyclesButtonsPanel, Panel):
bl_label = "Cycles Hair Settings"
diff --git a/intern/cycles/blender/blender_python.cpp b/intern/cycles/blender/blender_python.cpp
index 25d44bd..6581d0b 100644
--- a/intern/cycles/blender/blender_python.cpp
+++ b/intern/cycles/blender/blender_python.cpp
@@ -190,9 +190,9 @@ static PyObject *bake_func(PyObject * /*self*/, PyObject *args)
PyObject *pysession, *pyobject;
PyObject *pypixel_array, *pyresult;
const char *pass_type;
- int num_pixels, depth, object_id, pass_filter;
+ int num_pixels, depth, object_id;
- if(!PyArg_ParseTuple(args, "OOsiiOiiO", &pysession, &pyobject, &pass_type, &pass_filter, &object_id, &pypixel_array, &num_pixels, &depth, &pyresult))
+ if(!PyArg_ParseTuple(args, "OOsiOiiO", &pysession, &pyobject, &pass_type, &object_id, &pypixel_array, &num_pixels, &depth, &pyresult))
return NULL;
BlenderSession *session = (BlenderSession*)PyLong_AsVoidPtr(pysession);
@@ -209,7 +209,7 @@ static PyObject *bake_func(PyObject * /*self*/, PyObject *args)
python_thread_state_save(&session->python_thread_state);
- session->bake(b_object, pass_type, pass_filter, object_id, b_bake_pixel, (size_t)num_pixels, depth, (float *)b_result);
+ session->bake(b_object, pass_type, object_id, b_bake_pixel, (size_t)num_pixels, depth, (float *)b_result);
python_thread_state_restore(&session->python_thread_state);
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index edcc3bb..088748c 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -316,20 +316,26 @@ static ShaderEvalType get_shader_type(const string& pass_type)
return SHADER_EVAL_COMBINED;
else if(strcmp(shader_type, "SHADOW")==0)
return SHADER_EVAL_SHADOW;
- else if(strcmp(shader_type, "DIFFUSE")==0)
- return SHADER_EVAL_DIFFUSE;
- else if(strcmp(shader_type, "GLOSSY")==0)
- return SHADER_EVAL_GLOSSY;
- else if(strcmp(shader_type, "TRANSMISSION")==0)
- return SHADER_EVAL_TRANSMISSION;
- else if(strcmp(shader_type, "SUBSURFACE")==0)
- return SHADER_EVAL_SUBSURFACE;
+ else if(strcmp(shader_type, "DIFFUSE_DIRECT")==0)
+ return SHADER_EVAL_DIFFUSE_DIRECT;
+ else if(strcmp(shader_type, "GLOSSY_DIRECT")==0)
+ return SHADER_EVAL_GLOSSY_DIRECT;
+ else if(strcmp(shader_type, "TRANSMISSION_DIRECT")==0)
+ return SHADER_EVAL_TRANSMISSION_DIRECT;
+ else if(strcmp(shader_type, "SUBSURFACE_DIRECT")==0)
+ return SHADER_EVAL_SUBSURFACE_DIRECT;
+ else if(strcmp(shader_type, "DIFFUSE_INDIRECT")==0)
+ return SHADER_EVAL_DIFFUSE_INDIRECT;
+ else if(strcmp(shader_type, "GLOSSY_INDIRECT")==0)
+ return SHADER_EVAL_GLOSSY_INDIRECT;
+ else if(strcmp(shader_type, "TRANSMISSION_INDIRECT")==0)
+ return SHADER_EVAL_TRANSMISSION_INDIRECT;
+ else if(strcmp(shader_type, "SUBSURFACE_INDIRECT")==0)
+ return SHADER_EVAL_SUBSURFACE_INDIRECT;
/* extra */
else if(strcmp(shader_type, "ENVIRONMENT")==0)
return SHADER_EVAL_ENVIRONMENT;
- else if(strcmp(shader_type, "CUSTOM")==0)
- return SHADER_EVAL_CUSTOM;
else
return SHADER_EVAL_BAKE;
@@ -537,40 +543,11 @@ static void populate_bake_data(BakeData *data, const int object_id, BL::BakePixe
}
}
-static int bake_pass_filter_get(const int pass_filter)
-{
- int flag = BAKE_FILTER_NONE;
-
- if((pass_filter & BL::BakeSettings::type_DIRECT) != 0)
- flag |= BAKE_FILTER_DIRECT;
- if((pass_filter & BL::BakeSettings::type_INDIRECT) != 0)
- flag |= BAKE_FILTER_INDIRECT;
- if((pass_filter & BL::BakeSettings::type_COLOR) != 0)
- flag |= BAKE_FILTER_COLOR;
-
- if((pass_filter & BL::BakeSettings::type_DIFFUSE) != 0)
- flag |= BAKE_FILTER_DIFFUSE;
- if((pass_filter & BL::BakeSettings::type_GLOSSY) != 0)
- flag |= BAKE_FILTER_GLOSSY;
- if((pass_filter & BL::BakeSettings::type_TRANSMISSION) != 0)
- flag |= BAKE_FILTER_TRANSMISSION;
- if((pass_filter & BL::BakeSettings::type_SUBSURFACE) != 0)
- flag |= BAKE_FILTER_SUBSURFACE;
-
- if((pass_filter & BL::BakeSettings::type_EMIT) != 0)
- flag |= BAKE_FILTER_EMISSION;
- if((pass_filter & BL::BakeSettings::type_AO) != 0)
- flag |= BAKE_FILTER_AO;
-
- return flag;
-}
-
-void BlenderSession::bake(BL::Object b_object, const string& pass_type, const int pass_filter, const int object_id, BL::BakePixel pixel_array, const size_t num_pixels, const int /*depth*/, float result[])
+void BlenderSession::bake(BL::Object b_object, const string& pass_type, const int object_id, BL::BakePixel pixel_array, const size_t num_pixels, const int /*depth*/, float result[])
{
ShaderEvalType shader_type = get_shader_type(pass_type);
size_t object_index = OBJECT_NONE;
int tri_offset = 0;
- int bake_pass_filter = bake_pass_filter_get(pass_filter);
/* Set baking flag in advance, so kernel loading can check if we need
* any baking capabilities.
@@ -588,7 +565,7 @@ void BlenderSession::bake(BL::Object b_object, const string& pass_type, const in
Pass::add(PASS_UV, scene->film->passes);
}
- if(BakeManager::is_light_pass(shader_type, bake_pass_filter)) {
+ if(BakeManager::is_light_pass(shader_type)) {
/* force use_light_pass to be true */
Pass::add(PASS_LIGHT, scene->film->passes);
}
@@ -640,7 +617,7 @@ void BlenderSession::bake(BL::Object b_object, const string& pass_type, const in
session->progress.set_update_callback(function_bind(&BlenderSession::update_bake_progress, this));
- scene->bake_manager->bake(scene->device, &scene->dscene, scene, session->progres
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list