The best thing would be to have several MAIN catergories, like we have in our code archives.
eg,
3D EFFECTS
3D MATHS
3D MESH
ALGORITHIMS
AUDIO
FILE UTILITIES
2D GRAPHICS
NETWORKING
and allow users to create their own subcategories, as well as have several pre-defined ones. For instance:
3D EFFECTS\PARTICLES
3D EFFECTS\ANTIALIASING/SMOOTHING
3D EFFECTS\TEXTURE ROUTINES
3D EFFECTS\SHADOWS
3D MATHS\VECTORS
3D MATHS\WAYPOINTS
3D MESH\DYNAMIC MANIPULATION
3D MESH\CSG FUNCTIONS
3D MESH\TERRAIN
ALGORITHIMS\CURVES
ALGORITHIMS\SIN PLOTS
ALGORITHIMS\KEY GENERATORS/VERIFIERS
ALGORITHIMS\FOLLOWING/CHASING ROUTINES
AUDIO\MULTI-CHANNEL PLAYING
AUDIO\SOUND MANIPULATION
AUDIO\FILE CREATION
FILE UTILITIES\SAVE/LOAD DIALOGUES
FILE UTILITIES\BIN/HEX WRITING
FILE UTILITIES\DRIVE/FOLDER ROUTINES
2D GRAPHICS\VECTOR GRAPHICS
2D GRAPHICS\TILING ENGINES
2D GRAPHICS\PARALLAX SCROLLING
2D GRAPHICS\GUI
2D GRAPHICS\EFFECTS
NETWORKING\HTTP ROUTINES
NETWORKING\MULTIPLAYER ROUTINES
NETWORKING\CHAT ROUTINES
NETWORKING\FILE TRANSFERS
+BlackD
eg,
3D EFFECTS
3D MATHS
3D MESH
ALGORITHIMS
AUDIO
FILE UTILITIES
2D GRAPHICS
NETWORKING
and allow users to create their own subcategories, as well as have several pre-defined ones. For instance:
3D EFFECTS\PARTICLES
3D EFFECTS\ANTIALIASING/SMOOTHING
3D EFFECTS\TEXTURE ROUTINES
3D EFFECTS\SHADOWS
3D MATHS\VECTORS
3D MATHS\WAYPOINTS
3D MESH\DYNAMIC MANIPULATION
3D MESH\CSG FUNCTIONS
3D MESH\TERRAIN
ALGORITHIMS\CURVES
ALGORITHIMS\SIN PLOTS
ALGORITHIMS\KEY GENERATORS/VERIFIERS
ALGORITHIMS\FOLLOWING/CHASING ROUTINES
AUDIO\MULTI-CHANNEL PLAYING
AUDIO\SOUND MANIPULATION
AUDIO\FILE CREATION
FILE UTILITIES\SAVE/LOAD DIALOGUES
FILE UTILITIES\BIN/HEX WRITING
FILE UTILITIES\DRIVE/FOLDER ROUTINES
2D GRAPHICS\VECTOR GRAPHICS
2D GRAPHICS\TILING ENGINES
2D GRAPHICS\PARALLAX SCROLLING
2D GRAPHICS\GUI
2D GRAPHICS\EFFECTS
NETWORKING\HTTP ROUTINES
NETWORKING\MULTIPLAYER ROUTINES
NETWORKING\CHAT ROUTINES
NETWORKING\FILE TRANSFERS
+BlackD