Commit Graph

266 Commits

Author SHA1 Message Date
Ray
bc80174357 VR Functions renaming (for generic HMD device)
Stereo rendering has been moved again to Begin3dMode() and End3dMode(),
it has some limitations but makes more sense...
2016-07-06 00:54:38 +02:00
3fb1c446ea Corrected issue on RPI on model drawing 2016-07-04 18:34:28 +02:00
Ray
ee72654b55 Redesigned stereo rendering mechanism
Now it's easier for the user! Just init Oculus device and get stereo
rendering!
2016-07-04 01:29:23 +02:00
308fcbb96c Added eyes projection/view matrices calculation
Based on HMD parameters (IPD, ScreenSize, LesnsSeparation...)
2016-06-27 20:10:28 +02:00
c4922c9e88 Reorganize shaders to respective folders 2016-06-27 18:32:56 +02:00
4b444e7cc3 Comment glBlitFramebuffer() 2016-06-26 18:43:10 +02:00
9127b5a57d Enable/Disable VR experience 2016-06-26 15:36:12 +02:00
8652e644dd Corrected bug on stereo rendering 2016-06-26 14:13:11 +02:00
71ab202295 Removed rlglInitGraphics(), integrated into rlglInit()
Redesigned rlgl usage:
- rlViewport() must be called by user
- Internal projection/modelview matrices must be setup by user
2016-06-25 23:28:50 +02:00
369b8532c0 Review rlglInitGraphics() 2016-06-25 22:42:35 +02:00
b358402cb3 Some code tweaks (view description)
- Added support for RLGL_NO_STANDARD_SHADER
- Store framebuffer width and height as globals
- Reorganize rlglInit() function
2016-06-24 19:37:52 +02:00
03d9583b94 Add oculus simulator (in case device is not detected) 2016-06-21 13:49:13 +02:00
Ray
6062201e8f Simplify Oculus example...
...to align it with standard raylib code. Final goal would be having the
same code work for every platform with no changes...
2016-06-21 08:59:29 +02:00
b01f5ff6a7 Starting work on VR simulator support
If Oculus device is not available or not initialized correctly,
simulated VR view is generated using stereo-rendering and distortion
2016-06-19 19:12:47 +02:00
Ray
24c9b1f717 Improving Oculus Rift example...
Under design... looking for the easiest and most comprehensive way for
the user to use VR...
2016-06-17 13:54:45 +02:00
Ray
9fdf4420d5 Corrected bugs on OpenGL 2.1 2016-06-17 00:29:46 +02:00
Ray
4df7a0f2f8 Added support for OpenGL 2.1 2016-06-16 20:25:50 +02:00
Ray
3468af213f Reviewing Oculus rendering... 2016-06-15 00:54:55 +02:00
c914010606 Correct issue on Oculus drawing 2016-06-14 18:37:28 +02:00
3ce0228206 Move Oculus Rift support to rlgl module 2016-06-14 17:16:20 +02:00
c25b4cdc69 Move OpenGL extensions loading to rlgl 2016-06-14 15:42:04 +02:00
4dae3385c3 Record draw call for batch processing
Just started working on this, not sure if it would be available for
raylib 1.5
2016-06-12 19:40:08 +02:00
68a02e567d Avoid external variable whiteTexture
To get it, use GetDefaultTexture()
2016-06-11 12:41:03 +02:00
7b07b68bfd Adapt standard shader to GL ES 2.0
Some shader calculations are now pre-calculated because some math
functions doesn't exist in glsl 110.
2016-06-10 00:49:51 +02:00
Ray
99ee26b001 Review const char * 2016-06-08 22:52:54 +02:00
Ray
ee795150fa Updated some code 2016-06-07 23:44:53 +02:00
058af472ea Converted GLAD to header only 2016-06-07 18:57:20 +02:00
Ray
9281e477eb Embed standard shader into raylib 2016-06-07 00:32:45 +02:00
Ray
1bcf500eca Review fallback mechanism 2016-06-06 23:19:40 +02:00
Ray
522af9f477 Fallback to default shader 2016-06-06 23:16:14 +02:00
Ray
29d505c98e Reorganize external libraries - BREAKING CHANGE -
Moved all external libraries used by raylib to external folder inside
raylib src. Makefile has already been update and also the different
includes in raylib modules.
2016-06-06 14:34:43 +02:00
Ray
72eb2632cc Corrected compilation bug on OpenGL 1.1 2016-06-05 23:51:41 +02:00
0bc71d84f8 Added functions to customize internal matrix
Internal modelview and projection matrices can be replaced before
drawing.
2016-06-02 20:23:09 +02:00
c286bea8e1 Remove GLEW dependency 2016-06-02 18:20:59 +02:00
Ray
17878550b1 Review heades usage
This is a first step toward a bigger project. Some modules could be
ported to header-only to be used as standalone.
2016-06-02 01:26:44 +02:00
897179a06c Corrected some issues on OpenGL 1.1 2016-06-01 12:37:51 +02:00
d17a0cee1a Review text formatting (spacing, tabs...) 2016-05-31 19:12:37 +02:00
302ec438dd Removed colTint, tint color is colDiffuse
Tint color could be applied to colDiffuse... but what's the best way?
Replace it? Multiply by? A point to think about...
2016-05-31 18:15:53 +02:00
cac2a66deb Improved library consistency
Functions renamed to improve library consistency
2016-05-31 17:11:02 +02:00
Ray
caa7bc366b Reviewed DrawLight() function and some tweaks 2016-05-31 00:51:55 +02:00
b0a0c5d431 Added tint color attribute to material data type
It tints all fragments, ignores lighting. Useful for some features like
feedback (damage color, ...).
2016-05-30 19:55:13 +02:00
f2d61d4043 Remove normal depth
Scaling normal depth (y axis) makes disappear the specular of
fragments... So I think it can be removed, it is not a very
useful/important attribute.
2016-05-30 19:43:35 +02:00
64f6c74c9a Add normal and specular maps to draw model process 2016-05-30 19:18:55 +02:00
ea5b00528b Improved render to texture
Support render texture size different than screen size
2016-05-29 11:49:13 +02:00
d53b6f4381 Renamed shader variables (more generic names)
Now shader maps use a generic naming convention for any kind of texture
maps (not only diffuse, normal or specular). Useful for custom shaders.
2016-05-25 16:19:57 +02:00
dcd6942ed1 Fix small bug and spacing 2016-05-21 18:22:15 +02:00
c320a21f2b Add standard lighting (2/3)
- 3 light types added (point, directional, spot).
- DrawLights() function added using line shapes.
- Standard lighting example added.
- Removed useless struct variables from material and light.
- Fixed light attributes dynamic locations errors.
- Standard vertex and fragment shaders temporally added until rewrite it
as char pointers in rlgl.
TODO:
- Add normal and specular maps calculations in standard shader.
- Add control structs to handle which attributes needs to be calculated
(textures, specular...).
- Adapt standard shader to version 110.
- Rewrite standard shader as char pointers in rlgl.
2016-05-21 18:16:39 +02:00
30c8058fca Add standard lighting (1/3)
- Ambient and lambert lighting added.
- Ambient and diffuse colors linked to standard shader.
- Single light linked to standard shader.
- LoadStandardMaterial() and depending functions added.
2016-05-20 17:18:07 +02:00
6dac1efefe Comented buggy code to avoid problems...
...on model drawing
2016-05-20 15:01:36 +02:00
dcf5f45f68 Add lighting system -IN PROGRESS-
Improved materials
2016-05-20 12:28:07 +02:00