diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-04-04 16:51:03 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-04-09 12:21:14 +0300 |
commit | 209c5cebb06abc06f7afd6b70298cf14a7138b64 (patch) | |
tree | 8ff702c9f3bcc954745643a226e84567296da78a /source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h | |
parent | cf4041eb05471614bd6f4e38af5986ae9211ef7f (diff) |
Freestyle: use depsgraph to get geometry, instead of Blender Internal.
Some of the code is simpler because we use Blender's triangulation directly
instead of dealing with quads. Also some progress printing code was removed
because the depsgraph can not tell us the number of objects ahead of time.
Differential Revision: https://developer.blender.org/D3127
Diffstat (limited to 'source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h')
-rw-r--r-- | source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h index ad92416801d..e671c916934 100644 --- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h +++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h @@ -40,17 +40,28 @@ #include "../system/RenderMonitor.h" extern "C" { +#include "MEM_guardedalloc.h" + #include "DNA_material_types.h" +#include "DNA_mesh_types.h" #include "DNA_meshdata_types.h" +#include "DNA_modifier_types.h" +#include "DNA_object_types.h" #include "DNA_scene_types.h" #include "renderdatabase.h" #include "render_types.h" +#include "BKE_customdata.h" +#include "BKE_material.h" #include "BKE_mesh.h" #include "BKE_scene.h" +#include "BLI_iterator.h" +#include "BLI_listbase.h" #include "BLI_math.h" + +#include "DEG_depsgraph_query.h" } #ifdef WITH_CXX_GUARDEDALLOC @@ -96,9 +107,8 @@ public: inline void setRenderMonitor(RenderMonitor *iRenderMonitor) {_pRenderMonitor = iRenderMonitor;} protected: - void insertShapeNode(ObjectInstanceRen *obi, int id); + void insertShapeNode(Object *ob, Mesh *mesh, int id); int testDegenerateTriangle(float v1[3], float v2[3], float v3[3]); - bool testEdgeRotation(float v1[3], float v2[3], float v3[3], float v4[3]); int countClippedFaces(float v1[3], float v2[3], float v3[3], int clip[3]); void clipLine(float v1[3], float v2[3], float c[3], float z); void clipTriangle(int numTris, float triCoords[][3], float v1[3], float v2[3], float v3[3], |