Commit graph

10 commits

Author SHA1 Message Date
Hannes Mann 816a143890 Refactoring, lots of refactoring
* Split OpenRayman into two parts (openrayman and libopenrayman)
  libopenrayman is licensed under LGPLv3
* dsb_interpreter -> dsb_script
  gf_converter -> gf_texture
  This means that all currently available formats share a mostly common interface
  (specify stream via constructor, check if the file is valid via valid()
   and/or extract/decompile via a function returning bool)
* Since all formats can only be created via an std::istream,
  libopenrayman includes two helper stream functions in openrayman::common
  These are in_mem_(i/o)stream and encoded_stream
  in_mem stream read and write to a block of memory (can be created from vector/char*)
  encoded_streams take an existing stream and decodes data after reading it from the original stream
* Some small refactoring to other parts of the engine
2016-07-07 08:16:48 +02:00
Hannes Mann ce39ade17f Start working on decompilation process
Can decompile part of .dsbs for now, and it can decode files
2016-06-19 03:23:02 +02:00
Hannes Mann 5de095de75 Add documentation for some of the formats
This could not have been done without the amazing https://github.com/szymski/Rayman2Lib. (i have not verified if it works, it might be crap)
2016-06-16 04:25:48 +02:00
Hannes Mann 3fffccf665 Add a game class for mod support
This commit adds a game class, which is a collection of files that can depend on other files.
The base game "rayman2" contains all files required for the game, and they can then be overriden by games that depend on it.
OpenRayman will use this for editing menus (adding settings) and possibly other things.
All mods should target "rayman2_openrayman".
2016-06-15 03:55:52 +02:00
Hannes Mann 0bdfb582c9 Fix for windows 2016-06-12 16:37:23 +02:00
Hannes Mann f2b5e0bb73 Thanks to for lodepng 2016-06-11 22:44:50 +02:00
Hannes Mann f87b0351da Add glfw as submodule 2016-06-11 18:22:42 +02:00
Hannes Mann 2d7779afff Add rough TODO, for now 2016-06-11 03:20:54 +02:00
Hannes Mann 5721e6b2a5 Some initial boilerplate 2016-06-11 03:12:15 +02:00
Hannes Mann 2db6a433c9 Initial commit 2016-06-11 02:35:24 +02:00