Commit Graph

140 Commits

Author SHA1 Message Date
jwdevel
f1f77a6cd3
Record frame num in view stats (#2908)
* Add 'frameNumber' to Frame struct

Previously, the frame number returned from bgfx::frame() was tracked separately in the Context. Now,
we store that information in the Frame. This will allow us to attach the frame number to ViewStats.

* Add frame number to ViewStats

When ViewStats are enabled, we tag each timer query with the current frame number, then include
that information in the final results. In this way, clients can correlate specific work that they
submitted to specific GPU timing information.

NOTE: Some backends not implemented, yet. They will always have 0 for frame number.
The ones which are implemented are:
 * OpenGL
 * Vulkan
 * D3D 9,11,12
 * Noop
2022-09-18 19:09:48 -07:00
Бранимир Караџић
4c0baf5603 D3D11: Enable compilation on Linux. 2022-09-15 22:13:34 -07:00
Бранимир Караџић
4581f14cd4 Happy New Year! 2022-01-15 11:59:06 -08:00
pezcode
2c21f68998
VPRT support for D3D11, D3D12, GL (#2507)
* glsl-optimizer: whitelist ARB_shader_viewport_layer_array_enable

* D3D11: remove duplicate structs and enums

* D3D11: report BGFX_CAPS_VIEWPORT_LAYER_ARRAY

* D3D12: report BGFX_CAPS_VIEWPORT_LAYER_ARRAY

* GL: support for BGFX_CAPS_VIEWPORT_LAYER_ARRAY

* D3D11: multi-layer MSAA resolve

* D3D12: multi-layer MSAA resolve

* D3D12: fix binding multi-layer resolved textures

* GL: fix multi-layer rendertarget creation
2021-05-05 11:58:21 -07:00
Бранимир Караџић
af49c5d264 Happy New Year! 2021-01-14 15:53:49 -08:00
Бранимир Караџић
2cbcb6ea90 RRenamed BX_CHECK to BX_ASSERT. 2020-06-16 10:06:18 -07:00
Pablo Escobar
eeb5fe7c02 Don't double-quote profiler literals 2020-04-03 21:56:54 +00:00
Бранимир Караџић
82f56b5987 Happy New Year! 2020-01-14 21:37:06 -08:00
James Fulop
c04b923860 fix preprocessor boolean logic 2019-11-26 18:50:52 -08:00
Бранимир Караџић
c7d986f729 Attemp to build D3D11 on Linux. 2019-11-14 21:47:22 -08:00
Leandro Freire
1db46f4fe6 Rename variables and constants 2019-08-17 12:32:16 -07:00
Leandro Freire
855623e153 Rename VertexDecl to VertexLayout 2019-08-13 18:42:01 -07:00
Branimir Karadžić
1b9dd14683 Fixed framebuffer RW. 2019-02-18 13:40:17 -08:00
Hugo Amnov
58563b0b1b FrameBuffer Read/Write access WIP 2019-02-17 16:50:26 +01:00
Бранимир Караџић
4c899553e3 Cleanup internal profiler. 2019-02-15 16:45:35 -08:00
Бранимир Караџић
dd10b04651 Fixed texture array frame buffer. 2019-02-07 18:02:48 -08:00
Бранимир Караџић
3f3a9450ba Happy New Year! 2019-01-13 17:13:25 -08:00
Branimir Karadžić
4cbd5a5c0a Added frame buffer resolve control. 2018-10-03 17:52:26 -07:00
Branimir Karadžić
dc18a2931b Fixed swap chain window counting. 2018-08-27 17:56:33 -07:00
Branimir Karadžić
f40bf8e862 Added ability to sample stencil part of depth/stencil texture. 2018-08-23 17:59:47 -07:00
Branimir Karadžić
db0ec1f5db Removed HMD API and OculusVR support. 2018-07-19 20:22:21 -07:00
Branimir Karadžić
45c1554d56 D3D12: DXGI usage cleanup. 2018-03-12 17:40:16 -07:00
Branimir Karadžić
480620751b Separating DXGI functionality from D3D11 renderer. 2018-03-10 11:47:21 -08:00
Branimir Karadžić
584b8b34f0 Added support for independent RGB channel write control. 2018-02-13 12:35:23 -08:00
Branimir Karadžić
052948f173 Cleanup. 2018-01-12 16:38:54 -08:00
Branimir Karadžić
f44c8e2b14 Happy New Year! 2018-01-01 11:16:06 -08:00
Branimir Karadžić
0e532da452 D3D12: Added PIX3. 2017-12-21 16:07:37 -08:00
Branimir Karadžić
0d1cf61bb1 Fixed UWP build. 2017-12-13 23:40:39 -08:00
Branimir Karadžić
88e0bab5a1 D3D11: Detect color spaces. 2017-12-05 17:31:07 -08:00
Branimir Karadžić
0e5f3457c3 Added support for texture direct access. 2017-12-02 22:12:27 -08:00
Branimir Karadžić
dd6d503195 Fixed issue #1262. 2017-10-22 17:24:17 -07:00
Branimir Karadžić
3f11ae5bb4 Moved nvapi integration into separate file. 2017-10-01 19:45:48 -07:00
Branimir Karadžić
f74b350ab8 Workaround issue with partial dynamic buffer update. 2017-09-15 17:54:41 -07:00
Branimir Karadžić
3aec2b89bf Added bgfx::setName to set resource debug name. 2017-08-30 21:46:57 -07:00
Branimir Karadžić
c930137c54 Internal profiler WIP. 2017-08-13 21:15:39 -07:00
Branimir Karadžić
a1184d53c5 Invalidate occlusion queries in flight when new occlusion query with the same id is created. 2017-03-03 18:05:36 -08:00
Branimir Karadžić
b99ebb9535 Cleanup. 2017-02-08 19:55:31 -08:00
Branimir Karadžić
1d7b32e464 Fixed typo. 2017-02-03 18:25:35 -08:00
Branimir Karadžić
3b83f53ab1 Happy New Year! 2017-01-01 00:18:41 -08:00
Branimir Karadžić
025d806c70 Present swap chain only when it's updated. 2016-11-09 14:29:37 -08:00
Matthew Endsley
d9dd4bceb5 Add platform agnostic bgfx::VR for renderers to interface
The new platform agnositic class bgfx::VR manages the
functionality that is shared across the various VR platforms.

The individual platform renderers no longer need
to interface with the internal VR tpyes (OVRRenderI) directly

This greatly simplifies the OVR object's surface area which
is now provided by the VRImplI interface. bgfx::VR now manages
core lifecycle issues of the headset.

The notable renderer API changes are the separation of sensor
sampling and rendering. We need these separate so we can control
the timing (later commit) of camera sampling with finer granularity
than at the start of the video frame.
2016-09-16 20:03:12 -07:00
Matthew Endsley
fd6ed06968 Fix opengl OVR texture lifetime issues
Clear mirror and eye textures of OVRRenderI at startup
instead of in the individual renderer interfaces
2016-09-16 15:45:52 -07:00
Matthew Endsley
eec95aeef6 Combine OVRBufferI and OVRMirrorI into a single interface
Simplify the renderer interface for VR to separate the OVR
implementation from the overall HMD foundation.

Part of merging OpenVR back upstream.
2016-09-14 17:50:15 -07:00
Branimir Karadžić
c81ea08e1a D3D11: Resolve MSAA. 2016-07-25 19:00:50 -07:00
Branimir Karadžić
2563382301 WIP: Added autogenerate mipmaps for render targets with mips. 2016-07-22 17:42:55 -07:00
Krzysztof Kondrak
c5acc53c6b OculusVR: added MSAA support 2016-04-09 18:39:08 +02:00
Branimir Karadžić
4bf0bfaf2c Added OpenVR stub. 2016-04-09 00:03:39 -07:00
Branimir Karadžić
35efaf8751 Cleanup. 2016-04-04 23:04:46 -07:00
Branimir Karadžić
ace7083efa Cleanup. 2016-04-04 22:57:54 -07:00
Branimir Karadžić
032759a5e6 Renamed files. 2016-04-02 19:07:20 -07:00