diff options
| author | victorfisac <victorfisac@gmail.com> | 2015-12-21 17:25:22 +0100 |
|---|---|---|
| committer | victorfisac <victorfisac@gmail.com> | 2015-12-21 17:25:22 +0100 |
| commit | 1bcb5ddd505e5c4bdac6f254e931e9c3145be88d (patch) | |
| tree | c71c012feda413d4134a4dd8ac5e7e2bd45b9c61 /src/rlgl.c | |
| parent | 4db2da91850fcc55ec08df253e533e236eb91451 (diff) | |
| download | raylib-1bcb5ddd505e5c4bdac6f254e931e9c3145be88d.tar.gz raylib-1bcb5ddd505e5c4bdac6f254e931e9c3145be88d.zip | |
Added lighting engine module
- New lighting engine module which contains new data types Light and
Material. These data types and functions facilitates making a basic 3D
iluminated program with a light and a model.
- Added lighting engine module example (currently included in raylib.h;
it might be compiled by separate and include lighting.h in game source C
file).
- Corrected some opengl defines control structures and added some TODO
to fix raylib-opengl 1.1 source build (note: now source can be compiled
without errors, but rlglReadPixels() won't work properly).
Note: most of functions of phong version 330 shader are not in v100
shaders, so I couldn't write a version 100 phong shader. These functions
are included from version 150.
Diffstat (limited to 'src/rlgl.c')
| -rw-r--r-- | src/rlgl.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -1094,6 +1094,7 @@ void rlglInit(void) // Modifies global variables: postproFbo, postproQuad void rlglInitPostpro(void) { +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) postproFbo = rlglLoadFBO(screenWidth, screenHeight); if (postproFbo.id > 0) @@ -1120,6 +1121,7 @@ void rlglInitPostpro(void) // NOTE: postproFbo.colorTextureId must be assigned to postproQuad model shader } +#endif } // Load a framebuffer object @@ -1195,11 +1197,13 @@ FBO rlglLoadFBO(int width, int height) // Unload framebuffer object void rlglUnloadFBO(FBO fbo) { +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) glDeleteFramebuffers(1, &fbo.id); glDeleteTextures(1, &fbo.colorTextureId); glDeleteTextures(1, &fbo.depthTextureId); TraceLog(INFO, "[FBO ID %i] Unloaded framebuffer object successfully", fbo.id); +#endif } // Vertex Buffer Object deinitialization (memory free) @@ -1939,7 +1943,8 @@ void rlglGenerateMipmaps(unsigned int textureId) { #if defined(GRAPHICS_API_OPENGL_11) // Compute required mipmaps - void *data = rlglReadTexturePixels(textureId, UNCOMPRESSED_R8G8B8A8); // TODO: Detect internal format + // TODO: rlglReadTexturePixels() needs Texture2D type parameter, not unsigned int parameter + void *data; // = rlglReadTexturePixels(textureId, UNCOMPRESSED_R8G8B8A8); // TODO: Detect internal format // NOTE: data size is reallocated to fit mipmaps data int mipmapCount = GenerateMipmaps(data, width, height); |
