Field lines, model loading, and CEF

Oskar & Michael N.: During the last week we’ve made more options available within the field lines GUI, to prepare for the SUN-EARTH event on June 27th. For the live GPU-traced implementation users can now switch out or update seed point files during run time. We’ve also received new data that resembles what is going to be used for the event. These data are, however, not providing the expected output and we’re trying to locate the issue. For the solar browsing, a buffer has been created. The idea is to have one or several threads to continuously perform decoding jobs by predicting which images are going to be shown. The prediction is done by looking at the OpenSpace delta time multiplied with a minimum update limit — the images that map to these times are put into the buffer. If the buffer runs empty, the PBO update is simply skipped for that frame, so nothing stops the rendering thread. Another idea we have is to make the resolution time-dependent, this would basically mean that when the buffer runs empty, decoding is performed in a lower resolution until the buffer thread catches up again.

Jonathan: Since last week I’ve shown the interface to a number of people and managed to gathered some feedback. Parts of the interface have thus changed accordingly. For example, Zoom and Roll interaction no longer scales with multiple fingers, along with numerous other small improvements. I’ve also developed a unit test for the LM algorithm to be able to plot the path the solver took to converge to its solution. This was useful when debugging certain issues with the algorithm, such as it converging slowly or making missteps in the gradient descent. One long lasting bug has thus been fixed! I’ve also moved all parameters and changing variables for the algorithm into properties, so the user can change how the interface behaves through the GUI.

Rickard & Michael S: Last week we made some big changes to the structure of mesh generation. The texturing of the models are now done completely from shaders. This improves the size of the models and also their loading times. It also allows us to use textures from other cameras or different camera positions, which means we can get colored textures instead of only black and white. We’ve also looked into how we load the models: the models are now loaded as one subsite rather then each model for each subsite. This will also improve the loading time of the models. Our main goal right now is to improve the frame rate and loading of the models.

Klas: A CMake setup is finally in place for Chromium Embedded Framework (CEF). OpenSpace together with the CEF dynamic library, CEF process helper, and OpenSpace’s dynamic libraries, compiles and bundles the application on macOS. Work has begun on actually creating the embedded web browser within the WebGUI module. I’m expecting this to be something of a challenge, since CEF is expecting to be the main part of an application — not the other way around, as in our case. We do not want CEF be the star of our application — that should be OpenSpace itself.

Gene: I worked with Vikram on WMS server configuration, transferring information so I can take over with this when he leaves. I have also gone over his terrain bump-mapping work. I’m continuing to work on the MPCDI configuration in SGCT for the E&S Digitstar projection system.