x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Please Help me configure rendering. :(

Hi.

I'm getting different behaviours between Editor>Simulate and Editor>Play:

alt text

My thoughts are about probably the issue being caused by the different cameras used on each condition since the play function is being rendered trough a custom "Camera Manager Class" since it's a topdown game.

Is there any flag to this component use the own Level PostProcVolumes settings? Looks like it simply ignores any change made on the leveol settings or on the postproc volume that I made based on the answers given to similar questions.

Here is the code from .h:

 #pragma once
 
 #include "Camera/PlayerCameraManager.h"
 #include "VCameraManager.generated.h"
 
 /**
  * 
  */
 UCLASS()
 class AVCameraManager : public APlayerCameraManager
 {
     GENERATED_UCLASS_BODY()    
     virtual void UpdateViewTarget(FTViewTarget& OutVT, float DeltaTime) override;        
 };

and my .cpp

 #include "VCameraManager.h"
 #include "VHumanPlayerController.h"
 
 
 AVCameraManager::AVCameraManager(const class FPostConstructInitializeProperties& PCIP) : Super(PCIP)
 {
     CameraStyle = "GameIso";
     FreeCamDistance = 350.0f;
 }
 
 void AVCameraManager::UpdateViewTarget(FTViewTarget& OutVT, float DeltaTime)
 {
     
     // Don't update outgoing viewtarget during an interpolation
     if ((PendingViewTarget.Target != NULL) && BlendParams.bLockOutgoing && OutVT.Equal(ViewTarget))
     {
         return;
     }
 
     // store previous POV, in case we need it later
     FMinimalViewInfo OrigPOV = OutVT.POV;
 
     //@TODO: CAMERA: Should probably reset the view target POV fully here
     OutVT.POV.FOV = DefaultFOV;
     OutVT.POV.OrthoWidth = DefaultOrthoWidth;
     OutVT.POV.bConstrainAspectRatio = false;
     OutVT.POV.ProjectionMode = bIsOrthographic ? ECameraProjectionMode::Orthographic : ECameraProjectionMode::Perspective;
     OutVT.POV.PostProcessBlendWeight = 1.0f;
 
     bool bDoNotApplyModifiers = false;
 
     if (ACameraActor* CamActor = Cast<ACameraActor>(OutVT.Target))
     {
         // Viewing through a camera actor.
         CamActor->CameraComponent->GetCameraView(DeltaTime, OutVT.POV);
     }
     else
     {
         static const FName NAME_Fixed = FName(TEXT("Fixed"));
         static const FName NAME_GameplayIsometric = FName(TEXT("GameIso"));
         static const FName NAME_FreeCam = FName(TEXT("FreeCam"));
         static const FName NAME_FreeCam_Default = FName(TEXT("FreeCam_Default"));
 
         if (CameraStyle == NAME_Fixed)
         {
             // do not update, keep previous camera position by restoring
             // saved POV, in case CalcCamera changes it but still returns false
             OutVT.POV = OrigPOV;
 
             // don't apply modifiers when using this debug camera mode
             bDoNotApplyModifiers = true;
         }
         else if (CameraStyle == NAME_GameplayIsometric || CameraStyle == NAME_FreeCam || CameraStyle == NAME_FreeCam_Default)
         {
             // Simple third person view implementation
             FVector Loc = OutVT.Target->GetActorLocation();
             FRotator Rotator = OutVT.Target->GetActorRotation();
 
             if (OutVT.Target == PCOwner)
             {
                 Loc = PCOwner->GetFocalLocation();
             }
 
             if (CameraStyle == NAME_FreeCam || CameraStyle == NAME_FreeCam_Default)
             {
                 Rotator = PCOwner->GetControlRotation();                
             }
 
             if (CameraStyle == NAME_GameplayIsometric)
             {
                 Rotator.Pitch = -41.0f;
                 Rotator.Yaw = Cast<AVHumanPlayerController>(PCOwner)->CameraYaw;
                 
                 //Loc += FRotationMatrix(Rotator).TransformVector(FreeCamOffset);
                 Loc += FVector(.0f, .0f, 50.0f);
 
                 FVector Pos = Loc - Rotator.Vector() * 350.0f;// FreeCamDistance;
                 
                 //UVTypeandHelpers::LogCheckFloat("FreeCamDistance", FreeCamDistance);
                 
                 
                 FCollisionQueryParams BoxParams(NAME_FreeCam, false, this);
                 FHitResult Result;
 
                 //GetWorld()->SweepSingle(Result, Loc, Pos, FQuat::Identity, ECC_Camera, FCollisionShape::MakeBox(FVector(12.f)), BoxParams);
                 OutVT.POV.Location = (Result.GetActor() == NULL) ? Pos : Result.Location;
                 OutVT.POV.Rotation = Rotator;
 
                 // don't apply modifiers when using this debug camera mode
                 bDoNotApplyModifiers = true;
             }
                 
         }
         //else if (CameraStyle == NAME_FirstPerson)
         //{
         //    // Simple first person, view through viewtarget's 'eyes'
         //    OutVT.Target->GetActorEyesViewPoint(OutVT.POV.Location, OutVT.POV.Rotation);
 
         //    // don't apply modifiers when using this debug camera mode
         //    bDoNotApplyModifiers = true;
         //}
         else
         {
             UpdateViewTargetInternal(OutVT, DeltaTime);
         }
     }
 
     if (!bDoNotApplyModifiers || bAlwaysApplyModifiers)
     {
         // Apply camera modifiers at the end (view shakes for example)
         ApplyCameraModifiers(DeltaTime, OutVT.POV);
     }
 
 
     // Synchronize the actor with the view target results
     SetActorLocation(OutVT.POV.Location, false);
     SetActorRotation(OutVT.POV.Rotation);
 
 }

Thank You!

Product Version: Not Selected
Tags:
difbehaviours.jpg (169.3 kB)
more ▼

asked Sep 25 '14 at 07:03 PM in Rendering

avatar image

creasso
210 9 18 33

(comments are locked)
10|2000 characters needed characters left

1 answer: sort voted first

Nothing regarding configuration. Tunning engine specs in the own viewport settings I got full resolution again.

Thank you (solved).

more ▼

answered Oct 21 '14 at 03:01 PM

avatar image

creasso
210 9 18 33

(comments are locked)
10|2000 characters needed characters left
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question