| 
 | |
|     // Shader loading/unloading functions | |
|     Shader LoadShader(char *vsFileName, char *fsFileName);                                              // Load a custom shader and bind default locations | |
|     void UnloadShader(Shader shader);                                                                   // Unload a custom shader from memory | |
|     Shader GetDefaultShader(void);                                                                      // Get default shader | |
|     Shader GetStandardShader(void);                                                                     // Get standard shader | |
|     Texture2D GetDefaultTexture(void);                                                                  // Get default texture | |
|  | |
|     // Shader access functions | |
|     int GetShaderLocation(Shader shader, const char *uniformName);                                      // Get shader uniform location | |
|     void SetShaderValue(Shader shader, int uniformLoc, float *value, int size);                         // Set shader uniform value (float) | |
|     void SetShaderValuei(Shader shader, int uniformLoc, int *value, int size);                          // Set shader uniform value (int) | |
|     void SetShaderValueMatrix(Shader shader, int uniformLoc, Matrix mat);                               // Set shader uniform value (matrix 4x4) | |
|     void SetMatrixProjection(Matrix proj);                                                              // Set a custom projection matrix (replaces internal projection matrix) | |
|     void SetMatrixModelview(Matrix view);                                                               // Set a custom modelview matrix (replaces internal modelview matrix) | |
|  | |
|     // Shading beegin/end functions | |
|     void BeginShaderMode(Shader shader);                                                                // Begin custom shader drawing | |
|     void EndShaderMode(void);                                                                           // End custom shader drawing (use default shader) | |
|     void BeginBlendMode(int mode);                                                                      // Begin blending mode (alpha, additive, multiplied) | |
|     void EndBlendMode(void);                                                                            // End blending mode (reset to default: alpha blending) | |
|      | |
|     // Light creation/destruction functions | |
|     Light CreateLight(int type, Vector3 position, Color diffuse);                                       // Create a new light, initialize it and add to pool | |
|     void DestroyLight(Light light);                                                                     // Destroy a light and take it out of the list | |
|      | |
|     // VR control functions | |
|     void InitVrDevice(int vrDevice);                                                                    // Init VR device | |
|     void CloseVrDevice(void);                                                                           // Close VR device | |
|     bool IsVrDeviceReady(void);                                                                         // Detect if VR device is ready | |
|     bool IsVrSimulator(void);                                                                           // Detect if VR simulator is running | |
|     void UpdateVrTracking(Camera *camera);                                                              // Update VR tracking (position and orientation) and camera | |
|     void ToggleVrMode(void);                                                                            // Enable/Disable VR experience (device or simulator) | |
|     
 |