[Bf-blender-cvs] [c2191912cab] blender2.8: Freestyle is back for 2.8
Dalai Felinto
noreply at git.blender.org
Thu May 18 17:35:08 CEST 2017
Commit: c2191912cabeab3dd0da12863a8af8e57a70df03
Author: Dalai Felinto
Date: Thu May 18 16:03:28 2017 +0200
Branches: blender2.8
https://developer.blender.org/rBc2191912cabeab3dd0da12863a8af8e57a70df03
Freestyle is back for 2.8
It works with Cycles and Blender Internal for now.
The Blender Internal support will disappear, but we should be able to
integrate it with the Draw manager and use it with Clay, Eevee, ...
===================================================================
M source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
M source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
===================================================================
diff --git a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
index 1f5e2b63bfa..35ac3171987 100644
--- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
+++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
@@ -105,8 +105,6 @@ NodeGroup *BlenderFileLoader::Load()
cnt++;
}
- if (!(obi->lay & _srl->lay))
- continue;
char *name = obi->ob->id.name;
//printf("%c%c:%s\n", name[0], name[1], name+2);
//print_m4("obi->mat", obi->mat);
diff --git a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
index b89ff75e199..e4c4e7473fe 100644
--- a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
+++ b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
@@ -43,6 +43,7 @@ extern "C" {
#include "DNA_screen_types.h"
#include "DNA_scene_types.h"
+#include "BKE_collection.h"
#include "BKE_customdata.h"
#include "BKE_global.h"
#include "BKE_library.h" /* free_libblock */
@@ -168,7 +169,7 @@ BlenderStrokeRenderer::~BlenderStrokeRenderer()
// compositor has finished.
// release objects and data blocks
- for (BaseLegacy *b = (BaseLegacy *)freestyle_scene->base.first; b; b = b->next) {
+ for (Base *b = (Base *)((SceneLayer *)(freestyle_scene->render_layers.first))->object_bases.first; b; b = b->next) {
Object *ob = b->object;
void *data = ob->data;
char *name = ob->id.name;
@@ -191,7 +192,6 @@ BlenderStrokeRenderer::~BlenderStrokeRenderer()
cerr << "Warning: unexpected object in the scene: " << name[0] << name[1] << ":" << (name + 2) << endl;
}
}
- BLI_freelistN(&freestyle_scene->base);
// release materials
Link *lnk = (Link *)freestyle_bmain->mat.first;
@@ -924,7 +924,6 @@ void BlenderStrokeRenderer::GenerateStrokeMesh(StrokeGroup *group, bool hasTex)
Object *BlenderStrokeRenderer::NewMesh() const
{
Object *ob;
- BaseLegacy *base;
char name[MAX_ID_NAME];
unsigned int mesh_id = get_stroke_mesh_id();
@@ -934,14 +933,11 @@ Object *BlenderStrokeRenderer::NewMesh() const
ob->data = BKE_mesh_add(freestyle_bmain, name);
ob->lay = 1;
- base = BKE_scene_base_add(freestyle_scene, ob);
+ SceneCollection *sc_master = BKE_collection_master(freestyle_scene);
+ BKE_collection_object_add(freestyle_scene, sc_master, ob);
+
+ BKE_scene_base_add(freestyle_scene, ob);
DEG_relations_tag_update(freestyle_bmain);
-#if 0
- BKE_scene_base_deselect_all(scene);
- BKE_scene_base_select(scene, base);
-#else
- (void)base;
-#endif
DEG_id_tag_update_ex(freestyle_bmain, &ob->id, OB_RECALC_OB | OB_RECALC_DATA | OB_RECALC_TIME);
More information about the Bf-blender-cvs
mailing list