To-Do List
The to-do items' priorities are divided into these levels :
- Very High
- High
- Medium
- Low
- Very Low
Concerning items with the same priority-colors, the orders in the list also determine their
importance (item which appeared first has the higher priority).
Sub-items inherit their parents' priorities. This means the priority-colors for sub-items
are to be used to determine the importance of the sub-items in the same parent only (and
not to compare sub-items with different parents).
Please report bugs to my e-mail if you have time (please do not send big attachments,
since my inbox capacity is limited and my internet connection is also slow).
A full credit will be given to you (listed) in the VortexGE "Credits"
section for any help in developing VortexGE.
Also please have a look at the "Request List" for all other
stuffs which need to be implemented.
Video Environment
- Improve the CVideoEnv dialog capabilities :
- Controls to be completed/improved :
- Text boxes controls :
- CSLTextBox :
- Support for free cursor movement like in CMLTextBox ?
- Support for positioning cursor using mouse.
- Support for text selection and copying.
- Improve the support for international characters input.
- CMLTextBox :
- Add support for single line editing only ?
- Support for positioning cursor using mouse.
- Support for text selection and copying.
- Improve the support for international characters input.
Actually, adding single line attribute to CMLTextBox control is possible too.
In this case, the CSLTextBox will be forever just as simple text box control which
does not support free text editing, meanwhile the CMLTextBox can be used for more
complex input (either in multi-line or in single-line mode).
- CSpinButton control, all unimplemented styles defined
in ESBStyle are need to be implemented.
- Controls to be added :
- CPopUpMenu
- CMenuBar
- CSliderBar
- CDropDownList
- CSpinButtonEx
- Implement the underline styles of the CFont class in all
text drawing functions.
- Performance optimization using inline assembly.
3D Environment
- Fix the segmentation fault bug that will be occurred because
of the failure of the Sutherland-Hodgman clipping algorithm (when the polygons to be
clipped are non convex polygons). Well, this is the limitation of the Sutherland-Hodgman
algorithm, actually.
- Implement scene management functionality.
- Improve the collision detection mechanism.
- Implement vertex morphing on panels.
Audio Environment
- Implement MIDI playback using hardware MIDI.
- Streaming sound buffer (based on currently static CSoundBuffer)
for real time playing of large sound file (> 8MB).
- Add audio (wave) effect routines (filters, echo, fading,
etc.).
- Implement an audio compression mechanism in the CSoundBuffer
class.
- Performance optimization using inline assembly.
2D Image Manipulations
- Check and improve the _IMG_TYPE_YV12_ image type.
- Improve the losy image compression mechanism in the
CImageBuilder class, perhaps by using YV12 image model ?
- Implement more image manipulation/filter routines.
- Improve the fractal framework, maybe add support to produce
3D fractal (something like 3D tree generator) ?
VortexLua and Game Entity Related Classes
- Complete the game entity classes.
- Complete the demo application, "demo/VLGame*".
- Improve the CMediaPool class.
Usability
- Improve the clipboard copy 'n paste support.
- Write more HTML tutorials for creating application
using VortexGE.
- Add the ability to build debian package.
- Add the ability to build slackware package.
Other To-Do List
- Test the functions/sections marked with
/* !!! NOT.TESTED.YET !!! */
- Improve the CThread class by adding "thread cleanup functions"
capabilities.
- Improve the API documentations (maybe also add more modules
for better separations).
- Do some optimizations & clean-ups :
- Make more use of the newly defined _if_likely() and
_if_unlikely() macros, see inside "lib/Base/VGch.h" file.
- Make more use of the GCC functions attributes : fastcall,
pure, const, malloc, format, visibility, etc.
- Improve the VortexGE IPC classes by adding named pipe and
shared memory functionalities.