Commit Graph

190 Commits

Author SHA1 Message Date
SirLynix
0191256493 Fix Nz::ErrorFlags API and usage 2024-01-28 15:03:24 +01:00
SirLynix
6757de1be8 Add end-of-line spaces checker 2024-01-26 10:43:00 +01:00
SirLynix
9ada93b995 Remove spaces before line feed 2024-01-25 14:38:06 +01:00
SirLynix
7dc7104cc4 Update to latest nazarautils 2024-01-02 12:02:45 +01:00
SirLynix
d2e2c075b4 Update copyright year 2024-01-02 12:02:14 +01:00
Lynix
4065fbfb1a Core/OpenMode: Rename ReadOnly/WriteOnly to Read/Write 2023-12-25 19:49:03 +01:00
SirLynix
5253a80a24 Audio: Fix compilation on emscripten | unity_build 2023-12-04 17:50:12 +01:00
SirLynix
3fb1096d07 Audio: Implement support for ALC_EXT_thread_local_context 2023-12-04 17:38:05 +01:00
SirLynix
3e1b61070c Audio/OpenALDevice: Fix previous commit 2023-12-04 17:37:40 +01:00
SirLynix
b5576ccb9f Audio: Fix data race when a device is used from multiple threads
OpenAL devices can be used from multiple threads and the error handling code (inspired by OpenGLRenderer) did not take that into account. This is not a problem for the OpenGLRenderer since contexts are thread-local which is not the case for OpenAL devices.
2023-12-04 11:01:01 +01:00
SirLynix
f75a00efe2 Audio: Fix loading of OpenAL extensions (pointers are context-local) 2023-12-04 00:23:39 +01:00
SirLynix
73fc061412 Audio/Music: Remove unnecessary code
Play() blocks until the thread (and source) has started
2023-12-03 15:30:39 +01:00
Lynix
4ee4092bba Cleanup includes 2023-12-02 13:56:24 +01:00
Lynix
dc9c1e14c4 Allow to use env vars to override module configs 2023-12-02 13:56:23 +01:00
Lynix
ba7d2221d0 Audio/SourceEmitter: Throw exception if audio source couldn't be created 2023-12-02 13:56:23 +01:00
Lynix
36dcc03c11 Audio/OpenALDevice: Improve error when buffer/source creation fails 2023-12-02 13:56:06 +01:00
Lynix
150787971a Audio/Music: Fix possible data-race in GetPlayingOffset 2023-11-29 22:26:19 +01:00
Lynix
079f153640 Minor fixes 2023-11-28 20:05:09 +01:00
SirLynix
4b8a475bbd Split error macro into two versions (format vs non-formating) to allow format checking at compile-time 2023-11-02 15:18:03 +01:00
SirLynix
21680171a2 Replace GetPlatformEndianness() by PlatformEndianness constexpr
from nazarautils
2023-09-08 09:13:04 +02:00
SirLynix
bd53245f42 Core/StringExt: Don't pass string_view by ref
https://quuxplusone.github.io/blog/2021/11/09/pass-string-view-by-value/
2023-08-24 08:23:14 +02:00
SirLynix
a741672a51 Allow error message to be formatted 2023-08-15 01:10:01 +02:00
SirLynix
816d9d1174 Allow to setup/override module configuration from commandline 2023-07-30 12:44:43 +02:00
SirLynix
bf0d7674c7 Core: Add thread extension functions 2023-06-07 13:35:40 +02:00
SirLynix
b9c1559d97 Random code cleanup 2023-06-05 18:05:16 +02:00
Jérôme Leclercq
1a55b550fb Improve math module (#396)
* Improve math module

- Mark almost everything constexpr
- Equality (a == b) is now exact, down to the bit level. If you want approximate equality use the new ApproxEqual method/static method
- Rename Nz::Extend to Nz::Extent
- Removed Make[] and Set[] methods in favor of their static counterpart and operator=
2023-06-02 22:30:51 +02:00
SirLynix
dfe6b2ddcf Make use of the new EnumMap class 2023-05-30 12:32:37 +02:00
SirLynix
6fd90d63ef Fix check-files 2023-03-21 13:21:49 +01:00
SirLynix
9b4d297c04 Update includes for new NazaraUtils version 2023-03-19 13:01:56 +01:00
SirLynix
f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
Jérôme Leclercq
dd421a6385 Replace float/UInt64 durations by a more precise Time class (#388)
Improve Clock class with atomic RestartIfOver method and allows to choose required precision
2022-12-29 21:31:46 +01:00
SirLynix
22ae68fdca Audio/Sound: Fix crash when destroying moved Sound 2022-12-24 11:55:27 +01:00
SirLynix
b79718404c Fix OpenAL extensions functions 2022-12-06 12:54:22 +01:00
Jérôme Leclercq
3d05b1fb44 Fix missing include 2022-12-06 12:00:59 +01:00
SirLynix
2dd0e7d9c8 Audio: Add an option to directly link OpenAL 2022-12-06 07:48:03 +01:00
SirLynix
9cd7976a91 Remove "MemoryManager" and very old code 2022-09-24 14:25:52 +02:00
SirLynix
6bf4ccaae1 Core/ParameterList: Rework Parameter getter using Result 2022-09-09 13:47:06 +02:00
SirLynix
72d908817d Fix compilation with unity build 2022-09-07 19:28:41 +02:00
SirLynix
47cb878f9d Major ResourceLoader rework (using Nz::Result) 2022-09-07 13:31:04 +02:00
Jérôme Leclercq
a237102de9 Music: fix concurrent access on destruction 2022-06-07 22:47:54 +02:00
SirLynix
16922a9519 Audio/Music: Fix datarace 2022-06-07 20:18:26 +02:00
Jérôme Leclercq
03e2801dbe Split engine to packages NazaraUtils and NZSL (#375)
* Move code to NazaraUtils and NZSL packages

* Reorder includes

* Tests: Remove glslang and spirv-tools deps

* Tests: Remove glslang init

* Remove NazaraUtils tests and fix Vector4Test

* Fix Linux compilation

* Update msys2-build.yml

* Fix assimp package

* Update xmake.lua

* Update xmake.lua

* Fix shader compilation on MinGW

* Final fixes

* The final fix 2: the fix strikes back!

* Disable cache on CI

* The return of the fix™️
2022-05-25 19:36:10 +02:00
Lynix
3c8b4c2587 Audio: Fix loading of OpenAL 2022-05-08 15:44:59 +02:00
Lynix
17b1c2407d Audio/AudioSource: Add GetSampleOffsetAndLatency 2022-05-08 15:44:41 +02:00
SirLynix
41712a3f18 Minor fixes 2022-05-08 13:21:20 +02:00
SirLynix
4794073b73 Audio: Add support for AL_SOFT_source_latency 2022-05-08 13:20:55 +02:00
SirLynix
21a38fb31b Audio: Add some fixes and tests 2022-05-06 12:41:02 +02:00
SirLynix
81085508ec Minor fixes 2022-05-05 20:20:44 +02:00
SirLynix
e1d2063bf0 Audio/DummyAudioSource: Fix status after Stop() call 2022-04-23 16:43:08 +02:00
SirLynix
947cc96923 Audio/Music: Fix Play() call after music stopped 2022-04-21 18:25:42 +02:00