mirror of
https://github.com/raysan5/raylib.git
synced 2025-09-10 21:38:15 +00:00
WIP on shaders and textures
Moved functions: LoadShader(), UnloadShader() Add support for PVR textures compressed/uncompressed WIP: Detect available extensions for compressed textures
This commit is contained in:
21
src/models.c
21
src/models.c
@@ -1101,12 +1101,33 @@ void UnloadModel(Model model)
|
||||
rlDeleteShader(model.shader.id);
|
||||
}
|
||||
|
||||
// Link a texture to a model
|
||||
void SetModelTexture(Model *model, Texture2D texture)
|
||||
{
|
||||
if (texture.id <= 0) model->texture.id = whiteTexture; // Default white texture (use mesh color)
|
||||
else model->texture = texture;
|
||||
}
|
||||
|
||||
// Load a custom shader (vertex shader + fragment shader)
|
||||
Shader LoadShader(char *vsFileName, char *fsFileName)
|
||||
{
|
||||
Shader shader = rlglLoadShader(vsFileName, fsFileName);
|
||||
|
||||
return shader;
|
||||
}
|
||||
|
||||
// Unload a custom shader from memory
|
||||
void UnloadShader(Shader shader)
|
||||
{
|
||||
rlDeleteShader(shader.id);
|
||||
}
|
||||
|
||||
// Set shader for a model
|
||||
void SetModelShader(Model *model, Shader shader)
|
||||
{
|
||||
rlglSetModelShader(model, shader);
|
||||
}
|
||||
|
||||
// Draw a model (with texture if set)
|
||||
void DrawModel(Model model, Vector3 position, float scale, Color tint)
|
||||
{
|
||||
|
Reference in New Issue
Block a user