Merge branch 'master' of github.com:bkaradzic/bgfx

This commit is contained in:
Branimir Karadžić 2015-06-04 22:26:09 -07:00
commit ad4b2f134f
4 changed files with 28 additions and 4 deletions

View file

@ -109,6 +109,16 @@ struct Keyboard
return decodeKeyState(m_key[_key], *_modifiers);
}
uint8_t getModifiersState()
{
uint8_t modifiers = 0;
for (uint32_t ii = 0; ii < entry::Key::Count; ++ii)
{
modifiers |= (m_key[ii]>>16)&0xff;
}
return modifiers;
}
void pushChar(uint8_t _len, const uint8_t _char[4])
{
for (uint32_t len = m_ring.reserve(4)
@ -314,6 +324,11 @@ bool inputGetKeyState(entry::Key::Enum _key, uint8_t* _modifiers)
return s_input->m_keyboard.getKeyState(_key, _modifiers);
}
uint8_t inputGetModifiersState()
{
return s_input->m_keyboard.getModifiersState();
}
void inputChar(uint8_t _len, const uint8_t _char[4])
{
s_input->m_keyboard.pushChar(_len, _char);

View file

@ -42,6 +42,9 @@ void inputSetKeyState(entry::Key::Enum _key, uint8_t _modifiers, bool _down);
///
bool inputGetKeyState(entry::Key::Enum _key, uint8_t* _modifiers = NULL);
///
uint8_t inputGetModifiersState();
/// Adds single UTF-8 encoded character into input buffer.
void inputChar(uint8_t _len, const uint8_t _char[4]);

View file

@ -9,6 +9,12 @@
namespace bgfx
{
#if OVR_VERSION <= OVR_VERSION_050
static const int s_eyeBuffer = 100;
#else
static const int s_eyeBuffer = 8;
#endif // OVR_VERSION...
OVR::OVR()
: m_hmd(NULL)
, m_isenabled(false)
@ -50,7 +56,7 @@ namespace bgfx
ovrSizei sizeL = ovrHmd_GetFovTextureSize(m_hmd, ovrEye_Left, m_hmd->DefaultEyeFov[0], 1.0f);
ovrSizei sizeR = ovrHmd_GetFovTextureSize(m_hmd, ovrEye_Right, m_hmd->DefaultEyeFov[1], 1.0f);
m_rtSize.w = sizeL.w + sizeR.w;
m_rtSize.w = sizeL.w + sizeR.w + s_eyeBuffer;
m_rtSize.h = bx::uint32_max(sizeL.h, sizeR.h);
m_warning = true;
}
@ -169,12 +175,12 @@ ovrError:
ovrRecti rect;
rect.Pos.x = 0;
rect.Pos.y = 0;
rect.Size.w = m_rtSize.w/2;
rect.Size.w = (m_rtSize.w - s_eyeBuffer)/2;
rect.Size.h = m_rtSize.h;
m_texture[0].Header.RenderViewport = rect;
rect.Pos.x += rect.Size.w;
rect.Pos.x += rect.Size.w + s_eyeBuffer;
m_texture[1].Header.RenderViewport = rect;
m_timing = ovrHmd_BeginFrame(m_hmd, 0);

View file

@ -13,7 +13,7 @@
# include <OVR_Version.h>
# define OVR_VERSION_(_a, _b, _c) (_a * 10000 + _b * 100 + _c)
# define OVR_VERSION OVR_VERSION_(OVR_MAJOR_VERSION, OVR_MINOR_VERSION, OVR_BUILD_VERSION)
# define OVR_VERSION OVR_VERSION_(OVR_PRODUCT_VERSION, OVR_MAJOR_VERSION, OVR_MINOR_VERSION)
# define OVR_VERSION_042 OVR_VERSION_(0, 4, 2)
# define OVR_VERSION_043 OVR_VERSION_(0, 4, 3)
# define OVR_VERSION_044 OVR_VERSION_(0, 4, 4)