Commit Graph

365 Commits

Author SHA1 Message Date
Ray
ac6b4d3830 Added audio function: SetMasterVolume() 2017-02-06 00:44:54 +01:00
raysan5
c4bd214cf0 Added function SetWindowIcon()
Only DESKTOP platforms (Windows, Linus, OSX)
2017-02-05 03:00:35 +01:00
raysan5
1a879ba08e Refactor SpriteFont struct
Now it uses CharInfo data, this way, it's better aligned with the future
RRES file format data layout for sprite font characters.
2017-02-05 02:59:39 +01:00
Ray
495108a2e9 Updated raylib version to 1.7
Preparing for next version... still some work left... :P
2017-01-29 23:08:19 +01:00
Ray
c85dfd4bc6 Remove unecessary spaces... 2017-01-28 23:02:30 +01:00
Ray
b681e8c277 Implemented Wait()
Now program is halted (OS signal call) for required amount of time every
frame, so CPU usage drops to zero, instead of using a busy wait loop.
2017-01-28 00:56:45 +01:00
Ray
37a64df7b9 Move lighting system out of raylib
Lighting is implemented as a raylib example now
2017-01-27 23:03:08 +01:00
raysan5
4a158d972d Added LoadText() function
Actually, renamed ReadTextFile() from rlgl and make it public
2017-01-15 01:09:15 +01:00
raysan5
658c280669 Lattest PR review
Function names, code formatting...
2017-01-05 19:33:05 +01:00
Joel Davis
d5d391faaf Added RaycastMesh function and example test case 2017-01-02 21:56:25 -08:00
Joel Davis
037da8879a Added RaycastGround and ray picking example 2016-12-31 15:06:39 -08:00
raysan5
202f45415c rRES raylib resources custom file format support
First version of custom raylib resources file format -IN DEVELOPMENT-
2016-12-27 17:42:22 +01:00
raysan5
852f3d4fd0 Review comments and formatting 2016-12-25 02:01:13 +01:00
Saggi Mizrahi
c394708c43 Change UpdateSound() to accept const void *
The function means to accept a const * so let's declare it.
Will allow passing const buffers in games.
Also constness is next to godliness!

Signed-off-by: Saggi Mizrahi <saggi@mizrahi.cc>
2016-12-22 03:25:42 +02:00
Ray
814507906f Improving rRES custom format support -IN PROGRESS-
Start removing old rRES functions.
2016-12-17 19:05:40 +01:00
Ray
f5d792e551 Update Lua naming
Replaced LUA by Lua
2016-11-25 22:26:36 +01:00
Ray
f1bcfc1352 Corrected bug on GenTextureMipmaps()
texture.mipmaps value needs to be updated, so, texture must be passed by
reference instead of by value
2016-11-22 12:14:55 +01:00
raysan5
bee283b12b Some tweaks around 2016-11-17 12:55:30 +01:00
raysan5
6d1b712a96 Reviewed modules comments 2016-11-16 18:46:13 +01:00
raysan5
9d3ad52160 Removed byte typedef 2016-11-15 19:15:25 +01:00
Ray
9fb6eda5f1 Improved text measurement 2016-11-13 23:54:36 +01:00
raysan5
ca96122a7b Raspberry Pi custom gamepad axis 2016-11-03 18:57:16 +01:00
raysan5
f2d61d4d43 Improved gamepad support on Raspberry Pi 2016-11-02 13:39:48 +01:00
raysan5
64f67f6e9f Improved gamepad support
new function: GetGamepadAxisCount()
new function: IsGamepadName()
2016-11-01 14:39:57 +01:00
raysan5
cc917fbac6 Improve SpriteFont support
LoadSpriteFontTTF() - TTF font loading with custom parameters
2016-10-31 15:38:15 +01:00
raysan5
988d39029f Support textures filtering 2016-10-29 22:17:19 +02:00
raysan5
02842a3e2f Review gamepad inputs
Added funtion: GetGamepadButtonPressed() - This function can be useful
for custom gamepad configuration
2016-10-27 13:41:43 +02:00
Ray
b8ce680511 Improved Android support 2016-10-18 00:15:23 +02:00
raysan5
0ce7f0c409 Some work on multiple inputs...
- Corrected bug and tested new gamepad system
- Reviewed Android key inputs system, unified with desktop
- Reorganize mouse functions on core
2016-10-17 18:18:13 +02:00
Ray
8f60996b64 Corrected some warnings 2016-10-17 00:03:38 +02:00
Ray
98d7a10c08 Improved gamepad system
- Support up to 4 gamepads
- Unified system between platforms
- Corrected some bugs
2016-10-14 11:14:41 +02:00
Ray
4a3ed6d73c Merge branch 'develop' of https://github.com/raysan5/raylib into develop 2016-10-14 00:47:48 +02:00
Ray
b3bc4b21d1 Working on better gamepad support 2016-10-14 00:47:43 +02:00
raysan5
76a67a149e Added new wave functions to lua binding 2016-10-12 10:27:14 +02:00
raysan5
5fecf5c088 Review UpdateVrTracking() and rlglLoadRenderTexture() 2016-10-10 19:42:59 +02:00
Ray
5af1b4a7c9 Added simulated head-tracking on VR simulator
A simple 1st person camera... still requires some work...
2016-10-09 20:56:58 +02:00
Ray
3396743aba Corrected old issue with mouse buttons on web 2016-10-09 13:25:50 +02:00
Ray
db6538859c Added flag to allow resizable window 2016-10-05 00:48:44 +02:00
raysan5
b082807b0b Removed function: ResolveCollisionCubicmap()
Function was inefficient and should be rewritten from scratch, it
probably neither belongs to this module but an example...
2016-10-03 13:29:01 +02:00
raysan5
978c49472a Working on camera system... 2016-09-26 19:15:44 +02:00
raysan5
753b549aa5 Improving camera system -IN PROGRESS- 2016-09-25 14:28:24 +02:00
Ray
0c58c1198f Working on new audio functions... 2016-09-08 01:03:05 +02:00
Ray
8b35de3276 Added new audio functions -IN PROGRESS-
- LoadWave()
- LoadWaveEx()
- UnloadWave()
- WaveFormat()
- WaveCopy()
- WaveCrop()
- GetWaveData()
2016-09-08 00:20:06 +02:00
raysan5
36f20376e6 Redesigned lighting shader system 2016-09-05 20:15:21 +02:00
Ray
9d66bc4a05 Added function: ImageAlphaMask() 2016-09-05 10:08:28 +02:00
raysan5
be97583f00 Added function: UpdateSound() 2016-08-29 11:17:58 +02:00
Wilhem Barbier
1d71e1b754 Fix a typo in the DrawCube, DrawCubeWires and DrawCubeTexture definitions 2016-08-25 14:18:43 +02:00
raysan5
959a228815 Removed useless spacing 2016-08-16 11:09:55 +02:00
raysan5
342b89c5b9 Review Wave struct 2016-08-15 16:35:25 +02:00
raysan5
3377a4485b Support shared/dynamic raylib compilation
Generates:
Win32:  raylib.dll, libraylibdll.a (import library)
Linux:  libraylib.so
2016-08-13 11:31:15 +02:00
Ray
eb9072a2f1 Renamed functions for consistency 2016-08-10 12:20:46 +02:00
Ray
cc2b3228d1 Updated for C++ 2016-08-09 23:03:29 +02:00
raysan5
f69f930b51 Some functions review 2016-08-07 13:38:48 +02:00
raysan5
16ac468bdb Remove functions from user exposure 2016-08-06 19:30:41 +02:00
raysan5
3b80e2c1e0 Redesigned gestures module to header-only 2016-08-06 16:32:46 +02:00
raysan5
d5f5f0a930 Updated raylib version to 1.6 2016-08-06 11:33:05 +02:00
raysan5
8c0bd30fcb Corrected issue with Music type 2016-08-02 19:09:07 +02:00
raysan5
68d647c1af Complete review and update
Simplified module for Music and AudioStream
Added support for raw audio streaming (with example)
2016-08-02 17:32:24 +02:00
raysan5
36cf1f7dfd Improved support for C++
Added compound literals (C99) alternative for C++ compilers that don't
support this feature
2016-08-01 18:05:07 +02:00
raysan5
02c456432d Complete review of audio system
Still some work left...
2016-08-01 12:49:17 +02:00
Bil152
8f7cb6fb19 Code refractoring of music model to be more friendly-user (issue #144) 2016-07-29 21:35:57 +02:00
sol-prog
32a671b9da OS X comaptiblity changes and compiled library 2016-07-22 11:55:04 -04:00
raysan5
5ff9811ea8 Some code tweaks 2016-07-18 17:06:33 +02:00
raysan5
7959ccd84d Review some functions, formatting and comments 2016-07-15 18:16:34 +02:00
Ray
1733125873 Do not expose raw audio context to final user...
...at least, directly, available if using directly audio module...
2016-07-08 23:17:18 +02:00
raysan5
7cefbd8a94 Updated lighting system...
...to avoid dynamic conditions on for loop (lightsCount) on standard
shader, it seems GLSL 100 doesn't support that feature... on some GPUs
like RaspberryPi...
2016-07-06 20:33:46 +02:00
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
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
raysan5
572936ec65 Added Oculus functions to raylib header 2016-06-27 18:30:58 +02:00
raysan5
5f7ac64c44 Removed function SetModelTexture()
It's more educational to go through new material system, so, I decide to
remove this function to avoid students confusion...
2016-06-24 19:49:36 +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
raysan5
3ce0228206 Move Oculus Rift support to rlgl module 2016-06-14 17:16:20 +02:00
raysan5
3d6be7fd80 Added GetGestureDetected() again...
Required by gestures example....
2016-06-14 12:01:57 +02:00
raysan5
47afda2549 Removed useless function: GetGestureDetected()
Use instead: IsGestureDetected()
2016-06-14 11:55:32 +02:00
raysan5
5f4449f0a1 Removed physac functions from raylib header 2016-06-09 20:02:15 +02:00
raysan5
60232810d8 Added some comments 2016-06-03 19:00:58 +02:00
raysan5
13bef7aa02 Work on Oculus functionality
Trying to find the best way to integrate Oculus support into raylib,
making it easy for the user...
2016-06-03 18:26:59 +02:00
raysan5
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
raysan5
2168d8aa1a Removed DrawPhysicObjectInfo() function
To avoid additional dependencies
2016-06-02 19:16:11 +02:00
raysan5
cafc66a3c1 Rename for consistency with other functions 2016-06-02 19:09:56 +02:00
raysan5
cf6d2e3985 Review coding style to match raylib style
Moved AudioError enum inside audio.c
2016-06-02 17:12:31 +02:00
Joshua Reisenauer
cf2975d062 convenient way to combine errors 2016-06-02 02:31:25 -07:00
Joshua Reisenauer
af1eb5453a I added audio errors
The only thing I did not change was the _g for globals. Is there any
other way we can mark globals?
2016-06-02 02:02:23 -07:00
Joshua Reisenauer
ae6adb173b Merge remote-tracking branch 'refs/remotes/raysan5/develop' into develop 2016-06-01 20:17:39 -07:00
Joshua Reisenauer
90e1ed2b5e mod player added 2016-06-01 20:09:00 -07:00
raysan5
d17a0cee1a Review text formatting (spacing, tabs...) 2016-05-31 19:12:37 +02:00
raysan5
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
raysan5
cac2a66deb Improved library consistency
Functions renamed to improve library consistency
2016-05-31 17:11:02 +02:00
Joshua Reisenauer
78b4494e2b Merge remote-tracking branch 'refs/remotes/raysan5/develop' into develop 2016-05-30 15:57:35 -07:00
Ray
caa7bc366b Reviewed DrawLight() function and some tweaks 2016-05-31 00:51:55 +02:00
Joshua Reisenauer
6ad8323860 Merge remote-tracking branch 'refs/remotes/raysan5/develop' into develop 2016-05-30 15:39:21 -07:00
Joshua Reisenauer
9f2fc81df2 update to openal 2016-05-30 15:34:29 -07:00
victorfisac
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
victorfisac
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
victorfisac
2e26ce235d Add Draw3DCircle function and update raylib and rlgl header
Draw3DCircle is useful to draw point lights radius.
2016-05-30 19:18:11 +02:00
raysan5
3d6696f6c9 Renamed shader variables (more generic names) 2016-05-25 16:21:13 +02:00
victorfisac
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
victorfisac
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
raysan5
dcf5f45f68 Add lighting system -IN PROGRESS-
Improved materials
2016-05-20 12:28:07 +02:00
raysan5
c9e30f7754 Review struct typedef to avoid pointers for users 2016-05-20 10:53:31 +02:00
raysan5
03cc031d00 Remove TODO comments (already done) 2016-05-20 09:40:48 +02:00
raysan5
7d1d9ff143 Support DYNAMIC_DRAW mesh loading 2016-05-20 09:36:02 +02:00
Joshua Reisenauer
41c5f3a017 Buffer for raw audio 2016-05-19 20:44:09 -07:00
Joshua Reisenauer
76ff4d220e renamed everything so it is obvious what it does 2016-05-15 19:37:15 -07:00
Joshua Reisenauer
ded07690fd Merge remote-tracking branch 'refs/remotes/raysan5/develop' into newaudio 2016-05-12 16:06:22 -07:00
raysan5
075f51e0a3 Simplified internal (default) dynamic buffers 2016-05-12 12:20:23 +02:00
Joshua Reisenauer
f0ada8c40d apply index to remaining functions 2016-05-11 22:37:53 -07:00
Joshua Reisenauer
9737c58054 PlayMusicStream now uses index 2016-05-11 20:15:37 -07:00
Joshua Reisenauer
529d20ee6a Merge remote-tracking branch 'refs/remotes/raysan5/develop' into newaudio 2016-05-11 18:15:46 -07:00
Joshua Reisenauer
ad3d270c42 added set pitch for music streams 2016-05-11 18:14:59 -07:00
Ray
454b422fd6 Merge pull request #112 from kd7tck/develop
Base Audio Context System
2016-05-11 20:14:12 +02:00
Joshua Reisenauer
6db44500b7 adding multiple music streams 2016-05-11 00:37:10 -07:00
raysan5
5c112ff542 Corrected tipo 2016-05-10 19:24:25 +02:00
raysan5
1ddf594d15 Added support for indexed mesh data 2016-05-10 18:24:28 +02:00
Joshua Reisenauer
9799856ad4 Merge remote-tracking branch 'refs/remotes/raysan5/develop' into develop 2016-05-10 02:00:42 -07:00
Ray
f7d4951165 Improved vertex attribs support for models 2016-05-08 23:50:35 +02:00
raysan5
0bcb873cbb Improved mesh support
Depending on mesh data, it can be loaded and default vertex attribute
location points are set, including colors, tangents and texcoords2
2016-05-08 15:24:02 +02:00
raysan5
7ab008878a Library redesign to accomodate materials system 2016-05-07 18:07:15 +02:00
Joshua Reisenauer
e660700924 Merge remote-tracking branch 'refs/remotes/raysan5/develop' into develop 2016-05-03 14:17:37 -07:00
raysan5
fd67e31f63 Renamed function for consistency 2016-05-03 19:27:06 +02:00
raysan5
5f73850fa6 Renamed functions for consistency 2016-05-03 18:04:21 +02:00
Joshua Reisenauer
9d09ada33b new boolean floatingPoint option
Now floating point is either on or off. This simplifies the use of 16bit
vs float.
2016-05-02 21:59:55 -07:00
Joshua Reisenauer
4636e3367c number remaining buffer transfer for updateAudioContext
updateAudioContext is almost done
2016-05-02 14:37:00 -07:00
Joshua Reisenauer
9ef0240e99 resamples added
Ease of use considered in api and channels are more convenient as
unsigned char type.
2016-05-02 01:24:24 -07:00
Joshua Reisenauer
790bc72806 bool return for failed update 2016-05-01 23:07:02 -07:00
Joshua Reisenauer
289a53221d merge fix 2016-05-01 20:00:51 -07:00
Joshua Reisenauer
a2a3d3aeb6 new silence generator 2016-05-01 18:53:40 -07:00
Ray
fa98289ddb Added 2D camera mode functions
Removed BeginDrawingEx()
Added Begin2dMode() and End2dMode()
2016-05-02 00:37:33 +02:00
Ray
0e6d1cb272 Working on materials system... 2016-05-02 00:16:32 +02:00
Joshua Reisenauer
34e5fcf47e removed enums 2016-04-30 16:05:43 -07:00
Joshua Reisenauer
a1038f61b6 BPS type added to ensure consistency 2016-04-30 15:41:46 -07:00
Joshua Reisenauer
5f1e8b8278 hide struct from user
Hiding the struct from user should protect from accidentally modifying
the mix channel. This could cause serious errors down the road.
2016-04-29 23:43:21 -07:00
Joshua Reisenauer
91f1f324c0 First stage of audio API update
Look over changes and give feedback please.
2016-04-29 23:00:12 -07:00
Joshua Reisenauer
f707c1ca46 this should work 2016-04-27 00:02:11 -07:00
Joshua Reisenauer
f12754b01f quick fix
Boolean errors
2016-04-25 18:40:19 -07:00
raysan5
17eefed08f Improved gestures system 2016-04-17 11:36:40 +02:00
raysan5
6b5e18e6bf Make mouse inputs available on Android for...
... easy code porting, transalating them to touches and gestures
internally.

Removed function SetCustomCursor(), it can be managed by the user.
2016-04-17 11:19:32 +02:00
raysan5
c1e49d2b13 Removed function
I decided it is redundant and could be confusing (when mixed with 3D
drawing). It's not KISS.
2016-04-08 12:00:29 +02:00
raysan5
06a8d7eb06 Remove old postprocessing system 2016-04-01 10:39:33 +02:00
raysan5
66b096d978 Added support for render to texture (use RenderTexture2D)
Now it's possible to render to texture, old postprocessing system will
be removed on next raylib version.
2016-03-30 20:09:16 +02:00
raysan5
8b7ca8b670 Review comments 2016-03-27 18:34:05 +02:00
victorfisac
60223a358b Physac redesign (3/3)
Finally, physics update is handled in main thread using steps to get
accuracy in collisions detection instead of moving it to a new thread.

Examples are finished as simple and clear as I could. Finally, physac
module is MORE simpler than in the first version, calculation everything
by the same way for both types of physic objects.

I tryed to add rotated physics a couple of times but I didn't get
anything good to get a base to improve it. Maybe for the next version...

No bugs or strange behaviours found during testing.
2016-03-23 15:50:41 +01:00
Ray
49df957058 Add support for multiple gamepads on RPI 2016-03-17 12:54:36 +01:00
Ray
db4585b3e2 Improved gamepad support
Now it works ok also in RaspberryPi
2016-03-16 17:52:09 +01:00
victorfisac
0caf925d5d Updated headers 2016-03-16 12:48:30 +01:00
raysan5
d0e7195a16 Added new functions to draw text on image 2016-03-06 19:28:58 +01:00
raysan5
c9d22c7a14 Redesign to use Material type -IN PROGRESS-
Requires Shader access functions review
2016-03-06 02:05:16 +01:00
Ray
893facdf6d Merge pull request #101 from victorfisac/develop
Redesigned physac module (IN PROGRESS)
2016-03-05 20:16:52 +01:00
victorfisac
305efcf5ad Redesigned physics module (IN PROGRESS)
physac modules is being redesigned. Physics base behaviour is done and
it is composed by three steps: apply physics, resolve collisions and fix
overlapping.

A basic example is currently in progress. The next steps are try to add
torque and unoriented physic collisions and implement physics basic
functions to add forces. Rigidbody grounding state is automatically
calculated and has a perfect result. Rigidbodies interacts well with
each others.

To achieve physics accuracy, UpdatePhysics() is called a number of times
per frame. In a future, it should be changed to another thread and call
it without any target frame restriction.

Basic physics example has been redone (not finished) using the new
module functions. Forces examples will be redone so I removed it from
branch.
2016-03-05 17:05:02 +01:00
raysan5
0d911127d7 Split mesh generation from model loading 2016-03-05 16:17:54 +01:00