b9fce40eb9
include stdbool
2025-03-23 16:00:26 -07:00
aea30c5ed9
didnt mean to commit
2025-03-23 08:20:45 -07:00
e3c53cc880
bleh
2025-03-22 22:47:54 -07:00
d89eec06d0
use relative paths
2025-03-22 22:43:08 -07:00
7465b192f3
GLOB_RECURSE
2025-03-22 22:37:47 -07:00
91672a1401
CMakeLists.txt is needed
2025-03-22 22:27:43 -07:00
4f7c018e34
CMakeLists.txt is needed
2025-03-22 22:20:31 -07:00
79d2d2cc97
Cleanup
2025-03-22 22:18:44 -07:00
91a487c828
Test headers are kosher
2025-03-22 22:16:08 -07:00
0227b7a61d
Issue #872 : Fix float overflow in plasma transition shader
2025-02-28 11:37:39 +01:00
5a31295172
Let the static playlist library depend on the static symbols of the projectM library
2025-02-27 17:16:11 +01:00
fa67d837a5
Add user sprite functions to C API.
2025-02-27 16:57:03 +01:00
631573a4f0
Add user sprite proxy functions to ProjectM class.
2025-02-27 15:55:14 +01:00
9266716ef6
Implement user sprite manager and factory
2025-02-27 15:55:14 +01:00
760a4c9c95
Add Milkdrop user sprites
2025-02-27 15:55:14 +01:00
f0bad56ca1
Treat keys in FileParser case-insensitively
...
Presets and user sprites could use any casing for the keys, so we should also behave properly.
2025-02-27 15:55:14 +01:00
86164bece1
Remove misleading ToDo comments for title and sprite drawing.
2025-02-27 15:55:14 +01:00
5eb037efc1
Make shader resource file generation reusable
2025-02-27 15:55:14 +01:00
fbdb18b355
Move FileParser to main directory.
...
Makes it easier to reuse for loading sprites.
2025-02-27 15:55:13 +01:00
1ed2967e35
Add transition/blending progress to render context
2025-02-27 15:55:13 +01:00
458a63d8a5
Cache compiled static preset shaders
2025-02-27 15:55:13 +01:00
a2e9a91651
Add a global shader cache
2025-02-27 15:55:07 +01:00
1b7c7c844c
Fix ninja package name in BUILDING.md
...
Debian and Ubuntu package the Ninja build system as `ninja-build` not `ninja`.
2025-01-04 19:36:41 +00:00
9f47262a18
Add both long and short sampler names for random textures.
...
If a preset uses different long-form samplers for a single random slot, this will result in a failure, e.g. using both "sampler_rand00_something" and "sampler_rand00_else". As this also isn't supported by Milkdrop and would create a conflict situation, we don't care.
2024-12-16 17:49:16 +01:00
a77df53bc7
hlslparser: Add missing "faceforward" HLSL intrinsic.
2024-12-16 17:43:18 +01:00
e7e77baa96
hlslparser: Add missing "ldexp" HLSL intrinsic.
...
Had to simulate it with the "x * exp2(exp)" expression in GLSL, as GLSL only supports integer types as exponents in its native ldexp implementation, while HLSL solely uses floats.
2024-12-16 17:43:14 +01:00
e90dc28e35
Improve playlist documentation regarding callbacks.
...
Doxygen documentation now mentions that the playlist library will set the preset switch callbacks in projectM and needs them to function properly. Added hints on how to restore functionality if needed.
2024-12-09 14:29:18 +01:00
3eaa733b8b
Added the version since each API call is available to Doxygen comments.
2024-12-09 14:29:16 +01:00
7f48e6c3c3
Updated copyright dates and AUTHORS.txt
2024-12-09 13:33:43 +01:00
9aa18cd985
Bump dawidd6/action-download-artifact from 2 to 6 in /.github/workflows
...
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact ) from 2 to 6.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases )
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v2...v6 )
---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-11-26 09:20:19 +01:00
f2a0277ddd
Fix texture loading if casing mismatches filename
...
Always use lower-case unqualified names to find and cache the actual textures.
2024-10-07 12:08:44 +02:00
f6ff7943c1
Add "refract()" intrinsic support to hlslparser
2024-08-26 09:53:05 +02:00
1b8004f714
Improve vcpkg manifest, use features for build options.
...
Now pulling in the required vcpkg dependencies only if a certain build feature is requested.
2024-08-07 18:31:32 +02:00
1711511f36
Fixed variable using reserved word in vertex shader
...
OpenGL ES has a distance() function, and thus, the shader may fail to compile in some drivers, e.g. some Android releases.
2024-08-04 17:04:45 +02:00
4e9040f338
Properly check for uninitialized texture in CopyTexture class.
...
Before rendering the first frame, there is no output texture present in a preset, so we can't copy anything and should just skip that step.
2024-07-12 14:25:28 +02:00
f94f99d888
Make preset transitions use TimeKeeper instead of the system clock
2024-06-09 13:04:01 +02:00
2914d85ec3
Add API functions to set and retrieve frame times
...
Setting a custom frame time will result in stable animation speeds if projectM does not render at real-time speeds, e.g. while encoding a video from an audio file as fast as possible.
2024-06-09 12:51:35 +02:00
bd2b1ba9f4
Add API function to enable rendering to custom FBO IDs
2024-06-08 17:22:23 +02:00
b0cdf4de7b
Add optional FBO ID parameter to render function.
...
This will allow external apps to pass in any custom FBO to render to. Defaults to 0, keeping previous behavior if not given.
2024-06-08 17:22:23 +02:00
91f329111f
Hard-code internal noise texture format for GL Core profiles
...
glGetInternalformativ() also is an addition in OpenGL Core 4.2, which we don't officially support.
2024-05-13 17:55:26 +02:00
f60cd86ab6
Add option to use system projectm-eval (used in vcpkg)
2024-05-03 15:09:33 -05:00
6e817a179f
New bug report and feature request templates
2024-04-28 17:38:11 +02:00
ac77498318
nobody reads comments anyway
2024-04-18 23:49:31 +02:00
99259dc98a
swaps misordered label values
2024-04-18 23:49:31 +02:00
e538ccc615
Fix bug that prevents composite shader from being loaded
...
Happens in the rare cases if a preset has no warp shader
2024-03-19 23:14:10 +01:00
436fd5221b
Fix include dirs in SOIL2 library
2024-03-19 23:14:09 +01:00
bc9937f34e
Fix #if USE_GLES to #ifdef in SDL test UI
2024-03-19 23:14:09 +01:00
fa3a15c4cb
Use CMakeLists.txt in GLM source dir
...
Also simplified it a bit, excluding the unnecessary source files and adding the interface library on the top level CMakeLists.txt.
2024-03-19 23:14:09 +01:00
50c0f02b6d
Add pthreads option for emscripten
2024-03-19 23:14:04 +01:00
50c64d4e65
Update README.md
...
Mention rust frontend
2024-03-09 08:27:06 -08:00