Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
hearkengames's avatar
hearkengames
Honored Guest
8 months ago

Left eye flashing square cutout border black and afterimage

Hey there I am struggling with these issue. There's like a strobing effect on my left eye. If I close my left eye its fine. I've tried disabling instanced stereo and mobile multi view with no luck. I'm just running the demo scene with no changes. Any suggestions? I tried 5.3 and 5.5.4. I am working on meta quest 3

com oculus vrshell 20250403 002312 01

6 Replies

Replies have been turned off for this discussion
  • One detail that isn't quite visible in the video above is the the flashing region shows the perspective of a static camera that isn't tied to my head movement.

  • I’ve also tried disabling spectator mode and removing the spectator camera from the be template to see if it had anything to with it. No luck

  • I’m disabling spectator screen in a post engine callback in my game cop module. I think there’s a static function to just set the spectator screen mode directly

  • I though this was caused by spectator screen somehow. However the following additions didn't help.

    ```

    #include "MyGame/MyGamePlayerController.h"
    #include "HAL/IConsoleManager.h" // Make sure to include this header
    #include "HeadMountedDisplayTypes.h"
    #include "HeadMountedDisplayFunctionLibrary.h"
    #include "IXRTrackingSystem.h"
    #include "IHeadMountedDisplay.h"
    #include "ISpectatorScreenController.h"
    #include "DefaultSpectatorScreenController.h"
     
    #include "Misc/CoreDelegates.h"
     
    void AMyGamePlayerController::BeginPlay()
    {
        Super::BeginPlay();
        // Now that the controller is active, the XR system should be fully initialized.
        UHeadMountedDisplayFunctionLibrary::SetSpectatorScreenMode(ESpectatorScreenMode::Disabled);
     
        if (auto System = GEngine->XRSystem)
        {
            if (auto HMD = System->GetHMDDevice())
            {
                if (auto Controller = static_cast<FDefaultSpectatorScreenController*>(HMD->GetSpectatorScreenController()))
                {
                    UHeadMountedDisplayFunctionLibrary::SetSpectatorScreenMode(ESpectatorScreenMode::Disabled);
                    // Schedule the update to run on the render thread.
                    ENQUEUE_RENDER_COMMAND(FUpdateSpectatorScreenMode)(
                        [Controller](FRHICommandListImmediate& RHICmdList)
                        {
                            Controller->UpdateSpectatorScreenMode_RenderThread();
                        }
                        );
                    UE_LOG(LogTemp, Warning, TEXT("SpectatorScreenMode forced to 0"));
                    return;
                }
                UE_LOG(LogTemp, Warning, TEXT("Failed to retrieve spectator screen controller"));
                return;
            }
     
            UE_LOG(LogTemp, Warning, TEXT("Failed to retrieve spectator screen hmd"));
            return;
        }
        UE_LOG(LogTemp, Warning, TEXT("Failed to retrieve spectator system"));
    }

    ```