Commit Graph

3435 Commits

Author SHA1 Message Date
Бранимир Караџић
16f5562000 wasm: Fixed build. 2024-10-21 18:21:09 -07:00
Бранимир Караџић
423a2b5706 Cleanup. 2024-10-18 20:33:18 -07:00
Бранимир Караџић
dd4199bcb3 Updated version. 2024-10-08 21:58:43 -07:00
Бранимир Караџић
96391d0b59 Cleanup. 2024-10-08 18:59:34 -07:00
Martijn Courteaux
fdb09ca401 Insert vkDeviceWaitIdle to prevent VK_DEVICE_LOST. (#3363) 2024-10-08 07:00:02 -07:00
Martijn Courteaux
e488a07f1b Support both X11 and Wayland in the same build. (#3360)
* Support both X11 and Wayland in the same build.

 - Works for both Vulkan and OpenGL.
 - Remove --with-wayland from genie options.
 - Vulkan loads all three extensions for surface creation instead of only one.
 - Add width and height parameter to GlContext::createSwapChain(), which is needed for EGL to create
   a SwapChain with the given window size.
 - Dirty-fix the example-22-windows to recreate the FrameBuffer by first destroying and then
   recreating to make sure the window is released of its swapchain.
 - Fix dbgText glitch in example-22-windows.
 - Remove old X11-related dependencies for GLFW3.

* Formatting.
2024-10-05 14:33:22 -07:00
Бранимир Караџић
3f9fe0d34e Cleanup. 2024-10-01 16:23:25 -07:00
Бранимир Караџић
54ab573055 Cleanup. 2024-10-01 11:22:25 -07:00
Martijn Courteaux
a6e372ead9 Dynamically load libwayland-egl.so.1 when dealing with Wayland to remove dependencies at program startup. (#3359) 2024-10-01 11:06:56 -07:00
Daniel Kalmar
7e5bb54a3e Improve NX Vulkan support. (#3357)
This change was developed using publicly available information found in Vulkan headers and official documentation. No proprietary NX resources were used.

Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2024-10-01 09:02:06 -07:00
Martijn Courteaux
3303b451a1 Properly support Wayland under EGL and Vulkan. (#3358) 2024-10-01 09:01:44 -07:00
James Fulop
e464102960 fix typo (scrach -> scratch) (#3353) 2024-09-12 19:19:10 -07:00
Daniel Kalmar
eaec8ddf3b Fix a crash in renderer_d3d12.cpp (#3349)
If querying the debug1 interface fails, don't attempt to release it.
2024-08-31 11:15:28 -07:00
Oskar Kwaśniewski
ed03259c41 fix: visionOS 1.2 build errors (#3347) 2024-08-28 09:22:38 -07:00
Daniel Kalmar
ff1fa8dd39 Use the correct options enum when checking D3D12 features. (#3346) 2024-08-28 09:21:59 -07:00
Oskar Kwaśniewski
0b73e8c7e2 fix: layer rendering (#3339) 2024-08-12 07:55:15 -07:00
Sim Saëns
3f3d3b4433 feat: optional immersive rendering in visionOS (#3335)
* Implements optional code path for immersive rendering based on the type of nwh

* Reverted change in SwapChainMtl destructor
2024-08-09 23:25:47 -07:00
Sami Kyöstilä
85726bcb53 egl: Release per-thread resources before unloading (#3337)
Release EGL's per-thread resources before unloading the EGL library to
avoid a potential crash when the render thread is terminated.

Co-authored-by: Sami Kyöstilä <sami.kyostila@unrealvoodoo.org>
2024-08-08 10:36:45 -07:00
Oskar Kwaśniewski
aa4f8c5833 feat: add world tracking provider to render on acutal device (#3326) 2024-07-30 08:15:23 -07:00
Oskar Kwaśniewski
b4df15f848 fix: properly set viewports and render targets (#3325)
fix: do not use STL
2024-07-25 01:17:47 -07:00
Sandy
987a6f89de Fix issue with visionOS not being defined (#3327)
VisionOS SDK was introduced in xcode 15.2.
xcode 15.0, 15.1 do not have the visionOS platform defined.
Additionally, if you use a different llvm such as llvm 17 or 18 from
homebrew, the platform might not be defined even when using xocde 15.2 or
newer.
2024-07-19 20:54:44 -07:00
Бранимир Караџић
af12904d8c Noop: Added missing caps. 2024-06-28 08:16:26 -07:00
Бранимир Караџић
2529e1abc7 Sorted caps. 2024-06-28 08:16:09 -07:00
Daniel Kalmar
14750e1392 Minimal changes for Vulkan support on NX. (#3317) 2024-06-25 07:19:59 -07:00
Faaux
93961afcfd Use correct GLSL shader version if onyl gl_VertexID is used (#3315) 2024-06-23 08:59:37 -07:00
Бранимир Караџић
06d0e2af2f Cleanup. 2024-06-21 07:37:44 -07:00
Martijn Courteaux
1109f3c5bf Vulkan: improve staging data performance by using scratch buffers per frame. (#3295)
* Vulkan: improve staging data performance by using scratch buffers per frame.

* vulkan: Add alignment parameter to request scratch space.

* Align staging buffers to texel block size.

* Fix scratch buffer allocation bug.

* Fix some non-deterministic behavior found by Valgrind. Paranoid printing.

* Remove debugging printing

* Fix alignment of converted formats.

* Remove forgotten debug print.
2024-06-21 07:32:00 -07:00
Бранимир Караџић
a02d9b541b Updated version. 2024-06-15 10:34:51 -07:00
Branimir Karadžić
8432a0a76d MSVC: Enable preprocessor conformance mode. 2024-06-15 10:14:01 -07:00
Бранимир Караџић
9547e79867 VK: Disabled allocator callbacks. 2024-06-13 20:32:12 -07:00
Бранимир Караџић
b66f60cba0 Cleanup. 2024-06-05 20:27:29 -07:00
Martijn Courteaux
763732e828 Make the semaphore pool larger, such that there are enough for any number of swapchain images AND frames in flight. (#3307) 2024-06-05 20:24:31 -07:00
Бранимир Караџић
eedda8e5cf VK: Added latency info. 2024-06-05 15:43:41 -07:00
Tao
0ba23f9b13 Fix adapter object leak when there are more than 4 graphics cards (#3306)
when my computer have more than 4 gpu, it's debug break on
2024-06-05 07:33:49 -07:00
Бранимир Караџић
530a558b11 Cleanup. 2024-06-03 08:27:44 -07:00
Oskar Kwaśniewski
3195593d8d feat: base visionOS bgfx implementation (#3289)
Co-authored-by: mani3xis <mariusz.pas+dev@protonmail.com>

fix: properly set storageMode

cleanup: remove unused variables

fix crash while releasing m_drawable on visionOS

fix: remove unused timing variable

fix: file name cases, cleanup

feat: integrate visionOS into bgfx examples
2024-06-03 08:14:53 -07:00
mclohessy
5c17eb6836 Support /Zc:preprocessor on MSVC for standard compliant preprocessor. (#3294) 2024-05-16 08:02:00 -07:00
Бранимир Караџић
662071f333 Cleanup. 2024-05-11 22:02:23 -07:00
Бранимир Караџић
cbdc8bf77c Cleanup. 2024-05-10 07:37:28 -07:00
Nikolay Ivanov
2d17b9866b Fixed incorrect mipmap generation on Vulkan for Cubemaps (#3236) (#3290) 2024-05-10 07:34:44 -07:00
Martijn Courteaux
1437b5c966 Restore support for older macOS/iOS version. Determine features at init, and use at runtime. (#3284)
* Restore support for older macOS/iOS version. Determine features at init, and use at runtime.

* Fix typo for visionOS macro expansion.

* Silence warnings with pragmas and pointer casts where possible.

* Pragma macros.
2024-05-03 07:35:20 -07:00
João Matos
57d8a0838b Fixes Emscripten wasm64 compile error in glcontext_html5.cpp. (#3282)
Fixes compile error:

```
glcontext_html5.cpp:74:45: error: cast from pointer to smaller type
'EMSCRIPTEN_WEBGL_CONTEXT_HANDLE' (aka 'int') loses information
74 |                 EMSCRIPTEN_WEBGL_CONTEXT_HANDLE context =
reinterpret_cast<EMSCRIPTEN_WEBGL_CONTEXT_HANDLE>(g_platformData.context);
|
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
```
2024-04-30 07:16:20 -07:00
Бранимир Караџић
932302d8f4 Compute: Rename Write Only suffix _WR to _WO. 2024-04-18 10:07:40 -07:00
Martijn Courteaux
0ed3ac95aa More vulkan profiling. (#3279) 2024-04-17 07:24:11 -07:00
Бранимир Караџић
3afb43090f Fixed #3274. 2024-04-02 07:50:19 -07:00
Бранимир Караџић
632489bef5 Fixed #3274. 2024-04-01 09:51:57 -07:00
Бранимир Караџић
0244cc4af2 Updated version. 2024-03-29 17:17:31 -07:00
Бранимир Караџић
2ad67a4dfd Cleanup. 2024-03-29 16:36:55 -07:00
Бранимир Караџић
8ec4b71303 D3D11: Made use staging buffer configurable. 2024-03-28 09:49:02 -07:00
IchorDev
4cb7b7138a Fix dispatch_indirect still using uint16_t in bgfx.idl (#3268)
* Fix error in dynamic version of D bindings

Dazed and confused but trying to continue

* Fix dispatch_indirect still using uint16_t in bgfx.idl
2024-03-12 08:01:27 -07:00