From 4c159f6e5892709e3d4c81591f2500bd67c5dcc8 Mon Sep 17 00:00:00 2001 From: Ray Date: Tue, 7 Jun 2022 20:51:24 +0200 Subject: [PATCH] Updated raylib data structures (markdown) --- raylib-data-structures.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/raylib-data-structures.md b/raylib-data-structures.md index 1eb79b9..017fbc1 100644 --- a/raylib-data-structures.md +++ b/raylib-data-structures.md @@ -52,9 +52,9 @@ who has authored video games before. // Audio related data struct Wave; [20 bytes] [+4 bytes] // Wave data pointer (RAM) and data parameters - struct AudioStream; [16 bytes] [+8 bytes] // Audio buffer pointer (private) and parameters - struct Sound; [20 bytes] [+12 bytes] // Audio stream and samples count - struct Music; [32 bytes] [+16 bytes] // Audio stream and music data pointer for streaming + struct AudioStream; [20 bytes] [+12 bytes] // Audio buffer pointer (private) and parameters + struct Sound; [24 bytes] [+16 bytes] // Audio stream and samples count + struct Music; [36 bytes] [+20 bytes] // Audio stream and music data pointer for streaming ``` raylib slightly abuses the ability to pass-by-value. In fact, only around 10% of its functions need to deal with data pointers. With this in mind, data structures are kept as small as possible (usually under 64 bytes), and internal pointers are used with functions that need to modify the data (usually *Load*, *Update* and *Unload* functions).