javier.serrano Posted May 3, 2017 Share Posted May 3, 2017 Hi, we have written the following threaded function: void thread_render_image(MyClass my_class){ my_class.enable_some_nodes(); //calls Unigine::Node.setEnabled(1) for some nodes wait; Image image = new Image(); engine.render.renderImage2D(my_class.get_camera(), image, my_class.image_size(), my_class.image_size(), 0 , my_class.image_flags()); wait; my_class.set_image(image); my_class.disable_some_nodes(); //calls Unigine::Node.setEnabled(0) for some nodes } void render_image(){ thread(functionid(thread_render_image), my_class); } We do our renders in a thread because render time takes long as it is rendering large number of nodes (like 2500 lights) and all works fine except when sometimes application crashes (without any log message). VisualStudio dubugger says that an assertion was called in: "microprofiler.h", function "MicroProfilerFlip()", line 1934. We can't figure out from where the error is coming. Sometimes crashes at first image render and sometimes at 10th or 15th render. Why is this assertion coming up? Any tips to solve this? Thanks, Javier Link to comment
silent Posted May 4, 2017 Share Posted May 4, 2017 Hi Javier, It's hard to say right now without a small stable reproduction. Could you please provide a small test scene for us? If you have engine sources you can rebuild engine solution without USE_MICROPROFILE define as well to reduce crashes. Thanks! How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
javier.serrano Posted May 4, 2017 Author Share Posted May 4, 2017 It seems this error comes when too much work is asked to GPU, by the way we can deal with this. Thanks for your answer! Link to comment
Recommended Posts