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ć
9d91d3bbbc Reversed instance data bindings. Issue #309. 2015-04-15 10:37:00 -07:00
Branimir Karadžić
a34e6e7965 Fixed VS2015 warnings. 2015-03-29 11:47:32 -07:00
Branimir Karadžić
f6fe2de941 Cleanup. 2015-01-20 21:41:51 -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ć
584a32038f Cleanup. 2014-12-04 19:56:19 -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ć
eec4ae9847 Fixing paths. 2014-09-10 21:48:08 -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ć
85c5172a29 Changed GLES macro to use version number. 2014-03-29 23:12:15 -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ć
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
48c477d0ac Updated screenshots. 2013-10-23 22:48:16 -07:00
bkaradzic
f440f160f9 Exposed renderer capabilities. 2013-10-10 18:29:57 -07:00
bkaradzic
cacff49d99 Cleanup. 2013-09-08 23:14:34 -07:00
bkaradzic
983f1e6f9a GL: When using ARB_texture_swizzle don't swizzle image to BGRA8. 2013-09-08 23:03:14 -07:00
bkaradzic
4c4c2eb5cb examples-common: Reogranized sources. Added command interpreter and input bindings support. 2013-08-07 21:45:56 -07:00
bkaradzic
640c61fe45 Cleanup. 2013-08-06 21:09:02 -07:00
bkaradzic
b1901ae776 Fixed instancing. 2013-07-25 23:13:48 -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
6752a421a2 Fixed LOD shader. 2013-05-18 22:55:43 -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
9780828b98 Fixing update time. 2013-04-27 00:11:23 -07:00
bkaradzic
507af8c9f1 Fixed shaderc crash when $in/output lines have comments. 2013-04-11 20:36:28 -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
5fe1132b1c Cleanup. 2013-02-23 20:43:31 -08:00
bkaradzic
e0eca362ad Fixed DX9 lack of non-normalized UINT16 vertex decl type. 2013-02-23 19:02:51 -08: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
cc69b20e14 Fixed 'unexpected EOL' when building shaders. Added error message for missing shader entry point. 2013-02-14 17:27:10 -08:00
bkaradzic
f78a18c9b7 Fixed resource leaks in examples. 2013-01-28 22:08:16 -08:00
bkaradzic
cedfee113d Fixed geometryc arguments. 2013-01-24 22:22:04 -08:00
bkaradzic
f829e38654 Undo screenshot removal. 2013-01-20 12:53:40 -08:00
bkaradzic
116efe21b0 Rebuilt shaders. 2013-01-20 12:50:59 -08:00
bkaradzic
c26f8f4718 Added support for LATC/3DC texture compression. 2013-01-20 12:47:29 -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
7ec5de1ad1 Added texture update example. 2013-01-06 17:53:45 -08:00