Skip to content

Commit d1610f0

Browse files
committed
Update docs.
1 parent 9814e43 commit d1610f0

File tree

8 files changed

+65
-60
lines changed

8 files changed

+65
-60
lines changed

ChangeLog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## Developing
2+
3+
* Fix "static" missing of EGLTool function.
4+
* Add AFont_SetTextColor to Font.
5+
* Improve comments and logs of [Application, Input, Vibrator].
6+
17
## v0.6.0
28

39
_`2021.2.6 UTC+8 13:26`_

Docs/CodeDetails.md

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
2-
<img src="https://github.com/scottcgi/Mojoc/raw/master/Docs/Pic/Architecture.png" width="790" height="560" alt="Mojoc Engine Architecture" title="Mojoc Engine Architecture" />
1+
<img src="./Pic/Architecture.png" width="790" height="560" alt="Mojoc Engine Architecture" title="Mojoc Engine Architecture" />
32

43
##
54

6-
Mojoc modules have dependency hierarchy, the upper layer can reference the lower layer, but the lower layer cannot reference the upper layer, and parallel modules cannot be referenced to each other. This ensures minimal dependency compilation of modules.
5+
Mojoc modules have a dependency hierarchy, the upper layer can reference the lower layer, but the lower layer cannot reference the upper layer, and parallel modules cannot be referenced to each other. This ensures minimal dependency compilation of modules.
76

87
* [Toolkit Module](#toolkit-module)
98
* [ThirdParty Module](#thirdparty-module)
@@ -16,54 +15,54 @@ Mojoc modules have dependency hierarchy, the upper layer can reference the lower
1615

1716
## Toolkit Module
1817

19-
The [Toolkit](https://github.com/scottcgi/Mojoc/tree/master/Engine/Toolkit) module is development kit of C language. It provides basic data structure and algorithm support.
18+
The [Toolkit](../Engine/Toolkit) module is a development kit of C language. It provides basic data structure and algorithm support.
2019

21-
* [Math](https://github.com/scottcgi/Mojoc/tree/master/Engine/Toolkit/Math) provides mathematical related algorithm implementation.
22-
* [Utils](https://github.com/scottcgi/Mojoc/tree/master/Engine/Toolkit/Utils) provides basic data storage tools and algorithm structure.
23-
* [HeaderUtils](https://github.com/scottcgi/Mojoc/tree/master/Engine/Toolkit/HeaderUtils) provides independent structure definitions or functions (no `.c` file implementation).
24-
* [Platform](https://github.com/scottcgi/Mojoc/tree/master/Engine/Toolkit/Platform) provides platform-related tools implementation.
20+
* [Math](../Engine/Toolkit/Math) provides mathematical algorithms implementation.
21+
* [Utils](../Engine/Toolkit/Utils) provides basic data storage tools and algorithms.
22+
* [HeaderUtils](../Engine/Toolkit/HeaderUtils) provides independent structure definitions or functions (with no `.c` file implementation).
23+
* [Platform](../Engine/Toolkit/Platform) provides platform-related tools.
2524

2625

2726
## ThirdParty Module
2827

29-
The [ThirdParty](https://github.com/scottcgi/Mojoc/tree/master/Engine/ThirdParty) module is prebuild third party libraries, that can direct called by Mojoc engine. So the third party need to provide different prebuild lib files for native platforms of Mojoc support.
28+
The [ThirdParty](../Engine/ThirdParty) module contains third party libraries, that can direct called by Mojoc engine. So the third party need to provide different prebuild lib files for native platforms of Mojoc support.
3029

31-
* Currently only contains [PNG](https://github.com/scottcgi/Mojoc/tree/master/Engine/ThirdParty/PNG) library.
32-
* [ThirdPartyBuild](https://github.com/scottcgi/Mojoc/tree/master/ThirdPartyBuild) is multi-platform build project of ThirdParty.
30+
* Currently only contains [PNG](../Engine/ThirdParty/PNG) library.
31+
* [ThirdPartyBuild](../ThirdPartyBuild) is a multi-platform build project of the ThirdParty module.
3332

3433
## Graphics Module
3534

36-
[Graphics](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics) module is draw layer implemented with OpenGLES3, and provide drawing tools and implementations.
35+
[Graphics](../Engine/Graphics) module is draw layer implemented with OpenGLES3, and provides drawing tools and implementations.
3736

38-
* [Draw](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics/Draw) provides basic abstract drawing layer.
39-
* [OpenGL](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics/OpenGL) provides OpenGLES rendering functions.
40-
* [Platform](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics/OpenGL/Platform) provides platform-related EGL implementation.
41-
* [Tween](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics/Tween) provides tween animation implementation.
42-
* [Utils](https://github.com/scottcgi/Mojoc/tree/master/Engine/Graphics/Utils) provides drawing support tools.
37+
* [Draw](../Engine/Graphics/Draw) provides basic abstract drawing layer.
38+
* [OpenGL](../Engine/Graphics/OpenGL) provides OpenGLES rendering functions.
39+
* [Platform](../Engine/Graphics/OpenGL/Platform) provides platform-related EGL implementation.
40+
* [Tween](../Engine/Graphics/Tween) provides tween animation implementation.
41+
* [Utils](../Engine/Graphics/Utils) provides drawing support tools.
4342

4443
## Physics Module
4544

46-
[Physics](https://github.com/scottcgi/Mojoc/tree/master/Engine/Physics) module is simple physical simulation.
45+
[Physics](../Engine/Physics) module provides simple physical simulation.
4746

4847
## Audio Module
4948

50-
* [Audio.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Audio/Platform/Audio.h) is interface of audio API.
51-
* [Platform](https://github.com/scottcgi/Mojoc/tree/master/Engine/Audio/Platform) is cross-platform audio implementation
52-
* [Android/Audio.c](https://github.com/scottcgi/Mojoc/blob/master/Engine/Audio/Platform/Android/Audio.c) is OpenSLES implementation in Android.
53-
* [IOS/Audio.m](https://github.com/scottcgi/Mojoc/blob/master/Engine/Audio/Platform/IOS/Audio.m) is OpenAL implementation in IOS.
49+
* [Audio.h](../Engine/Audio/Platform/Audio.h) is an interface for the audio API.
50+
* [Platform](../Engine/Audio/Platform) is a cross-platform audio implementation.
51+
* [Android/Audio.c](../Engine/Audio/Platform/Android/Audio.c) is OpenSLES implementation in Android.
52+
* [IOS/Audio.m](../Engine/Audio/Platform/IOS/Audio.m) is OpenAL implementation in IOS.
5453

5554
## Extension Module
5655

57-
[Extension](https://github.com/scottcgi/Mojoc/tree/master/Engine/Extension) module is editor-related implementation.
58-
* [Spine](https://github.com/scottcgi/Mojoc/tree/master/Engine/Extension/Spine) is runtime implementation of Spine 2D skeleton animation.
56+
[Extension](../Engine/Extension) module is editor-related implementation.
57+
* [Spine](../Engine/Extension/Spine) is runtime implementation of Spine 2D skeleton animation.
5958

6059
## Application Module
6160

62-
[Application](https://github.com/scottcgi/Mojoc/tree/master/Engine/Application) module is app control and interaction layer. It provides app lifecycle callback, input event, native platform functions, component architecture and so on.
61+
[Application](../Engine/Application) module is app control and interaction layer. It provides app lifecycle callbacks, input events, native platform functions, component architecture and so on.
6362

64-
* [Platform](https://github.com/scottcgi/Mojoc/tree/master/Engine/Application/Platform) are platform-related implementations.
65-
* [Platform/Android](https://github.com/scottcgi/Mojoc/tree/master/Engine/Application/Platform/Android) are native function implementations in Android.
66-
* [Platform/IOS](https://github.com/scottcgi/Mojoc/tree/master/Engine/Application/Platform/IOS) are native function implementations in IOS.
63+
* [Platform](../Engine/Application/Platform) contains platform-related implementations.
64+
* [Platform/Android](../Engine/Application/Platform/Android) contains native function implementations of Android.
65+
* [Platform/IOS](../Engine/Application/Platform/IOS) contains native function implementations of IOS.
6766

6867
##
6968
:book:

Docs/CodeStyle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Mojoc strictly follow this code style to ensure the C code **readability** and **uniformity**. This code style is important to understand how Mojoc works.
1+
Mojoc strictly follow this code style to ensure the C code **readability** and **uniformity**. This code style is important to understanding how Mojoc works.
22

33
#### Code Naming
44
* [Basic Naming](#basic-naming)

Docs/ComponentArchitecture.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ struct AComponent
8989

9090
## Mojoc Component
9191
It's a minimal reusable, interactive, stateful, composable, extensible structure. And the code implementation is as follows:
92-
* [Component.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Application/Component.h)
93-
* [Component.c](https://github.com/scottcgi/Mojoc/blob/master/Engine/Application/Component.c)
92+
* [Component.h](../Engine/Application/Component.h)
93+
* [Component.c](../Engine/Application/Component.c)
9494

9595
##
9696
:curly_loop:

Docs/OOC.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -249,15 +249,15 @@ If we want to override Sprite's `Draw` function:
249249
250250
## Examples
251251
252-
* [Drawable.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Graphics/Draw/Drawable.h)
253-
* [Drawable.c](https://github.com/scottcgi/Mojoc/blob/master/Engine/Graphics/Draw/Drawable.c)
254-
* [Sprite.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Graphics/OpenGL/Sprite.h)
255-
* [Sprite.c](https://github.com/scottcgi/Mojoc/blob/master/Engine/Graphics/OpenGL/Sprite.c)
256-
* [Struct.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Toolkit/HeaderUtils/Struct.h)
252+
* [Drawable.h](../Engine/Graphics/Draw/Drawable.h)
253+
* [Drawable.c](../Engine/Graphics/Draw/Drawable.c)
254+
* [Sprite.h](../Engine/Graphics/OpenGL/Sprite.h)
255+
* [Sprite.c](../Engine/Graphics/OpenGL/Sprite.c)
256+
* [Struct.h](../Engine/Toolkit/HeaderUtils/Struct.h)
257257
258258
## Sample
259259
260-
Mojoc uses [OOC Spine](https://github.com/scottcgi/Mojoc/tree/master/Engine/Extension/Spine) to implement the Java [OOP Spine](https://github.com/EsotericSoftware/spine-runtimes/tree/3.5/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine).
260+
Mojoc uses [OOC Spine](../Engine/Extension/Spine) to implement the Java [OOP Spine](https://github.com/EsotericSoftware/spine-runtimes/tree/3.5/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine).
261261
262262
##
263263
:rocket:

Docs/QuickStart.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,38 @@
11
## Three Steps To Quick Start
22

33
#### Step 1.
4-
Get the source code, have three options.
4+
To get the source code, there are three options.
55

6-
* Git from <https://github.com/scottcgi/Mojoc.git>
7-
* Download git master zip file <https://github.com/scottcgi/Mojoc/archive/master.zip>
8-
* Download released version <https://github.com/scottcgi/Mojoc/releases>
6+
* Git clone from <https://github.com/scottcgi/Mojoc.git>
7+
* Download Github master zip file from <https://github.com/scottcgi/Mojoc/archive/master.zip>
8+
* Download released version from <https://github.com/scottcgi/Mojoc/releases>
99

1010
#### Step 2.
1111

12-
Running sample [SuperLittleRed](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed), debugging on phone.
12+
Running sample [SuperLittleRed](../Samples/SuperLittleRed), debugging on phone.
1313

14-
* [IOS Folder](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed/IOS) is XCode project that all set up well, just open it with XCode.
15-
* [Android Folder](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed/Android) is AndroidStudio project that all set up well, just open it with AndroidStudio.
16-
* The only thing need to be set is switch Mojoc platform macro in [Platform.h](https://github.com/scottcgi/Mojoc/blob/master/Engine/Toolkit/Platform/Platform.h).
14+
* [IOS Folder](../Samples/SuperLittleRed/IOS) is XCode project that all set up well, just open it with XCode.
15+
* [Android Folder](../Samples/SuperLittleRed/Android) is AndroidStudio project that all set up well, just open it with AndroidStudio.
16+
* The only thing that needs to be set is Mojoc platform macro in [Platform.h](../Engine/Toolkit/Platform/Platform.h).
1717
```c
1818
#define PLATFORM_TARGET PLATFORM_IOS
1919
#define PLATFORM_TARGET PLATFORM_ANDROID
2020
```
21-
* [Code Folder](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed/Code) is sample code shared between android and ios.
21+
* [Code Folder](../Samples/SuperLittleRed/Code) is sample code shared between android and ios.
2222

23-
And the AndroidStudio and Xcode already config sample source code reference [engine code](https://github.com/scottcgi/Mojoc/tree/master/Engine). So any engine code changes will present in sample game.
23+
The AndroidStudio and Xcode sample source code already references [engine code](../Engine). So any engine code changes will be present in the sample game.
2424

2525
#### Step 3.
26-
Understanding source code.
26+
Understanding the source code.
2727

28-
* [Code Style](./CodeStyle.md) is unified code writing style, all source code following.
28+
* [Code Style](./CodeStyle.md) is unified code writing style that all the source code follows.
2929
* [OOC (Object Oriented C)](./OOC.md)) is the OOP (Object Oriented Programming) model of C language.
30-
* Mojoc uses extremely lightweight OOC model that very easy to understand and use.
30+
* Mojoc uses extremely lightweight OOC model that is very easy to understand and use.
3131
* Following the OOC rules, the C language can build complex projects, and can organize and reuse large amounts of code.
32-
* [Component Architecture](./ComponentArchitecture.md) is code architecture support gameplay logic.
33-
* [Code Details](./CodeDetails.md) are introduced the engine modules and functions of each code file. Through this can understand all the code of Mojoc.
32+
* [Component Architecture](./ComponentArchitecture.md) is code architecture that supports gameplay logic.
33+
* [Code Details](./CodeDetails.md) to introduce the engine modules and functions of each source file. Through this can understand all the code of Mojoc.
3434

35-
The sample [SuperLittleRed](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed) give all aspects of using Mojoc, including all the above features. So modify and debug the source code helps understand all about Mojoc.
35+
The sample [SuperLittleRed](../Samples/SuperLittleRed) shows all aspects of using Mojoc, including all the above features. So modifying and debugging the source code helps to understand everything about Mojoc.
3636

3737
## Android Studio Bug
3838

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ Mojoc is an open-source, cross-platform, pure C game engine. It is based on Open
77

88
* Released version in [releases](https://github.com/scottcgi/Mojoc/releases).
99
* Release changes in [ChangeLog](./ChangeLog.md).
10-
* Documents in [wiki](./Docs/Home.md).
10+
* Documents in [Docs/Home](./Docs/Home.md).
1111

1212

1313
## Architecture
14-
![Mojoc Engine Architecture](https://github.com/scottcgi/Mojoc/raw/master/Docs/Pic/Architecture.png "Mojoc Engine Architecture")
14+
![Mojoc Engine Architecture](./Docs/Pic/Architecture.png "Mojoc Engine Architecture")
1515

1616

1717
## License
18-
Mojoc is licensed under the [MIT License](https://github.com/scottcgi/Mojoc/blob/master/LICENSE "Mojoc Under MIT License").
18+
Mojoc is licensed under the [MIT License](./LICENSE "Mojoc Under MIT License").
1919

2020

2121
## Core Idea
@@ -45,13 +45,13 @@ Mojoc has been used for a cross-platform Android and IOS game.
4545
## Samples
4646
The samples will show all aspects of the Mojoc features. Each platform will provide native building project for native platform editor. For example: Android provides AndroidStudio project, IOS provides XCode project.
4747

48-
Currently there is only one sample, which is a simplfied version of the published game [SuperLittleRed](https://github.com/scottcgi/Mojoc/tree/master/Samples/SuperLittleRed). Please check out the wiki [Quick Start](https://github.com/scottcgi/Mojoc/wiki) guide for quickly run this sample.
48+
Currently there is only one sample, which is a simplfied version of the published game [SuperLittleRed](./Samples/SuperLittleRed). Please check out the wiki [Quick Start](./Docs/QuickStart.md) guide for quickly run this sample.
4949

5050
The compiled and playable apk is here:
5151

52-
* [SuperLittleRed-2.1.5.apk](https://github.com/scottcgi/Mojoc/blob/master/Samples/Apk/SuperLittleRed-2.1.5.apk?raw=true)
52+
* [SuperLittleRed-2.1.5.apk](./Samples/Apk/SuperLittleRed-2.1.5.apk?raw=true)
5353

54-
<img src="https://raw.githubusercontent.com/scottcgi/Mojoc/master/Docs/Pic/SuperLittleRed-Sample.gif" width="400" height="225" alt="SuperLittleRed-Sample" title="SuperLittleRed-Sample" />
54+
<img src="./Docs/Pic/SuperLittleRed-Sample.gif" width="400" height="225" alt="SuperLittleRed-Sample" title="SuperLittleRed-Sample" />
5555

5656

5757

@@ -84,7 +84,7 @@ The compiled and playable apk is here:
8484

8585
During the development I experienced a lot of repetition and thinking. For a long time I was not very sure and clear about how to use the C language to simulate OOP and keep it simple and uniform. So I tried a lot of ideas, repeated the proces: wrote code, modified, refactored, changed ideas, deleted code, rewritten it again and so on.
8686

87-
But in the end, I developed a unique rule set, the [Mojoc Code Style](https://github.com/scottcgi/Mojoc/wiki/Code-Style) and [Mojoc OOC Model](./Docs/OOC.md) that felt right and nice, then I followed the rules to develop Mojoc.
87+
But in the end, I developed a unique rule set, the [Mojoc Code Style](./Docs/CodeStyle.md) and [Mojoc OOC Model](./Docs/OOC.md) that felt right and nice, then I followed the rules to develop Mojoc.
8888

8989

9090
#### What kind of games can Mojoc do?
Binary file not shown.

0 commit comments

Comments
 (0)