Commit graph

60 commits

Author SHA1 Message Date
Matthew Endsley
1e604e8f38 VR: Add device resolution to HMD. Init at startup.
BREAKING: bgfx::getHMD() now returns a valid pointer
if the VR runtime was initialized. This is different
from existing behavior where getHMD returned NULL until
a bgfx::reset(... BGFX_RESET_HMD) was issued. Applications
must now check HMD::flags for the current state of the VR
runtime. The following code has the code change required:

`const bgfx::HMD* hmd = bgfx::getHMD()
if (NULL != hmd)`
becomes:
`const bgfx::HMD* hmd = bgfx::getHMD()
if (NULL != hmd && 0 != (hmd->flags & BGFX_HMD_RENDRERING))
{
	// rendering logic
}`

See the updated examples for details.

This allows applications to create the appropriately
sized back buffer for the HMD device by using the new device
resolution fields HMD::deviceHeight and HMD::deviceWidth.
These values report the pixel resolution of the attached
HMD hardware.

This also allows applications to query the reported HMD
resolution immediately after bgfx::init. This prevents
the device from being cycled which generates rendring
artifacts on startup - namely flashing back to a black
screen and reseting the Health+Warning disaply.

This involves initialization the ovrHmd device on
initialization, but deferring rendering until
postReset has been called. This adds an addiional
memory overhead of 32k to builds defining BGFX_CONFIG_USE_OVR.
The overhead for current builds is ~1.9MB for calls to
ovr_Initialize, so the additional overhead is pretty
trivial (+1.8%)
2015-06-03 15:39:09 -07:00
Branimir Karadžić
ff01992cb7 Refactored uniform types. 2015-05-28 15:27:00 -07:00
Branimir Karadžić
57cfeffb8d Rebuilt shaders. 2015-04-11 18:18:43 -07:00
Branimir Karadžić
c7eb016ae0 Rebuilt shaders. 2015-04-10 21:09:46 -07:00
Mike Popoloski
5f4bd7700e Recompiling shaders. Shouldn't have any effect on runtime behavior. 2015-04-10 22:49:39 -04:00
Branimir Karadžić
584baba7d7 Rebuilt embedded shaders. 2015-04-02 23:36:53 -07:00
Branimir Karadžić
a34e6e7965 Fixed VS2015 warnings. 2015-03-29 11:47:32 -07:00
Branimir Karadžić
13ac805085 Cleanup. 2015-02-16 21:58:13 -08:00
Branimir Karadžić
ff7f967c1b Removed _BIT suffix from BGFX_CLEAR_* flags. 2015-01-10 21:39:45 -08:00
Branimir Karadžić
649d7f74d2 Updated copyright year. 2015-01-02 14:43:11 -08:00
Branimir Karadžić
c25dd466be Updated copyright year. 2015-01-01 15:04:46 -08:00
Branimir Karadžić
878cbd41bd shaderc: Added shader strip. 2014-12-05 20:28:15 -08:00
Branimir Karadžić
a2153729be Added HMD recenter support. Updated examples to support HMD. 2014-11-02 00:06:18 -07:00
Branimir Karadžić
208a348ab2 Fixed compile errors. Added default part of view debug name. Added example how to use view debug name. 2014-10-25 18:07:51 -07:00
Branimir Karadžić
4a1a31b538 Updated glsl-optimizer. 2014-10-11 12:32:43 -07:00
Branimir Karadžić
eec4ae9847 Fixing paths. 2014-09-10 21:48:08 -07:00
bkaradzic
931d7f3196 Fixed clang warning. 2014-08-27 20:10:39 -07:00
Branimir Karadžić
66890595b9 Added serialization for vertex decl attribute enums. Binary format changes. Rebuilt all meshes and shaders. 2014-08-17 17:20:15 -07:00
Branimir Karadžić
e782f2f873 Fixed preprocessor bug that trucnates macro arguments to first character when concatenating them. 2014-07-28 20:15:01 -07:00
Branimir Karadžić
02e549bfec Moved fpumath to bx. 2014-05-26 19:31:37 -07:00
Branimir Karadžić
bba2ef8031 Added predefined uniforms for inverted view/proj/viewproj matrices.
shaderc: Added raw shader support.
shaderc: Fixed uniform types.
2014-05-10 20:51:54 -07:00
Branimir Karadžić
ac925b00c8 Cleanup. 2014-05-03 15:18:28 -07:00
Branimir Karadžić
9970637bb4 Fixed 02-metaballs. 2014-05-01 10:09:47 -07:00
Branimir Karadžić
bc36c29f2a Added ability to retrieve uniforms used by shader. 2014-04-15 19:10:56 -07:00
Branimir Karadžić
f436f79c10 Simplified API, removed difference between vertex and fragment shaders. 2014-03-29 19:42:57 -07:00
Branimir Karadžić
6afa55381a Updated glsl-optimizer. 2014-03-29 16:26:01 -07:00
Branimir Karadžić
771909c988 Fixed issue #74. 2014-02-13 22:13:19 -08:00
Branimir Karadžić
557dcef3dd Updated glsl-optimizer. 2014-02-10 23:06:13 -08:00
Branimir Karadžić
e7b42f13c6 Updated copyright year. 2014-02-10 22:18:39 -08:00
Branimir Karadžić
9ff1d0c513 Updated copyright year. 2014-02-10 22:07:04 -08:00
bkaradzic
0ed2edc7b3 Updated shaders and README. 2014-01-13 20:17:56 -08:00
bkaradzic
48c477d0ac Updated screenshots. 2013-10-23 22:48:16 -07:00
bkaradzic
4c4c2eb5cb examples-common: Reogranized sources. Added command interpreter and input bindings support. 2013-08-07 21:45:56 -07:00
bkaradzic
538796302f iOS: Fixed aspect ratio in examples. 2013-07-22 21:24:20 -07:00
bkaradzic
18f2e82362 Added include path to common. Renamed math to fpumath. 2013-05-23 22:07:54 -07:00
bkaradzic
383efbed99 Fixed shader to output alpha 1.0. 2013-05-20 20:45:22 -07:00
bkaradzic
0f3a4768ba Updated 02-metaballs to demonstrate use of embedded shaders. 2013-05-20 20:10:52 -07:00
bkaradzic
bed490bd53 Cleanup. 2013-05-18 22:12:40 -07:00
bkaradzic
3601c74e92 Fixed reset flag in examples. 2013-05-08 22:57:54 -07:00
bkaradzic
fb7fd32f24 Run all samples with vsync on by default. 2013-04-27 18:47:18 -07:00
bkaradzic
3686725fef Fixing update time. 2013-04-27 12:43:18 -07:00
bkaradzic
4ab0874d53 Changed u_model uniform to array. 2013-04-06 14:16:38 -07:00
bkaradzic
6582276e3e Fixed L4 warnings. 2013-03-25 21:13:54 -07:00
bkaradzic
ea49146ea1 Fixing eols. 2013-03-17 16:10:50 -07:00
bkaradzic
35d7d2ff1b Added F8 as MSAA toggle in examples. 2013-02-21 22:05:33 -08:00
bkaradzic
8e0e21f40d Normalized line endings. 2013-02-21 21:07:31 -08:00
bkaradzic
c3667bad05 WIP support for key/mouse events in examples. 2013-01-16 22:44:51 -08:00
bkaradzic
43ce51b8ec Updated year in copyright notice. 2013-01-13 10:57:24 -08:00
bkaradzic
d6e4a57cf2 Moving window creation to examples/common. 2013-01-13 10:47:30 -08:00
bkaradzic
d4cd0ea4fa Added 07-callback example. 2012-12-30 20:52:47 -08:00