diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2014-04-13 14:51:06 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2014-04-13 14:51:13 +0400 |
commit | e29698d3cdeb57b4a765d9c3c7ce2a3bb37606fb (patch) | |
tree | 2137956ccc06095765311a5df94c5ea49eb6ec46 /intern/cycles/blender/blender_util.h | |
parent | 776f8d5a6fa00403e6c46887fbb19956edbd4f05 (diff) |
Split Normals I (5/5): Add support of split normals to Cycles.
Idea and code by Brecht, many thanks!
Reviewers: brecht
Reviewed By: brecht
CC: campbellbarton, dingto
Differential Revision: https://developer.blender.org/D369
Diffstat (limited to 'intern/cycles/blender/blender_util.h')
-rw-r--r-- | intern/cycles/blender/blender_util.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/intern/cycles/blender/blender_util.h b/intern/cycles/blender/blender_util.h index 45ca0e17550..b2046b290b2 100644 --- a/intern/cycles/blender/blender_util.h +++ b/intern/cycles/blender/blender_util.h @@ -42,7 +42,12 @@ void python_thread_state_restore(void **python_thread_state); static inline BL::Mesh object_to_mesh(BL::BlendData data, BL::Object object, BL::Scene scene, bool apply_modifiers, bool render, bool calc_undeformed) { - return data.meshes.new_from_object(scene, object, apply_modifiers, (render)? 2: 1, true, calc_undeformed); + BL::Mesh me = data.meshes.new_from_object(scene, object, apply_modifiers, (render)? 2: 1, false, calc_undeformed); + if (me.use_auto_smooth()) { + me.calc_normals_split(me.auto_smooth_angle()); + } + me.calc_tessface(); + return me; } static inline void colorramp_to_array(BL::ColorRamp ramp, float4 *data, int size) |