Commit Graph

153 Commits

Author SHA1 Message Date
Attila Uygun 38813f98b4 Move AudioMixer::Resource to MixerInput 2023-07-13 10:49:42 +02:00
Attila Uygun c5171ffc03 Hash uniform name strings 2023-07-12 02:32:22 +02:00
Attila Uygun e509588f61 Optimization for AudioMixer
Remove resource map and use std::shared_ptr<void>
2023-07-11 23:29:47 +02:00
Attila Uygun 6bad0ac9c0 Use a vector instead of unordered_map for shader variables 2023-07-11 23:22:43 +02:00
Attila Uygun cccc6ca8c3 Cleanup 2023-07-10 00:17:09 +02:00
Attila Uygun 0398903585 Fix for opengl renderer 2023-07-04 22:46:39 +02:00
Attila Uygun 392c4eaf8f Update for vulkan renderer
- Create staging buffers before starting bg thread
- Remove VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT
2023-07-01 23:25:37 +02:00
Attila Uygun 3dc48ef05e Implement window resize 2023-07-01 21:36:26 +02:00
Attila Uygun c6546b43b5 Add log verbosity level 2023-06-28 22:25:39 +02:00
Attila Uygun 1148e48085 Fix typo 2023-06-26 20:03:22 +02:00
Attila Uygun ce440f2913 Remove OpenGL threaded rendering 2023-06-26 20:03:22 +02:00
Attila Uygun b07ce8514e Do not reset source index when streaming is in progress 2023-06-26 20:03:22 +02:00
Attila Uygun 467e73d3a8 Fix for looping audio 2023-06-26 20:03:15 +02:00
Attila Uygun 1b9faac310 Music should be streamed 2023-06-26 10:25:22 +02:00
Attila Uygun 615c39a4fe Move asset loaders to engine/asset 2023-06-25 18:40:58 +02:00
Attila Uygun 709029f22c Async-load support for assets 2023-06-25 16:48:56 +02:00
Attila Uygun 8e6589ec67 Fix memory leak when canceling tasks 2023-06-24 11:04:10 +02:00
Attila Uygun 69a05c00e9 Support for adding tasks in front of the task queue 2023-06-24 11:04:07 +02:00
Attila Uygun d7e444fa81 Fix compile error 2023-06-21 14:31:35 +02:00
Attila Uygun 8a87597911 Update third_party/stb
stb_image - v2.28
stb_truetype - v1.26
2023-06-21 14:00:21 +02:00
Attila Uygun 22d80d6152 Cleanup & refactor 2023-06-21 13:59:11 +02:00
Attila Uygun 67632ff144 Fix typo 2023-06-17 21:05:05 +02:00
Attila Uygun 8fd24a3c1a Update TaskRunner
Remove SingleConsumerRun
Rename MultiConsumerRun to RunTasks
Refactor CancelTasks
2023-06-13 23:27:10 +02:00
Attila Uygun 305b23738c Make thread-local-task-runner a shared_ptr 2023-06-13 23:27:10 +02:00
Attila Uygun 83400a0b52 Use string for callback location info 2023-06-13 23:27:10 +02:00
Attila Uygun fdbbb2a6fd Fix for ReplyAdapter in TaskRunner 2023-06-12 00:35:57 +02:00
Attila Uygun ab4c0c7e57 Cleanup 2023-06-12 00:34:29 +02:00
Attila Uygun 325b07d844 Do not refresh image when texture is not in use 2023-06-12 00:34:29 +02:00
Attila Uygun 05b86a38c1 Add comments 2023-06-11 22:42:34 +02:00
Attila Uygun 0876203d82 Cancel tasks on shutdown 2023-06-11 22:42:34 +02:00
Attila Uygun f54835e5f3 Consume input events on ContextLost 2023-06-11 22:42:34 +02:00
Attila Uygun ba246eca7f Revert "Consume input events when switching between renderers"
This reverts commit 5c6e414a15.
2023-06-06 23:00:55 +02:00
Attila Uygun 068656ddc2 Bump version to 1.0.4 2023-06-06 00:26:29 +02:00
Attila Uygun 00f57bab05 Fix for Vulkan renderer
Terminate the bg thread before destroying resources
2023-06-06 00:26:29 +02:00
Attila Uygun 3bc8785469 Fix for benchmark 2023-06-05 23:41:27 +02:00
Attila Uygun 5c6e414a15 Consume input events when switching between renderers 2023-06-05 23:41:27 +02:00
Attila Uygun 1d1452d4aa Add support for canceling tasks in TaskRunner 2023-06-05 23:41:27 +02:00
Attila Uygun 557eb517cb Renaming 2023-06-04 19:28:55 +02:00
Attila Uygun e376b1bc17 Add option to switch between renderers 2023-06-04 12:54:40 +02:00
Attila Uygun 76fb19ab3a Move AudioSinkDelegate into AudioSink 2023-06-04 11:31:37 +02:00
Attila Uygun a39efa5d3c Add comments 2023-06-04 11:13:22 +02:00
Attila Uygun 7b637a95d9 Refactoring audio code
- Add AudioBus
- Move resampling to AudioBus
- Move SincResampler to engine/audio
2023-06-04 01:42:10 +02:00
Attila Uygun 29ce485ca3 Fix for crash in renderer 2023-06-02 14:23:21 +02:00
Attila Uygun 7d458859d7 Game fixes and tweaks.
- No shield until wave 8.
- Do not play boss music when disabled.
2023-06-01 20:19:00 +02:00
Attila Uygun 685b17aba6 Bump version
Also fix typo and remove redundant code
Add bash script for ndk-stack
2023-05-30 11:59:18 +02:00
Attila Uygun f6f67d7e53 Cleanup renderer 2023-05-26 22:54:14 +02:00
Attila Uygun 43afdf855f Move renderer ownership to engine 2023-05-26 22:54:14 +02:00
Attila Uygun 66557f07e3 Do not reinitialize Vulcan context unnecessarily. 2023-05-26 22:45:24 +02:00
Attila Uygun d5ee1c7313 Rename AudioDriver to AudioSink 2023-05-24 23:14:51 +02:00
Attila Uygun 8d28d85a09 Move AudioDriver ownership to AudioMixer 2023-05-24 23:14:14 +02:00
Attila Uygun b160ae0bd3 Support for switching between renderers in run-time 2023-05-24 23:14:14 +02:00
Attila Uygun b7f1f7faa2 Shutdown renderer in destructor 2023-05-23 00:01:19 +02:00
Attila Uygun 94242fca0b Revert "Try Vulkan renderer first, fallback to OpenGL if it fails."
This reverts commit daa3a8c06f.
2023-05-23 00:01:19 +02:00
Attila Uygun be36d121b0 Update Oboe to 1.7.0 2023-05-21 23:41:15 +02:00
Attila Uygun b2e5f19963 Remove exceptions 2023-05-21 23:41:15 +02:00
Attila Uygun 971540dce2 Runtime support to call ANativeWindow_setFrameRate for minSDK < 30 2023-05-21 23:02:24 +02:00
Attila Uygun 5cad50bf55 fix audio 2023-05-21 22:23:04 +02:00
Attila Uygun 41bb5e286a Fix for vulkan renderer 2023-05-21 22:23:04 +02:00
Attila Uygun 0454bf6a18 Disable ads in debug build 2023-05-21 22:23:04 +02:00
Attila Uygun c90d039944 Refactoring audio code 2023-05-18 22:25:11 +02:00
Attila Uygun be1d562a07 Refactoring Animator class. 2023-05-18 22:25:01 +02:00
Attila Uygun cda1d750f8 Manage custom shaders in Engine 2023-05-17 11:46:19 +02:00
Attila Uygun daa3a8c06f Try Vulkan renderer first, fallback to OpenGL if it fails. 2023-05-16 22:07:52 +02:00
Attila Uygun 449ac3f386 Update version 2023-05-16 22:07:52 +02:00
Attila Uygun beba055645 Stringify error values 2023-05-16 22:07:52 +02:00
Attila Uygun 0a2f1bd7c3 Miscellaneous changes and improvements 2023-05-16 22:07:52 +02:00
Attila Uygun 58cc270e24 Use final and override appropriately 2023-05-16 08:46:50 +02:00
Attila Uygun 5ca5ed763a Update to Vulkan SDK 1.3.231.1
Update vma, volk, vulkan headers, glslang, spirv-reflect.
Remove Vulkan loader and use volk instead.
2023-05-12 00:08:36 +02:00
Attila Uygun 655c0a7b71 Update android build
Upgrade to gradle 8.0
Compile and target sdk 33
Min sdk 24
Upgrade to Google Mobile Ads SDK 22.0
Enable c++20 and fix compilation issues
2023-05-09 22:22:02 +02:00
Attila Uygun 97271835b0 Remove gn 2023-05-05 08:22:51 +02:00
Attila Uygun 4bab472ed1 Enable extra warnings for all but third-party 2023-05-04 23:21:32 +02:00
Attila Uygun 653c283758 Use std::counting_semaphore 2023-05-04 18:07:30 +02:00
Attila Uygun 771f8a3d78 Update SincResampler 2023-05-03 20:21:26 +02:00
Attila Uygun 8cd680d6a4 Enable C++20 2022-11-10 21:52:19 +01:00
Attila Uygun 8c05aae086 Update SincResampler 2022-11-10 21:45:51 +01:00
Attila Uygun f723513521 Update jsoncpp (1.9.5) 2022-11-10 21:39:24 +01:00
Attila Uygun cb81ec3e1c Fix for weapon position 2022-11-10 21:03:15 +01:00
Attila Uygun 10e272fee1 Code cleanup and improvements 2022-09-13 20:25:29 +02:00
Attila Uygun 0bd3a1c607 Fix for crash. 2022-09-13 20:25:27 +02:00
Attila Uygun a2dafd172e Code cleanup 2022-09-13 20:25:25 +02:00
Attila Uygun 1e57355593 Move java files to platform. 2021-10-29 14:13:49 +02:00
Attila Uygun 0bb653d985 Code cleanup 2021-10-28 23:30:59 +02:00
Attila Uygun 0866349f58 Code cleanup
- Use absolute paths for includes.
- Add file path to include guards.
- Use uint64_t for resource id.
- Compile engine code into separate lib.
- Compile time and run time string hashing functions.
- Rename Worker to ThreadPool.
- Update .gitignore
- Code generator for texture compressor.
2021-10-27 18:22:32 +02:00
Attila Uygun 042bffaff3 Renderer code refactoring. 2021-10-26 23:35:14 +02:00
Attila Uygun 79d9d294e6 Platform code refactoring. 2021-10-26 23:35:07 +02:00
Attila Uygun 44aa8b2a33 Audio code refactoring. 2021-10-26 23:34:51 +02:00
Attila Uygun c6501323cf Add full game code and assets. 2021-09-01 00:08:03 +02:00
Attila Uygun e669f2b474 enable/disable depth test. 2021-02-23 17:26:07 +01:00
Attila Uygun 68b6b1dfea Vulkan: depth buffer 2021-02-23 17:26:05 +01:00
Attila Uygun 744d4485eb Refactoring Animator. 2021-02-20 00:21:49 +01:00
Attila Uygun 1ae44b6a76 vecmath 2021-02-18 23:43:40 +01:00
Attila Uygun f332246ea9 Vulkan: Spirv cache. 2021-02-11 21:54:30 +01:00
Attila Uygun 580ff678ec Vulkan: Optimization for begin/end command buffer. 2021-02-11 21:54:27 +01:00
Attila Uygun 03776c643e Support for multiple texture bindings for Vulkan. 2021-02-11 21:51:05 +01:00
Attila Uygun 3a5572c8d0 Cleanup 2021-02-11 21:51:05 +01:00
Attila Uygun bb4c6032fb Compressed texture support for Vulkan. 2021-02-10 00:39:04 +01:00
Attila Uygun 823e56ee13 Index buffer support for Vulkan. 2021-02-10 00:39:04 +01:00
Attila Uygun 128fa659a8 Record setup command buffer in a background thread. 2021-02-10 00:39:04 +01:00
Attila Uygun 671661758c Implement Vulkan renderer. 2021-02-10 00:39:04 +01:00
Attila Uygun d8cb4b96b0 Add glslang, SPIRV-Reflect, VMA, Vulkan SDK. 2021-02-10 00:39:04 +01:00