diff options
Diffstat (limited to 'intern/cycles/app/cycles_standalone.cpp')
-rw-r--r-- | intern/cycles/app/cycles_standalone.cpp | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/intern/cycles/app/cycles_standalone.cpp b/intern/cycles/app/cycles_standalone.cpp index 9a193548d7a..2a438397ae0 100644 --- a/intern/cycles/app/cycles_standalone.cpp +++ b/intern/cycles/app/cycles_standalone.cpp @@ -29,7 +29,10 @@ #include "util_progress.h" #include "util_string.h" #include "util_time.h" + +#ifdef WITH_CYCLES_STANDALONE_GUI #include "util_view.h" +#endif #include "cycles_xml.h" @@ -100,8 +103,10 @@ static void session_init() if(options.session_params.background && !options.quiet) options.session->progress.set_update_callback(function_bind(&session_print_status)); +#ifdef WITH_CYCLES_STANDALONE_GUI else options.session->progress.set_update_callback(function_bind(&view_redraw)); +#endif options.session->start(); @@ -136,6 +141,7 @@ static void session_exit() } } +#ifdef WITH_CYCLES_STANDALONE_GUI static void display_info(Progress& progress) { static double latency = 0.0; @@ -186,6 +192,7 @@ static void keyboard(unsigned char key) else if(key == 27) // escape options.session->progress.set_cancel("Cancelled"); } +#endif static int files_parse(int argc, const char *argv[]) { @@ -271,8 +278,14 @@ static void options_parse(int argc, const char **argv) else if(ssname == "svm") options.scene_params.shadingsystem = SceneParams::SVM; - /* Progressive rendering */ - options.session_params.progressive = true; +#ifdef WITH_CYCLES_STANDALONE_GUI + /* Progressive rendering for GUI */ + if(!options.session_params.background) + options.session_params.progressive = true; +#else + /* When building without GUI, set background */ + options.session_params.background = true; +#endif /* find matching device */ DeviceType device_type = Device::type_from_string(devicename.c_str()); @@ -325,13 +338,15 @@ using namespace ccl; int main(int argc, const char **argv) { path_init(); - options_parse(argc, argv); - + +#ifdef WITH_CYCLES_STANDALONE_GUI if(options.session_params.background) { +#endif session_init(); options.session->wait(); session_exit(); +#ifdef WITH_CYCLES_STANDALONE_GUI } else { string title = "Cycles: " + path_filename(options.filepath); @@ -340,6 +355,7 @@ int main(int argc, const char **argv) view_main_loop(title.c_str(), options.width, options.height, session_init, session_exit, resize, display, keyboard); } +#endif return 0; } |