Commit Graph

4154 Commits

Author SHA1 Message Date
raysan5
66f3434571 REDESIGNED: Shapes texture/rec moved to shapes module 2021-04-04 14:59:17 +02:00
Rob Loach
d58b7b509e Make SaveFile* callbacks return a boolean (#1697) 2021-04-03 08:56:42 +02:00
raysan5
c21baf0d92 ADDED: GenMeshDefault() #1556 2021-04-02 15:56:35 +02:00
raysan5
ccdf7ff335 REDESIGN: Move GenTexture*() functions to PBR example #721
Removed functions from rlgl module.
2021-04-02 14:29:33 +02:00
raysan5
67dda62867 REVIEWED: GenTexture*() functions #721
Avoid RLGL data dependency to allow moving the functions somewhere else
2021-04-02 14:01:30 +02:00
raysan5
7e2531fe35 REVIEWED: ToggleFullscreen() on web #1241
After some investigation, I came to the conclusion it's impossible to get a solution that works for all situations. Fullscreen mode on web depends on the browser, the canvas and also the desired scaling strategy of the user. Just choose a solution that fits me needs for now and let the user manage the canvas on their webs (hopefully not requiring ToggleFullscreen() call).

Also removed several useless related callbacks.
2021-04-02 13:46:56 +02:00
raysan5
38df0760cc Review compress/decompress logs 2021-04-02 13:43:10 +02:00
raysan5
d64f27bad1 Remove old flag 2021-04-02 13:42:07 +02:00
raysan5
2b6e7c8632 Update Makefile 2021-04-02 13:41:54 +02:00
raysan5
b54d96205f Review libc dependency 2021-04-01 21:22:18 +02:00
raysan5
aed0fee2ca Remove trailing spaces 2021-04-01 20:24:33 +02:00
raysan5
b4975619ed Review comments 2021-04-01 20:23:05 +02:00
raysan5
cdc3754449 ADDED: Support model normal matrix location #1691 2021-03-31 20:44:16 +02:00
raysan5
2488d361b6 Review formatting 2021-03-31 20:15:04 +02:00
raysan5
c772de702b REVIEWED: DrawMeshInstanced() matrix computations
Simplified some parts and reviewed for a correct computation of matrices, considering stereo render view/projection per eye transformations
2021-03-31 19:59:23 +02:00
raysan5
434a3a276d REVIEWED: Define instancing API entry points for RPI 2021-03-31 18:41:03 +02:00
raysan5
8e51e6d1df REVIEWED: CheckCollisionPointLine()
Use fabsf() instead of abs()
2021-03-31 18:40:33 +02:00
raysan5
fd3e2fda00 RENAMED: example: shaders_mesh_instancing
shaders_rlgl_mesh_instanced -> shaders_mesh_instancing
2021-03-31 18:40:04 +02:00
raysan5
8f1d81df0f Review code formatting 2021-03-31 17:55:46 +02:00
mkupiec1
3d1a05d588 [shapes] CheckCollisionPointTriangle (fix), CheckCollisionPointLine (new routine) (#1695)
* CheckCollisionPointTriangle

* New feature proposal to existing collision detection routines.
It checks if point [point] belongs to line created between two points [p1] and [p2] with defined margin in pixels[threshold].
1693
2021-03-31 16:50:05 +02:00
raysan5
98a2e16d4d REVIEWED: RPI instancing checks #1679 2021-03-31 16:44:14 +02:00
raysan5
b5aaf33058 Review matrix multiplication 2021-03-28 22:04:04 +02:00
raysan5
aaf0d8b839 REVIEWED: rlgl: Stereo render is working again
As a bonus, stereo render is compatible with mesh instancing now!
2021-03-28 21:35:58 +02:00
raysan5
6a24dd8945 REVIEWED: tinyobjloader #1568 2021-03-28 20:51:29 +02:00
raysan5
23a764190e ADDED: LoadShaderFromMemory() #1690 2021-03-28 20:12:48 +02:00
raysan5
bc6b16beb2 REVIEWED: DrawTexturePoly() 2021-03-28 20:07:59 +02:00
Carlos Hernandez Barbera
7eaeffc8d9 GetCollisionRayMesh makes use of triangle count (#1688)
Co-authored-by: Carlos Hernandez Barbera <carloshdezbarbera@gmail.com>
2021-03-27 18:24:39 +01:00
Maksymilian Mika
f38ced15e7 Fixing pointer arithmetic to avoid error [-Werror=pointer-arith] (#1685) 2021-03-27 07:54:44 +01:00
Dan Bechard
b6ca524bdd Preserve floating point values in DrawRectangleLinesEx (#1683) 2021-03-26 20:15:19 +01:00
Ray
f9bab14fdb REVIEWED: DrawMeshInstanced() 2021-03-26 00:12:29 +01:00
Ray
fb9a437f8a REVIEWED: OpenGL 1.1 working again 2021-03-25 20:35:48 +01:00
Ray
cba412cc31 WARNING: BREAKING: rlgl redesign -WIP-
rlgl module has been completely redesigned to move Mesh/Material structures to [models] module. Still some work to do, broken elements:
 - [models] OpenGL 1.1 mesh rendering: DrawMesh()
 - [models] Mesh Instancing: DrawMeshInstanced()
 - [models] Stereo rendering: DrawMesh()
 - [models] GL_FLOAT, GL_UNSIGNED_INT exposed
 - [models] GenMeshCustom()
 - [rlgl] GenTexture*() functions removal?
2021-03-25 14:28:12 +01:00
chriscamacho
9569d6a802 Add DrawTexturedPoly and example (#1677)
* adds DrawTexturedPoly with example

* the actual example ... ahem

* moved DrawTexturePoly to textures function and example
NB function name changed to fit with other DrawTextureXXX functions
(no "d" )

Co-authored-by: codifies <you@example.com>
2021-03-25 14:22:10 +01:00
Jeffery Myers
13f97471a2 Change the color of the FPS display if the FPS is low (orange for <30, red for < 15). (#1676)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-24 17:59:05 +01:00
Ray
bb73a8089a Reviewed DrawFPS() comment 2021-03-24 17:06:32 +01:00
Ray
9bea64b5e4 REMOVED: DrawGizmo()
This is a very simple and specific implementation that should be better addressed by the users
2021-03-24 17:02:40 +01:00
Ray
9047025ab7 Update textures.c 2021-03-24 00:41:01 +01:00
Ray
c2bc3d22a1 REVIEWED: DrawRectangleRounded() performance #1523
Function analyzed using RenderDoc. It's a complex function and could require many triangles for the corners but it seems overall it's quite optimized!
2021-03-24 00:25:53 +01:00
Victor
c5b0a1f005 Fix activeTextureId to have MAX_BATCH_ACTIVE_TEXTURES elements instead of the hardcoded 4 (#1674) 2021-03-23 20:17:23 +01:00
Chris
2532c396ed Fix 90 degree bug with DrawTexturePro and DrawRectanglePro (#1673)
- The vertices did not map to where I expected causing rotation to be
off by 90 degrees. I reorganized the vertices making it easier to
reason about which fixes this.
- The order for drawing is now topLeft, bottomLeft, bottomRight,
topRight.
2021-03-23 14:40:26 +01:00
Ray
3e6ee028e5 Update rlgl.h 2021-03-23 12:15:52 +01:00
Ray
6f5a4a9351 REVIEWED: rlgl_standalone usage 2021-03-23 11:51:09 +01:00
Dan Bechard
5325d8d2ba Don't call sqrtf when axis already normalized (#1672) 2021-03-23 11:32:25 +01:00
Davidson Francis
81738bfa98 Fix PATH for other PLATFORM_OS's (#1671)
The Raylib root Makefile for PLATFORM=PLATFORM_WEB is assumed to
run in Windows environments, which makes it incorrectly set the
PATH variable, so Linux (and possibly other) environments are not
able to find binaries from EMSDK_PATH.

Fix this by checking which PLATFORM_OS and configure PATH
accordingly.
2021-03-23 07:53:25 +01:00
Jeffery Myers
c6dd41495b typecast warning fixes. (#1667)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-22 20:45:46 +01:00
Ray
2ce28f75ad WARNING: BREAKING: REDESIGNED: rlgl module
- Many functions renamed to follow rl*() convention
- Some internal functions exposed in the API
- Some functionality moved to other modules
- Reorganized all functions by categories
- Make sure it keeps working with OpenGL 1.1 and 2.1
2021-03-22 20:45:04 +01:00
Ray
24dae29a03 Review latest PR and some formatting 2021-03-22 20:41:33 +01:00
Jeffery Myers
2c0a533948 [AUDIO] Music Looping enhancements (#1665)
* Add loop functions for music files.
Tell xm tracker to loop tracker when loop state changes.
Don't let looped xm tracker streams restart, they are infinite
Use modulo to make time tracker for xm looped streams work correctly.

* Remove loop functions, set XM loop in update based on flag.
Formatting cleanups.

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-22 20:36:13 +01:00
Jeffery Myers
b573ff3e7a [AUDIO] Use device native sample rates (#1660)
* Init MinAudio to a sample rate of 0 to let the device pick the rate.
Read the rate from the device after it starts up.
Convert AUDIO_DEVICE_SAMPLE_RATE from a #def into an int, that is set from the device's rate
Set all sample systems to use the AUDIO_DEVICE_SAMPLE_RATE as the target rate to minimize resampling.

* use device sample rate instead of separate var
let config define a device sample rate if it wants to, but let the default be 0 for native rate.

* Don't use fixed sample rates for tracker files.
Remove config default audio buffer size and replace with a function that computes one for a reasonable frame rate at the output sample rate.
2021-03-21 22:07:55 +01:00
Ray
c37f61d31f REVIEWED: rlgl module #1523 2021-03-21 20:31:35 +01:00