All Classes and Interfaces
Class
Description
struct {
int __val[2];
}
typedef void (*AudioCallback)(void *, unsigned int)
The function pointer signature, expressed as a functional interface
AudioStream, custom audio stream
struct AudioStream {
rAudioBuffer *buffer;
rAudioProcessor *processor;
unsigned int sampleRate;
unsigned int sampleSize;
unsigned int channels;
}
Automation event
struct AutomationEvent {
unsigned int frame;
unsigned int type;
int params[4];
}
Automation event list
struct AutomationEventList {
unsigned int capacity;
unsigned int count;
AutomationEvent *events;
}
Bone, skeletal animation bone
struct BoneInfo {
char name[32];
int parent;
}
BoundingBox
struct BoundingBox {
Vector3 min;
Vector3 max;
}
typedef Camera3D Camera
Camera2D, defines position/orientation in 2d space
struct Camera2D {
Vector2 offset;
Vector2 target;
float rotation;
float zoom;
}
Camera, defines position/orientation in 3d space
struct Camera3D {
Vector3 position;
Vector3 target;
Vector3 up;
float fovy;
int projection;
}
Color, 4 components, R8G8B8A8 (32bit)
struct Color {
unsigned char r;
unsigned char g;
unsigned char b;
unsigned char a;
}
File path list
struct FilePathList {
unsigned int capacity;
unsigned int count;
char **paths;
}
struct float16 {
float v[16];
}
struct float3 {
float v[3];
}
Font, font texture and GlyphInfo array data
struct Font {
int baseSize;
int glyphCount;
int glyphPadding;
Texture2D texture;
Rectangle *recs;
GlyphInfo *glyphs;
}
GlyphInfo, font characters glyphs info
struct GlyphInfo {
int value;
int offsetX;
int offsetY;
int advanceX;
Image image;
}
Image, pixel data stored in CPU memory (RAM)
struct Image {
void *data;
int width;
int height;
int mipmaps;
int format;
}
typedef unsigned char *(*LoadFileDataCallback)(const char *, int *)
The function pointer signature, expressed as a functional interface
typedef char *(*LoadFileTextCallback)(const char *)
The function pointer signature, expressed as a functional interface
struct Material {
Shader shader;
MaterialMap *maps;
float params[4];
}
Material, includes shader and maps
struct MaterialMap {
Texture2D texture;
Color color;
float value;
}
MaterialMap
struct Matrix {
float m0;
float m4;
float m8;
float m12;
float m1;
float m5;
float m9;
float m13;
float m2;
float m6;
float m10;
float m14;
float m3;
float m7;
float m11;
float m15;
}
Matrix, 4x4 components, column major, OpenGL style, right handed
struct Mesh {
int vertexCount;
int triangleCount;
float *vertices;
float *texcoords;
float *texcoords2;
float *normals;
float *tangents;
unsigned char *colors;
unsigned short *indices;
float *animVertices;
float *animNormals;
unsigned char *boneIds;
float *boneWeights;
Matrix *boneMatrices;
int boneCount;
unsigned int vaoId;
unsigned int *vboId;
}
Mesh, vertex data and vao/vbo
struct Model {
Matrix transform;
int meshCount;
int materialCount;
Mesh *meshes;
Material *materials;
int *meshMaterial;
int boneCount;
BoneInfo *bones;
Transform *bindPose;
}
Model, meshes, materials and animation data
struct ModelAnimation {
int boneCount;
int frameCount;
BoneInfo *bones;
Transform **framePoses;
char name[32];
}
ModelAnimation
struct Music {
AudioStream stream;
unsigned int frameCount;
bool looping;
int ctxType;
void *ctxData;
}
Music, audio stream, anything longer than ~10 seconds should be streamed
struct NPatchInfo {
Rectangle source;
int left;
int top;
int right;
int bottom;
int layout;
}
NPatchInfo, n-patch layout info
typedef Vector4 Quaternion
struct Ray {
Vector3 position;
Vector3 direction;
}
Ray, ray for raycasting
struct RayCollision {
bool hit;
float distance;
Vector3 point;
Vector3 normal;
}
RayCollision, ray hit information
Variadic invoker class for:
const char *TextFormat(const char *text, ...)
Variadic invoker class for:
void TraceLog(int logLevel, const char *text, ...)
Color blending modes (pre-defined)
Camera system modes
Camera projection
System/Window config flags
Cubemap layouts
Font type, defines generation method
Gamepad axis
Gamepad buttons
Gesture
Keyboard keys (US keyboard layout)
Material map index
Mouse buttons
Mouse cursor
N-patch layout
Pixel formats
Color blending modes (pre-defined)
Face culling mode
Framebuffer texture attachment type
Framebuffer attachment type
OpenGL version
Texture pixel formats
Shader attribute data types
Shader location point type
Shader uniform data type
Texture parameters: filter mode
Trace log level
Shader attribute data types
Shader location index
Shader uniform data type
Texture parameters: filter mode
Texture parameters: wrap mode
Trace log level
struct Rectangle {
float x;
float y;
float width;
float height;
}
Rectangle, 4 components
struct RenderTexture {
unsigned int id;
Texture texture;
Texture depth;
}
RenderTexture, fbo for texture rendering
typedef RenderTexture RenderTexture2D
struct rlDrawCall {
int mode;
int vertexCount;
int vertexAlignment;
unsigned int textureId;
}
of those state-change happens (this is done in core module)
struct rlRenderBatch {
int bufferCount;
int currentBuffer;
rlVertexBuffer *vertexBuffer;
rlDrawCall *draws;
int drawCounter;
float currentDepth;
}
rlRenderBatch type
struct rlVertexBuffer {
int elementCount;
float *vertices;
float *texcoords;
float *normals;
unsigned char *colors;
unsigned int *indices;
unsigned int vaoId;
unsigned int vboId[5];
}
typedef bool (*SaveFileDataCallback)(const char *, void *, int)
The function pointer signature, expressed as a functional interface
typedef bool (*SaveFileTextCallback)(const char *, char *)
The function pointer signature, expressed as a functional interface
struct Shader {
unsigned int id;
int *locs;
}
Shader
struct Sound {
AudioStream stream;
unsigned int frameCount;
}
Sound
struct Texture {
unsigned int id;
int width;
int height;
int mipmaps;
int format;
}
Texture, tex data stored in GPU memory (VRAM)
typedef Texture Texture2D
typedef Texture TextureCubemap
typedef void (*TraceLogCallback)(int, const char *, struct __va_list_tag {
unsigned int gp_offset;
unsigned int fp_offset;
void *overflow_arg_area;
void *reg_save_area;
} *)
The function pointer signature, expressed as a functional interface
struct Transform {
Vector3 translation;
Quaternion rotation;
Vector3 scale;
}
Transform, vertex transformation data
struct Vector2 {
float x;
float y;
}
Vector2, 2 components
struct Vector3 {
float x;
float y;
float z;
}
Vector3, 3 components
struct Vector4 {
float x;
float y;
float z;
float w;
}
Vector4, 4 components
struct VrDeviceInfo {
int hResolution;
int vResolution;
float hScreenSize;
float vScreenSize;
float eyeToScreenDistance;
float lensSeparationDistance;
float interpupillaryDistance;
float lensDistortionValues[4];
float chromaAbCorrection[4];
}
VrDeviceInfo, Head-Mounted-Display device parameters
struct VrStereoConfig {
Matrix projection[2];
Matrix viewOffset[2];
float leftLensCenter[2];
float rightLensCenter[2];
float leftScreenCenter[2];
float rightScreenCenter[2];
float scale[2];
float scaleIn[2];
}
VrStereoConfig, VR stereo rendering configuration for simulator
struct Wave {
unsigned int frameCount;
unsigned int sampleRate;
unsigned int sampleSize;
unsigned int channels;
void *data;
}
Wave, audio wave data