Updated raylib architecture (markdown)

master
Ray 3 anni fa
parent
commit
2ecdf3f06d
1 ha cambiato i file con 4 aggiunte e 3 eliminazioni
  1. +4
    -3
      raylib-architecture.md

+ 4
- 3
raylib-architecture.md

@ -2,18 +2,19 @@
raylib is a highly modular library. Everything is contained within a small number of well defined, specific and self-contained modules, each organized according to its primary functionality (nicely avoiding the huge tree of recursive dependencies, typical of other C libraries).
raylib has seven main modules:
raylib has **seven main modules**:
- [`rcore`](https://github.com/raysan5/raylib/blob/master/src/rcore.c): Window / Graphic Context / Inputs management.
- [`rlgl`](https://github.com/raysan5/raylib/blob/master/src/rlgl.h): Graphic API (OpenGL) wrapper and pseudo-OpenGL 1.1 translation layer.
- [`rshapes`](https://github.com/raysan5/raylib/blob/master/src/rshapes.c): Basic 2D shapes drawing functions.
- [`rtextures`](https://github.com/raysan5/raylib/blob/master/src/rtextures.c): Textures / Image loading and management.
- [`rtext`](https://github.com/raysan5/raylib/blob/master/src/rtext.c): Font data loading and text drawing.
- [`rshapes`](https://github.com/raysan5/raylib/blob/master/src/rshapes.c): Basic 2D shapes drawing functions.
- [`rmodels`](https://github.com/raysan5/raylib/blob/master/src/rmodels.c): 3D models loading and drawing.
- [`raudio`](https://github.com/raysan5/raylib/blob/master/src/raudio.c): Audio device management and sounds / music loading and playing.
Those seven modules share a common header, named [`raylib.h`](https://github.com/raysan5/raylib/blob/master/src/raylib.h). All API functions are defined in that header, despite being internally divided into seven modules, so the user only needs to include `raylib.h` to access all of the raylib functionality. Other libraries often use a header for every module (so users can select the ones they need), but this complicates the dependencies. The simple approach that raylib adopts is just easier for novice (and expert) users.
Those seven modules share a common header, named [`raylib.h`](https://github.com/raysan5/raylib/blob/master/src/raylib.h). All API functions are defined in that header, despite being internally divided into seven modules, so the user only needs to include `raylib.h` to access all of the raylib functionality. Other libraries often use a header for every module (so users can select the ones they include), but this complicates the dependencies. The simple approach that raylib adopts is just easier for novice (and expert) users.
Beyond the seven main modules that are described above, there is a small collection of additional modules that implement extra features:
- [`raymath`](https://github.com/raysan5/raylib/blob/master/src/raymath.h): Vector2, Vector3, Matrix and Quaternion math related functions.
- [`rcamera`](https://github.com/raysan5/raylib/blob/master/src/rcamera.h): 3D Camera system (free, 1st person, 3rd person, custom).
- [`rgestures`](https://github.com/raysan5/raylib/blob/master/src/rgestures.h): Touch gesture detection and processing (Tap, Swipe, Drag, Pinch).

Caricamento…
Annulla
Salva