S3D v0.1 Release Notes
======================

2006-03-19 Simon Wunderlich <dotslash@packetmixer.de>

 * FINALLY, PROUDLY PRESENTING: S3D VERSION 0.1!!!
 * this changelog is pretty incomplete. Please use the subversion ChangeLog (by
   typing svn log) for updates.
 * We will stop this Changelog now, as svn does the dirty work :)

2006-03-15 Andreas Kohn <andreas@syndrom23.de>

 * some configure.ac changes to fix glut/sdl detection code
 * some autoconf magic to fix pthread detection for esoteric arch's.
 * a big hammer to prevent fortran checks

2006-03-14 Simon Wunderlich <dotslash@packetmixer.de>

 * added push/pep/pop-line and pep-vertex
 * dot_mcp now has egoshooter-mode (w,a,s,d)
 * added some Documentation entries

2006-03-10 Simon Wunderlich <dotslash@packetmixer.de>

 * added rc functionality: use /etc/s3drc or ~/.s3drc to automatically fire up
   your mcp or anything you want.

2006-03-07 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed -O2 problem

2006-03-03 Simon Wunderlich <dotslash@packetmixer.de>

 * using values from config.h, user does not have to edit server/config.h or
   clients/config.h anymore to fit his/her needs
 * Finally, Font triangulating is stable (at least it seems so ;)

2006-02-27 Simon Wunderlich <dotslash@packetmixer.de>

 * added GPL/LGPL copyright notes (phew -.-)
 * implemented object search path as : delimited list
 * INFINITY define into #ifndef
 * splitting README and INSTALL
 * security check for strncat and strncpy functions

2006-02-22 Simon Wunderlich <dotslash@packetmixer.de>

 * only select the nearest hit when clicking, not all on the line
 * fopen errors are not that important when looking through the search path ...
 * SIGNAL -> WITH_SIGNALS

2006-02-20 Simon Wunderlich <dotslash@packetmixer.de>

 * added mplayer patch: patch your mplayer, use -vo s3d on the commandline and
   watch your videos in s3d in 3d space - yay

2006-02-18 Simon Wunderlich <dotslash@packetmixer.de>

 * by commenting out DEBUG define, all debug messages will not even be [call]ed
 * dot_mcp added view reset button, fixed rotate button
 * dot_mcp has now some "GO!!" menu
 * 3dsread.c x-axis inversion fixed
 * fixed 0.0 size application problem
 * removed c++ styles in olsrs3d

2006-02-17 Simon Wunderlich <dotslash@packetmixer.de>

 * gintl() and gints() added in 3dsread.c, hopefully improving endianess
   compatibility
 * moved dot_mcp to apps
 * abadoning my own tries and the glu-tesselator for triangulating the fonts
   and using public domain code for seidels algorithm by Narkhede A. and
   Manocha D.

2006-01-30 Andreas Kohn <andreas@syndrom23.de>

 * rework larger parts of the build infrastructure, use automake and libtool.

2005-12-22 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed: server did not unfocus when app quits ...
 * mcp got some nice rotation mode

2005-12-21 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some focusing/camera update issues
 * perfomance improvement in olsrs3d

2005-12-16 Simon Wunderlich <dotslash@packetmixer.de>

 * telling the mcp/programs aspect ratio of the cam
 * new layout in the mcp.

2005-12-12 Simon Wunderlich <dotslash@packetmixer.de>

 * tuning on the configure/make system
 * added glutInit(), to make glut happy

2005-12-05 Simon Wunderlich <dotslash@packetmixer.de>

 * some more work on the olsr visualizer, testing with more graphs, hope it
   won't explode anymore ;)

2005-11-27 Simon Wunderlich <dotslash@packetmixer.de>

 * finished olsrs3d, the olsr-visualizer

2005-11-26 Simon Wunderlich <dotslash@packetmixer.de>

 * removed some race condition bug in the server

2005-11-25 Simon Wunderlich <dotslash@packetmixer.de>

 * starting olsrs3d

2005-10-24 Simon Wunderlich <dotslash@packetmixer.de>

 * some more bugfixes in the autoconf-script.

2005-10-23 Simon Wunderlich <dotslash@packetmixer.de>

 * autoconf script nearly completed, it only compiled the apps you have the
   right libraries available.

2005-10-14 Simon Wunderlich <dotslash@packetmixer.de>

 * so long no update ... project is kind of sleeping :(
 * autoconf configure script started. Now you can check for your libs before
   compiling.

2005-07-10 Simon Wunderlich <dotslash@packetmixer.de>

 * filebrowser is now some cake with pies to select :)

2005-07-04 Simon Wunderlich <dotslash@packetmixer.de>

 * massive cleanup in s3dvt, removing nextchar in linestructures-weirdness,
   just having cx/cy as cursor positions.

2005-07-03 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed backspace and startup race-condition in s3dvt
 * fixed some CR/LF confusion in s3dvt

2005-06-27 Simon Wunderlich <dotslash@packetmixer.de>

 * logical and won't work on OF_CAM as it has 2 bits set - fixed some code
   handling this.

2005-06-26 Simon Wunderlich <dotslash@packetmixer.de>

 * forgot to check if link-request wants to link on itself
 * internal cleanup, like renaming obj_link_remove into obj_unlink in the
   server
 * removed some bugs which caused a segfault when trying to pep/delete
   something which is not present.
 * mcp does not use ring-structure anymore, places apps at the bottom of the
   screen.

2005-06-25 Simon Wunderlich <dotslash@packetmixer.de>

 * added ignore-callback into client-lib ... keeps the event-stack clean.
 * some standard-signal-handlers for sigint/sigterm added into s3d_init()

2005-06-22 Simon Wunderlich <dotslash@packetmixer.de>

 * some fixing in the clones-radius calculations
 * system-apps are now properly transfered

2005-06-21 Simon Wunderlich <dotslash@packetmixer.de>

 * transferring system-positions (like cams etc) to app-space and reporting it.
   this is useful for HUD-like things in apps. (e.g. linking things to the
   cam).
 * some fixes with clone/system confusion
 * somehow I passed the 10.000-line-mark O_o

2005-06-20 Simon Wunderlich <dotslash@packetmixer.de>

 * mcp-objects will be added when app logs in
 * no static cam-object anymore
 * each app get it's copy of system objects

2005-06-19 Simon Wunderlich <dotslash@packetmixer.de>

 * scale now only has one parameter for uniform scale, no x/y/z-scale
   anymore... it's too much trouble for me.

2005-06-16 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed camera navigation
 * put some rounding error-workaround into myInvert(), no more flickering in
   the camera

2005-06-15 Simon Wunderlich <dotslash@packetmixer.de>

 * rotation order changed, now this order: y,x,z this would logically be the
   earth position order: placing at longitude/latitude(y/x), and spin yourself
   at this place (z) :)

2005-06-14 Simon Wunderlich <dotslash@packetmixer.de>

 * linking to camera works now ... somehow :)
 * shm does not segfault on after quit-signal anymore
 * added s3d_object_info, to replace the mcp_* things later
 * camera info is now transferred to client
 * some minor fixes

2005-06-13 Simon Wunderlich <dotslash@packetmixer.de>

 * added some flags O_o

2005-06-07 Simon Wunderlich <dotslash@packetmixer.de>

 * shm checks for connection after some idle time
 * removed stupid usleep in shm_writen/shm_readn which is now only called after
   buffer was full

2005-06-04 Simon Wunderlich <dotslash@packetmixer.de>

 * matrix inverse works now.

2005-06-03 Simon Wunderlich <dotslash@packetmixer.de>

 * started matrix inverse (the buggy base)

2005-05-29 Simon Wunderlich <dotslash@packetmixer.de>

 * changed matrix-type name from t_mat to t_mtrx so it can't be confused with
   struct t_mat
 * started cull.c, should speed things up by culling

2005-05-26 Simon Wunderlich <dotslash@packetmixer.de>

 * s3d_x11gate now sends key-events to the server, thou special keys are not
   properly supported yet. support for different depths added.

2005-05-25 Simon Wunderlich <dotslash@packetmixer.de>

 * calibrated card positions of s3dgps

2005-05-22 Simon Wunderlich <dotslash@packetmixer.de>

 * seperated the mcp-menu into s3d_appstarter.c
 * changed the mcp-display structure to a ring/planet like one

2005-05-16 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed a bug in matrix.c which was responsible for bad calculation of the
   z-axis in object radius
 * wiped obsolete find_cloneparent() and get_obj_by_oid() in server

2005-05-15 Simon Wunderlich <dotslash@packetmixer.de>

 * s3dgps now draws gpsdrive-downloaded maps and marks position acquired from
   gpsd

2005-05-14 Simon Wunderlich <dotslash@packetmixer.de>

 * lots of cleanup
 * passing struct t_process pointers instead of pids internally
 * fixed bad order in transformations in the server, it first rotated, then
   scaled

2005-05-11 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some bugs with new process managment and mcp
 * focus_pid becomes focus_oid
 * shm works ;)

2005-05-08 Simon Wunderlich <dotslash@packetmixer.de>

 * reimplementation of process-managment
 * added apps/ directory for some programs which are (/supposed to be) more
   than plain examples
 * started s3dgps.c

2005-05-06 Simon Wunderlich <dotslash@packetmixer.de>

 * client can now connect to shm by url

2005-05-05 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed server picking code
 * fixed Makefile
 * implemented shm.c and shm_ringbuffer.c in both client and server, phew ...
 * server: created tcp.c, removing tcp-special things from network.c to make
   things generic for upcoming shm and other ways to communicate.
 * server: cleaned up prot_com_in() and prot_com_out()

2005-04-30 Simon Wunderlich <dotslash@packetmixer.de>

 * put some (u)intXX_t's into the client code

2005-04-29 Simon Wunderlich <dotslash@packetmixer.de>

 * added a running cat (katze.c) in examples
 * renamed s3d_clone_object to s3d_clone and s3d_change_clone_target to
   s3d_clone_target

2005-04-28 Simon Wunderlich <dotslash@packetmixer.de>

 * now checking FD_SETSIZE so we don't overflow
 * snowman is now spinning ;)
 * all files compile with -pedantic now (removed C++ style // comments and
   such)
 * removed bad signal handling which only worked with -O2

2005-04-26 Simon Wunderlich <dotslash@packetmixer.de>

 * some cleanup in server/object.c
 * scaled clone objects are properly handled now
 * introducing OF_CLONE_SRC and OF_LINK_SRC
 * using fstat() to get filesize

2005-04-22 Simon Wunderlich <dotslash@packetmixer.de>

 * added snowman.c in examples

2005-04-21 Simon Wunderlich <dotslash@packetmixer.de>

 * s3d_x11gate only updating changed scanlines
 * cleaned up the typemess in server. objects are now declared as uint32_t
   there.

2005-04-20 Simon Wunderlich <dotslash@packetmixer.de>

 * s3d_x11gate added, can display some x11-screen into an s3d-texture

2005-04-19 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some bug in texture loading
 * mplayer vo-plugin is working ;)

2005-04-17 Simon Wunderlich <dotslash@packetmixer.de>

 * repaired texture functions so any texture size can now be applied.
 * added make install/uninstall
 * started some simple mplayer vo plugin
 * added s3d_pep_texture() in client

2005-04-16 Simon Wunderlich <dotslash@packetmixer.de>

 * remove -O3 as it breaks on functions with many arguments
 * added texture handling functions for both client and server
 * added texturetest.c - textures finally work!
 * renamed s3d_push_polygon_array to s3d_push_polygons and other *_array*
   functions like that

2005-04-13 Simon Wunderlich <dotslash@packetmixer.de>

 * added full load/pepping for texture coords, normals and materials in the
   server.
 * repaired some things in the s3dvt

2005-04-09 Simon Wunderlich <dotslash@packetmixer.de>

 * no obj_size_update() in obj_push_vertex, using "realtime updating" for
   performance.

2005-04-06 Simon Wunderlich <dotslash@packetmixer.de>

 * app radius and object radius is now recalculated instantly using
   obj_size_update(), obj_pos_update() and obj_check_biggest_obj()
 * NULL-pointers at the end of the object stack will be freed now using macro
   obj_valid() to obtain object (and check)
 * lots of bugfixing

2005-04-05 Simon Wunderlich <dotslash@packetmixer.de>

 * checking for circular links when calling obj_link()
 * added obj_pos_update()
 * no clone-forwarding now! it's only confusing anyways ...
 * link/clone references of mcp-objects get handled when a process disappears

2005-04-04 Simon Wunderlich <dotslash@packetmixer.de>

 * some changes in obj_clone_change and others so clone chains can't be build
   anymore.

2005-04-02 Simon Wunderlich <dotslash@packetmixer.de>

 * started some simple configure script

2005-04-01 Simon Wunderlich <dotslash@packetmixer.de>

 * some optimizations in s3dvt.c
 * s3d gives focus to latest entered program if there is no mcp

2005-03-25 Simon Wunderlich <dotslash@packetmixer.de>

 * mcp_focus gave focus to mcp-object, not pid - fixed.

2005-03-24 Simon Wunderlich <dotslash@packetmixer.de>

 * checking clone container for unallowed, e.g. virtual objects before cloning
 * fixed s3dvt.c for pipe mode, but it does not really satisfies (ssh does not
   work, weird behavior).
 * pipe mode will only work as fallback now.
 * fixed minor bugs in dot_mcp.c. added a transparent sphere around the objects

2005-03-23 Simon Wunderlich <dotslash@packetmixer.de>

 * client/object_queue.c created. object adding is now cached and MUCH faster!
 * remove clone call. it works now with changing clone target.

2005-03-19 Simon Wunderlich <dotslash@packetmixer.de>

 * changed example/s3dvt.c to work with pipes instead of tty's

2005-03-18 Simon Wunderlich <dotslash@packetmixer.de>

 * server/object.c: can't upload data to OF_VIRTUAL-objects now.

2005-03-17 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some bug in freetype.c (char overflowing)

2005-03-16 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some error in matrix.c, radius is now calculated correctly for app
   objects (I hope)
 * s3d_pep_material[_a]() added

2005-03-13 Simon Wunderlich <dotslash@packetmixer.de>

 * added alpha transparency
 * using into_position into render_by_mcp() now.

2005-03-12 Simon Wunderlich <dotslash@packetmixer.de>

 * obj_load_tex() written
 * added a simple menu in dot_mcp.c

2005-03-08 Simon Wunderlich <dotslash@packetmixer.de>

 * now telling mcp about resizing (buggy)
 * some more caching in size calculation
 * filebrowser minor things
 * mcp updates apps now.

2005-03-01 Simon Wunderlich <dotslash@packetmixer.de>

 * started the Documentation.

2005-02-28 Simon Wunderlich <dotslash@packetmixer.de>

 * now caching tesselated glyphs (but seems not to be a big performance
   boost...)

2005-02-27 Simon Wunderlich <dotslash@packetmixer.de>

 * prepared proto.h for textures
 * removed some bug which deleted display lists of clone parents if the clone
   is deleted
 * some more work on the filebrowser

2005-02-17 Simon Wunderlich <dotslash@packetmixer.de>

 * introducing s3d_mainloop, changing all examples for new api...
 * deleted example/picktest.c (it's useless)
 * added client/config.h

2005-02-16 Simon Wunderlich <dotslash@packetmixer.de>

 * made local cvs, including proto.h with -I compiler option now instead of
   symlinking it.

2005-02-14 Simon Wunderlich <dotslash@packetmixer.de>

 * added libfontconfig support for fontselect.c

2005-02-12 Simon Wunderlich <dotslash@packetmixer.de>

 * removed some stupid bug in event.c :)
 * fontselect.c for selecting the right font
 * implemented smoothing groups for 3dsreader.c
 * some more malloc()s and free()s in client removed
 * renamed s3d_add_* to s3d_push_* as / s3d_del_* s3d_pop_* to match protocol
   better.
 * added S3D_P_C_PEP_POLY_NORMAL to protocol,server client

2005-02-11 Simon Wunderlich <dotslash@packetmixer.de>

 * callback system implemented in client

2005-02-10 Simon Wunderlich <dotslash@packetmixer.de>

 * finished obj_get_maximum() for clones and links and applications.
 * added find_cloneparent()
 * added matrix.c

2005-02-09 Simon Wunderlich <dotslash@packetmixer.de>

 * made SIGIO optional, fixed G_GLUT/G_SDL config options
 * attempt to make code a little bit more win32-friendly

2005-02-08 Simon Wunderlich <dotslash@packetmixer.de>

 * client shared lib is now compiling with -fPIC for x86_64

2005-02-05 Simon Wunderlich <dotslash@packetmixer.de>

 * fixed some bug in (the bad) font selection code
 * added get_radius() and sizing things to the protocol
 * added get_maximum() to find size of an object
 * normalizing has it's own function now, calc_normal()
 * cleaned up obj_render() somehow

2005-02-02 Simon Wunderlich <dotslash@packetmixer.de>

 * remove static font paths.
 * eliminated some bad malloc in proto.c :)
