comparison docs/overview.md @ 182:3107ce017c3a

Misc: switch back to SDL Qt Quick and QML was an exciting experiment but it's definitely not enough flexible and easy to use for game development. Using SDL2 will let us focusing on our own drawing functions without any kind of overhead. While here, start massive cleanup.
author David Demelier <markand@malikania.fr>
date Fri, 19 Oct 2018 20:18:19 +0200
parents
children
comparison
equal deleted inserted replaced
181:fbfc2555bda5 182:3107ce017c3a
1 Malikania overview
2 ==================
3
4 This memo is a simple overview about the Malikania Engine architecture.
5
6 Dependency overview
7 -------------------
8
9 This is the main targets and their dependencies.
10
11 ```nohighlight
12 +-------------------+
13 | |
14 +-------------------+ | mlk-client |
15 | | | mlk-map |
16 | mlk-server | | mlk-tileset |
17 | | | |
18 +-------------------+ +-------------------+
19
20 +-------------------+ +-------------------+
21 | | | |
22 | libmlk-server-js | | libmlk-client-js |
23 | | | |
24 +-------------------+ +-------------------+
25
26 +-------------------+ +-------------------+ +-------------------+
27 | | | | | |
28 | libmlk-server | | libmlk-client | | mlk-bcc |
29 | | | | | |
30 +-------------------+ +-------------------+ +-------------------+
31
32 +---------------------------------------------------------------+
33 | |
34 | libmlk-common |
35 | |
36 +---------------------------------------------------------------+
37 ```
38
39 libmlk-common
40 -------------
41
42 This library contains many utilities that can be used in both server and client
43 targets.
44
45 This library does not depend on client or server code at all.
46
47 libmlk-server
48 -------------
49
50 This library contains anything you need to develop a server running your game,
51 it does not depends on anything graphical and can safely be used on headless
52 machine.
53
54 libmlk-client
55 -------------
56
57 This library contains graphical modules to develop a rich client. It depends on
58 a graphical backend (mostly SDL) and all of what is needed to make a whole
59 client (graphics, audio, fonts and such).
60
61 libmlk-server-js and libmlk-client-js
62 -------------------------------------
63
64 These libraries are the official Javascript bindings for their respectives
65 homonyms.
66
67 mlk-server and mlk-client
68 -------------------------
69
70 These executables are written upon libmlk-server-js and libmlk-client-js
71 respectively, they are able to run games written in Javascript.
72
73 mlk-bcc
74 -------
75
76 The `mlk-bcc` tool is a very basic resource compiler, it transforms any input
77 data as C++ byte array.
78
79 mlk-tileset and mlk-map
80 -----------------------
81
82 These two executables are required to transform maps and tileset created with
83 the [tiled][link-tiled] map editor.
84
85 They are only used by the client.
86
87 [link-tiled]: http://www.mapeditor.org