Difference between revisions of "Ident TODO"
From CEGUI Wiki - Crazy Eddie's GUI System (Open Source)
Line 17: | Line 17: | ||
== SampleBrowser == | == SampleBrowser == | ||
* Separate duties (input, Renderer-related stuff, etc) in different managers. Reduce the inheritation levels to a maximum of one. Simplify the classes. Make initialisation and deinitialisation more overlookable. Remove namespace "CEGUI" from all Sample-related stuff. | * Separate duties (input, Renderer-related stuff, etc) in different managers. Reduce the inheritation levels to a maximum of one. Simplify the classes. Make initialisation and deinitialisation more overlookable. Remove namespace "CEGUI" from all Sample-related stuff. | ||
+ | |||
+ | == CEGUI docu == | ||
+ | |||
+ | <source lang="text"> | ||
+ | [17:07:59] Ident we really need to fix the docu for how to set up an application for CEGUI | ||
+ | [17:08:33] Ident and by "we" i mean someone except me | ||
+ | [17:12:50] timotei Ident: Well, there is already one, isn't it? :P | ||
+ | [17:13:07] Ident it lacks crucial info | ||
+ | [17:13:12] timotei Like? | ||
+ | [17:13:19] Ident how to deinitialise cegui | ||
+ | [17:13:25] Ident how to update cegui exactly (code samples) | ||
+ | [17:13:37] Ident for example the notifydisplaysizechanged | ||
+ | [17:13:49] Ident or how to render in detail | ||
+ | [17:14:11] Ident there were some posts in the forum in that regard too | ||
+ | [17:14:20] Ident when i have time i look through all of them and update the api docu | ||
+ | [17:14:21] timotei CEGUI_SamplesBrowser provides some examples as far as I know | ||
+ | [17:14:24] Ident nah | ||
+ | [17:14:31] Ident thats not a good place to look for this | ||
+ | [17:14:32] timotei Or you mean, simple CEGUI-ed application? | ||
+ | [17:14:35] Ident the rendering is super-specific | ||
+ | [17:14:43] Ident and also some of it is hidden | ||
+ | [17:14:55] Ident it doesnt make sense to look into SamplesBrowser | ||
+ | [17:15:13] Ident thats not what the browser is there for | ||
+ | [17:17:35] Ident how to make an application using cegui should be well documented with examples in the api docu | ||
+ | [17:17:43] Ident this should be the only resource for this | ||
+ | [17:17:57] timotei I see :) | ||
+ | [17:17:59] Ident then- how to initialise resources, load layouts and use cegui - this is where the samples come into play | ||
+ | [17:18:00] Ident because | ||
+ | [17:18:12] Ident there is many different ways to set up a cegui application | ||
+ | [17:18:21] Ident we cant cover all | ||
+ | [17:18:39] Ident of course we can and should provide code snippetsd | ||
+ | |||
+ | http://cegui.org.uk/forum/viewtopic.php?f=10&t=6772&p=31775#p31775 | ||
+ | |||
+ | </source> |
Revision as of 12:23, 27 August 2014
CEGUI General
- Texture filtering should use trilinear filtering, instead of bilinear for magnification in some (!) cases. Need to figure out which cases need which and implement a switch, etc
- Replacing ColourRect with Colour would allow us to strip all per-vertex attributes for colours and allows us to use a highly performant uniform instead. People who want fancy fonts etc should just use Bitmap Fonts and Widgets can simply be changed to using different Images instead of applying Gradients with ColourRect there as well.
- setAlpha apparently triggers recreation of GeometryBuffer should be replaced by a uniform instead of applying it to the per-vertex attributes (Done by Henri - Todo:Check if this is really 100% bullet-proof)
- Check for the necessity and performance loss of unproject calls : d_owner->getRenderTarget().unprojectPoint(*d_geometry, in, p_out);
Opengl Renderers
- Improve OpenGL Renderer(s) extra states functions (and also rename it):
- Add and also do the restore for: glUseProgram(0); glBindVertexArray(0); glBindBuffer(GL_ARRAY_BUFFER, 0); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,0);
see https://github.com/kortemik/RBDOOM-3-BFG/blob/cegui/neo/sys/sdl/sdl_glimp.cpp#L553 - http://cegui.org.uk/forum/viewtopic.php?f=10&t=6752&sid=6bb9fb4a04417b28278538ed3f89af57&p=31632#p31632
- What about blending and scissor test?
- Add and also do the restore for: glUseProgram(0); glBindVertexArray(0); glBindBuffer(GL_ARRAY_BUFFER, 0); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,0);
SVG
- Need to implement MSAA in all Renderers as alternative for the alpha blending AA
- Need to fix D3D11 Rendering of SVG demo
SampleBrowser
- Separate duties (input, Renderer-related stuff, etc) in different managers. Reduce the inheritation levels to a maximum of one. Simplify the classes. Make initialisation and deinitialisation more overlookable. Remove namespace "CEGUI" from all Sample-related stuff.
CEGUI docu
[17:07:59] Ident we really need to fix the docu for how to set up an application for CEGUI [17:08:33] Ident and by "we" i mean someone except me [17:12:50] timotei Ident: Well, there is already one, isn't it? :P [17:13:07] Ident it lacks crucial info [17:13:12] timotei Like? [17:13:19] Ident how to deinitialise cegui [17:13:25] Ident how to update cegui exactly (code samples) [17:13:37] Ident for example the notifydisplaysizechanged [17:13:49] Ident or how to render in detail [17:14:11] Ident there were some posts in the forum in that regard too [17:14:20] Ident when i have time i look through all of them and update the api docu [17:14:21] timotei CEGUI_SamplesBrowser provides some examples as far as I know [17:14:24] Ident nah [17:14:31] Ident thats not a good place to look for this [17:14:32] timotei Or you mean, simple CEGUI-ed application? [17:14:35] Ident the rendering is super-specific [17:14:43] Ident and also some of it is hidden [17:14:55] Ident it doesnt make sense to look into SamplesBrowser [17:15:13] Ident thats not what the browser is there for [17:17:35] Ident how to make an application using cegui should be well documented with examples in the api docu [17:17:43] Ident this should be the only resource for this [17:17:57] timotei I see :) [17:17:59] Ident then- how to initialise resources, load layouts and use cegui - this is where the samples come into play [17:18:00] Ident because [17:18:12] Ident there is many different ways to set up a cegui application [17:18:21] Ident we cant cover all [17:18:39] Ident of course we can and should provide code snippetsd http://cegui.org.uk/forum/viewtopic.php?f=10&t=6772&p=31775#p31775