Jump to content

Gluon/Core: Difference between revisions

From KDE Community Wiki
Arjen (talk | contribs)
Created page with "== Tasks == ;Port back to Eigen : After doing some simple testing of matrix concatenation it turns out Eigen is easily two times as fast as QMatrix4x4 in release mode. In add..."
 
Leinir (talk | contribs)
 
(One intermediate revision by the same user not shown)
Line 4: Line 4:
: After doing some simple testing of matrix concatenation it turns out Eigen is easily two times as fast as QMatrix4x4 in release mode. In addition, Eigen has a more pleasant API to work with since it matches closer to the actual mathematics. Therefore it has been decided to port Gluon back to using Eigen as vector library.
: After doing some simple testing of matrix concatenation it turns out Eigen is easily two times as fast as QMatrix4x4 in release mode. In addition, Eigen has a more pleasant API to work with since it matches closer to the actual mathematics. Therefore it has been decided to port Gluon back to using Eigen as vector library.
;Create a proper logging system
;Create a proper logging system
: The current logging system is pretty inadequate. While it works for very basic debug output, actually doing things like getting warnings to show up in the messages pane in Creator is unneccesarily complex and convoluted. Therefore I propose to create a logging system based around a singleton logging object that can handle reporting multiple levels of messages and ouput to different targets. This will also help development on Windows since it would avoid the necessity of things like "DebugView".
: The current logging system is pretty inadequate. While it works for very basic debug output, actually doing things like getting warnings to show up in the messages pane in Creator is unneccesarily complex and convoluted. Therefore I propose to create a logging system based around a singleton logging object that can handle reporting multiple levels of messages and ouput to different targets. This will also help development on Windows since it would avoid the necessity of things like "DebugView". Singleton logger is created for use with things not obviously linked to the game tree (such as render targets and the graphics backend object), and levels are added to the current debugging system (debug, info, warning, error and fatal, others if they become required (such as verbose, for super-verbose info such as "this asset support the filetype(s): ...")). Finally, module information is added to the debug output, so filters can be applied.

Latest revision as of 15:34, 4 December 2012

Tasks

Port back to Eigen
After doing some simple testing of matrix concatenation it turns out Eigen is easily two times as fast as QMatrix4x4 in release mode. In addition, Eigen has a more pleasant API to work with since it matches closer to the actual mathematics. Therefore it has been decided to port Gluon back to using Eigen as vector library.
Create a proper logging system
The current logging system is pretty inadequate. While it works for very basic debug output, actually doing things like getting warnings to show up in the messages pane in Creator is unneccesarily complex and convoluted. Therefore I propose to create a logging system based around a singleton logging object that can handle reporting multiple levels of messages and ouput to different targets. This will also help development on Windows since it would avoid the necessity of things like "DebugView". Singleton logger is created for use with things not obviously linked to the game tree (such as render targets and the graphics backend object), and levels are added to the current debugging system (debug, info, warning, error and fatal, others if they become required (such as verbose, for super-verbose info such as "this asset support the filetype(s): ...")). Finally, module information is added to the debug output, so filters can be applied.