I'm considering make a blog about the gui toolkit, write about the progress, post concepts and ideas, and receive opinions.
@Hi, Arnaud. Thanks for the warning. I've never used git and github before, so I end up forgetting to include some files before commit. I'm compiling it on Archlinux. You will need: BasicUtils (another library mine, also on github) and Cairo library (used only to create the font texture). I will try to compile under windows later. Here is the current main loop inside GUI.c: http://pastebin.com/dnFR7U4X It is not the same at the github (name as "RunWindow"), this one was not commited yet. I'm not using sleep to force the rendering frame-rate, since it would stop the "processing" frame-rate too. I'm just subtracting the last time by the current time, if the value is > than 1 sec, then the rendering function is called. It resembles the "Constant Game Speed with Maximum FPS" loop at http://www.koonsolo.com/news/dewitters-gameloop/. The SDL calls are commented and being replaced by GLFW/OpenGL calls. So, since my last message, I switched from FBOs to use glScissor instead. I could not ask for better results, performance is not a problem anymore: When I was using FBOs * Using < 400 widgets, the processing frame-rate was about 420000 cycles. * The rendering frame-rate was at the max speed: 60 fps. * But the processing frame-rate can decreases very fast, an > 400 widgets, the rendering frame-rate was comprimised. Using glScissor * I was able to use more than 3600 widgets and keep the processing frame-rate about 530000 cycles!!! The top frame-rate is about 850000 cycles. * Virtually, no lost of rendering frame-rate. About the current state of the widgets, I have: Single-line editor (short name: Entry). Tabset (cool feature: to scroll the tabset, you have to hold righ-click and move the cursor). Notebook. Label. Treeview (still WIP). Scrollbar (need some polish). Button. I just made a commit, but I will commit again soon (today, or tomorrow). I've changed some stuff that affects how to integrate the toolkit with a script language, but I will write about it later. Regards, Felipe Ferreira 2014/1/3 Arnaud Loonstra <[email protected]> > On 01/03/2014 10:19 AM, Felipe Ferreira da Silva wrote: > > Hewi, > > > > Nice work on the BUI page. > > About the first issue "Toolbar is only accessible in the 3D View". > Wouldn't > > it be redundant if you had two 3D view, and two toolbars. It could be > only > > one toolbar for both views. > > > > News about TableGUI... > > I'm rewriting parts of its code. Most of the time rewriting the OpenGL > > calls, just to improve the performance. > > > > I have made a lot of changes since my last commit on the github page. I'm > > trying an alternative to FBOs that seems to be more powerfull, faster: > > glScissor, that do not require memory as FBOs do, and seems faster to > > render, since it is just an bitwise operation. > > The main loop was refactored, it runs at full speed, but the rendering is > > just called each 16.66 miliseconds, giving me about 60 fps. > > Hey Felipe, > > Check your commits I think you forgot to add files to the repo e.g. > GUI_notebook.c > > What platform are you on? I've been trying to compile your code on > Debian Jessie now and then but the Makefile bugs me everytime. > > I'm wondering what methods are you using for the application loop. I'm > seeing both SDL calls and GLFW but not where a framerate is set. Are you > using a sleep to force the framerate? > > Rg, > > Arnaud > > -- > w: http://www.sphaero.org > t: http://twitter.com/sphaero > g: http://github.com/sphaero > i: freenode: sphaero_z25 > _______________________________________________ > Bf-committers mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-committers > -- - Felipe Ferreira da Silva _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
