rott/kf_sources/GamePlay/Classes/CameraTextureClient.uc
2026-07-14 20:27:09 +07:00

63 lines
972 B
Ucode

class CameraTextureClient extends Info
placeable;
var() ScriptedTexture DestTexture;
var() name CameraTag;
var() float RefreshRate;
var() float FOV;
var Actor CameraActor;
//
// PostBeginPlay
//
simulated function PostBeginPlay()
{
local Actor CameraActorIt;
ForEach AllActors(class'Actor',CameraActorIt,CameraTag)
{
CameraActor = CameraActorIt;
break;
}
if(DestTexture != None)
{
DestTexture.Client = Self;
SetTimer(1.0 / RefreshRate,true);
Enable('Timer');
}
}
//
// Timer
//
simulated function Timer()
{
DestTexture.Revision++;
}
//
// RenderTexture
//
simulated event RenderTexture(ScriptedTexture Tex)
{
if(CameraActor != None)
Tex.DrawPortal(0,0,Tex.USize,Tex.VSize,CameraActor,CameraActor.Location,CameraActor.Rotation,FOV);
}
//
// Default properties
//
defaultproperties
{
bStatic=False
bAlwaysRelevant=True
bNoDelete=True
RefreshRate=60.0
FOV=60.0
}