Cleanup: Move scene.c to C++

This is meant to allow using C++ data structures in this file
as a performance improvement. Particularly `Vector` instead
of `ListBase` for `duplilist`. This change builds and passes
tests on all platforms on the buildbot.
This commit is contained in:
Hans Goudey 2022-03-28 15:53:19 -05:00
parent c9f54cd644
commit fc288d3970
5 changed files with 252 additions and 263 deletions

View File

@ -515,7 +515,7 @@ void BKE_main_id_flag_listbase(struct ListBase *lb, int flag, bool value);
void BKE_main_id_flag_all(struct Main *bmain, int flag, bool value);
/**
* Next to indirect usage in `readfile.c/writefile.c` also in `editobject.c`, `scene.c`.
* Next to indirect usage in `readfile.c/writefile.c` also in `editobject.c`, `scene.cc`.
*/
void BKE_main_id_newptr_and_tag_clear(struct Main *bmain);

View File

@ -247,7 +247,7 @@ set(SRC
intern/preferences.c
intern/report.c
intern/rigidbody.c
intern/scene.c
intern/scene.cc
intern/screen.c
intern/shader_fx.c
intern/shrinkwrap.c

View File

@ -1990,7 +1990,7 @@ enum {
/* sequencer seq_prev_type seq_rend_type */
/** #RenderData.engine (scene.c) */
/** #RenderData.engine (scene.cc) */
extern const char *RE_engine_id_BLENDER_EEVEE;
extern const char *RE_engine_id_BLENDER_WORKBENCH;
extern const char *RE_engine_id_CYCLES;

View File

@ -402,7 +402,7 @@ RenderResult *render_result_new(Render *re,
render_layer_add_pass(rr, rl, 4, RE_PASSNAME_COMBINED, view, "RGBA", false);
}
/* NOTE: this has to be in sync with `scene.c`. */
/* NOTE: this has to be in sync with `scene.cc`. */
rl->layflag = SCE_LAY_FLAG_DEFAULT;
rl->passflag = SCE_PASS_COMBINED;