1 version 0.50 - [under development]
4 - Fully documented external interface functions
5 using the special syntax needed to be
6 parsed by the application neuroman.tcl.
7 The documentation includes examples and full description
8 of each of the the functions.
11 - Spreaded the code of the video module (especially the code
12 concerning the painter's algorithm) among more than one
13 source file for a better split of tasks and thus a better
14 organisation of the code.
15 - Nicholas Niro nik_89@neuroponic.com
19 - fix the dynamic redraw of the tiles below the dynamic object,
20 it does not seem to work perfectly; it redraw a very small
21 portion of the dynamic object instead of the tile below on the
22 edges, barely noticeable.
23 - also noticed bad redraws in isoe when the robot goes off screen;
24 tiles around seems to blink black very fast, barely noticeable.
25 Confirmed this is a bug with type 0 or 3 bounds case. Quick fix
26 done, need to test it.
27 - [cancelled] implement a way to change a certain color into an
28 image to support things like font colors. Would need to be
29 implemented low in the drawing process. - won't do it
30 - implement a fast independant alpha module, something called
31 after the actual low level draw.
32 - Nicholas Niro nik_89@neuroponic.com
35 bitmap loader module (X11)
36 - find a way to convert it so it creates an XImage directly
37 (or indirectly by providing its ressources so the X11
38 abstraction layer can take care of creating an XImage out
39 of those). Currently, the bitmap only saves to the pixmap
40 format and then we push this image to the pixmap standard
41 lib in X11 which makes it all Very slow. This is an
42 important change that will need to be worked on very soon
43 because programs depending on neuro will need to dynamically
44 load images anytime to avoid using too much memory.
45 - Core bitmap should be made independant and remove the char
46 *symbol of the color struct.
47 - 24 BPP could be made faster if we had a map of the colors
48 already inputed; Instead of looping everytime the color
49 buffer to see if a color was already added, we would
50 simply do a certain & with the color binary map to see if
51 it was already added or no. This method would use too much
52 memory, need to find a way to implement this resonably.
53 - Nicholas Niro nik_89@neuroponic.com
57 - Make an abstraction of the images themselves, only the
58 screen would be in common with the library in use
59 (Would place neuro in direct competition with SDL).
60 OR Perhaps keep being semi independant(to, for example,
61 keep using the ultra performant X11 blitter) and only
62 use our own blitter for special things like alpha
63 rendering. (we chose the latter method :) )
64 - Nicholas Niro nik_89@neuroponic.com
67 graphics engine -- drawing push functions to return address
68 - In order for external applications to be able
69 to destroy or modify drawing entries, the
70 graphics engine's drawing push functions will
71 now return the address of the elements it
72 adds and new functions will be made to either
73 modify those elements or destroy them.
74 - Nicholas Niro nik_89@neuroponic.com
78 - Fixed the bugs concerning the new Draw function when
79 cleaning and the whole Data to be drawn were previously
80 destroyed. It used to randomly make images blink around.
81 - Nicholas Niro nik_89@neuroponic.com
84 - Fixed the bugs that made destroyed and immediatelly added
85 elements show with either a black background or not showing
86 at all. (especially with fonts for now)
87 - Nicholas Niro nik_89@neuroponic.com
90 - Got rid of libxpm, we now directly use the pixel
91 manipulation functions for the effect.
92 - Nicholas Niro nik_89@neuroponic.com
95 extlib X11 -- Lib_SetColorKey
96 - I want this function to create a bitmask to the
97 input image it recieves. Currently, it just sets
98 a flag so libxpm makes the correct pixel type
99 transparent with a bitmask, but we'll get rid of
101 - Robert Lemay bob@neuroponic.com
104 graphics engine -- change draw_this_cycle flag behavior
105 - Change this flag's behavior so it handles volatile
106 images the correct way.
107 - Nicholas Niro nik_89@neuroponic.com
110 graphics engine -- cleaning of same layers priority
111 - We need to bring up a priority inside items with
112 the same layers so that instructions to clean are
113 actually PUT in the beginning of tasks to do and
114 the rest after; So precedence would always put the
115 cleaning tasks in the front line. This would avoid
116 tasks to draw (especially text) never be done before
117 it is cleaned... This might be a bug however because
118 the redraw function is supposed to handle that...
119 - Nicholas Niro nik_89@neuroponic.com
123 add a function to Load bitmaps from memory
124 - Initially to support Unicode Truetype fonts but
125 would probably be very useful for other things too.
126 - Nicholas Niro nik_89@neuroponic.com
129 video -- graphics module
130 - Change the Dynamic type so it stays drawn until
131 the external program explicitly tells it to clean
132 it. (Eventually, this will completely remplace
133 the static dynamic method and only this method
134 will be used for both cases).
135 - Nicholas Niro nik_89@neuroponic.com
138 extlib -- Add abstract Fonts (Unicode) support
139 - Use freetype to handle the fonts.
140 - Nicholas Niro nik_89@neuroponic.com
143 extlib | other -- indirect extlib access
144 - External applications should not at all call the
145 functions directly from the extlib module. We
146 need to have redundant functions that will serve
147 as an interim between extlib and the extern
148 application. I suggest NEURO.h get its include
149 of extlib.h removed so external programs will
150 have a warning if they use the extlib functions.
151 - Nicholas Niro nik_89@neuroponic.com
156 - Added 4 new functions to the extlib modules.
157 All 4 are for the freetype library abstraction.
158 2 of those are core creation/cleaning functions and
159 the 2 others are to load a face and to render characters
161 - Nicholas Niro nik_89@neuroponic.com
164 - Added a few set of new functions to the graphics engine
165 that might replace the old dynamic/static method, see
166 the commit comment for more details.
167 - Nicholas Niro nik_89@neuroponic.com
171 - Made the configure script more robust and included the
172 freetype library as a dependency.
173 - Nicholas Niro nik_89@neuroponic.com