1234567891011121314151617181920212223242526272829303132 |
- Voxelands - rewritten in C
- What to do with this repo:
- clone it
- pick a cpp file from the main repo
- rewrite that file in C(89)
- commit it here
- if something needs a bit of boilerplate, darkrose probably already has it - ask
- libs included here already:
- array.h - gives dynamic arrays
- crypto.h - some some basic hashes, base64, etc
- file.h - interact with files as memory buffers, use this to load/read/write/save files, also useful for replacing stream buffers in cpp
- list.h - linked list code, any struct with the four prev/next/first/last pointers can use this
- nvp.h - name/value pair, basic hash table on top of a linked list, use for config, or to replace cpp std::map
- path.h - path resolution, use this to get the path of a file
- thread.h - threads and mutexes, can safely lock a mutex twice from the same thread without locking up
- common.h - includes some 3D maths, logging, and config functions, as well as some string functions (including cross-arch strdup)
- - also has some macros for exposing functions in headers
- - and some common/useful structs (vectors, positions, colours, quaternions, rectangles, collision boxes, etc)
- some todo:
- collision.c is waiting on content*.c/h for getting block data
- config.c is waiting on command parsing
- log.c is waiting on ui and in-game console
- Makefile.mingw-cross/.bsd/other-platform need writting
- crypto needs sha1
|