Jump to content

Microprofile assert


photo

Recommended Posts

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

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:

Link to comment

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
×
×
  • Create New...