Seperated ViewRect in HMD results in Black Screen

Using the SimpleHMD Plugin as an example I need to separate the ViewRect for each eye into a configuration in which they are on different sides of the screen. However when I separate the X value in AdjustViewRect under the SimpleHMD it results in a black screen. Here’s an example of what I need.

That being said here’s some example code in the SimpleHMD plugin.
void FSimpleHMD::AdjustViewRect(EStereoscopicPass StereoPass, int32& X, int32& Y, uint32& SizeX, uint32& SizeY) const
{
SizeX = SizeX / 4;
if( StereoPass == eSSP_RIGHT_EYE )
{
X += SizeX + 1;
}
}

This results in:

However the code:
void FSimpleHMD::AdjustViewRect(EStereoscopicPass StereoPass, int32& X, int32& Y, uint32& SizeX, uint32& SizeY) const
{
SizeX = SizeX / 4;
if( StereoPass == eSSP_RIGHT_EYE )
{
X += SizeX;
}
}

Results in:

For whatever reason adding a gap of even one pixel between the left and right passes results in a blank screen. I know this isn’t typical since none of the other HMD’s override AdjustViewRect. I’m a little lost as to what to do about this issue and was wondering if anyone could provide a solution. Thanks!

I actually found in GameViewportClient.cpp where the buffer is getting cleared because it thinks the View isn’t covering the entire bounding rectangle. It gets cleared on line 1075. I’ll try to come up with a fix and post on GitHub.

I found the answer to my own problem and created a pull request to the master branch of Github here: https://github.com/EpicGames/UnrealEngine/pull/2124