Files
firestorm/Gameleap/code/mw4/Tools/ERF Deluxe/InfiniteLightProps.cpp
T
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

79 lines
1.9 KiB
C++

// InfiniteLightProps.cpp : implementation file
//
#include "stdafx.h"
#include "mfc gos.h"
#include "InfiniteLightProps.h"
/////////////////////////////////////////////////////////////////////////////
// CInfiniteLightProps dialog
CInfiniteLightProps::CInfiniteLightProps(CWnd* pParent /*=NULL*/)
: CDialog(CInfiniteLightProps::IDD, pParent)
{
//{{AFX_DATA_INIT(CInfiniteLightProps)
m_Alpha = 0.0f;
m_Blue = 0.0f;
m_Green = 0.0f;
m_Intensity = 0.0f;
m_LocX = 0.0f;
m_LocY = 0.0f;
m_LocZ = 0.0f;
m_Red = 0.0f;
//}}AFX_DATA_INIT
}
void CInfiniteLightProps::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CInfiniteLightProps)
DDX_Text(pDX, IDC_ALPHA, m_Alpha);
DDX_Text(pDX, IDC_BLUE, m_Blue);
DDX_Text(pDX, IDC_GREEN, m_Green);
DDX_Text(pDX, IDC_INTENSITY, m_Intensity);
DDX_Text(pDX, IDC_LOCX, m_LocX);
DDX_Text(pDX, IDC_LOCY, m_LocY);
DDX_Text(pDX, IDC_LOCZ, m_LocZ);
DDX_Text(pDX, IDC_RED, m_Red);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CInfiniteLightProps, CDialog)
//{{AFX_MSG_MAP(CInfiniteLightProps)
// NOTE: the ClassWizard will add message map macros here
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CInfiniteLightProps message handlers
void CInfiniteLightProps::SetData(MLRInfiniteLight *light)
{
Light=*light;
m_Intensity=Light.GetIntensity();
Light.GetColor(m_Red,m_Green,m_Blue);
UnitVector3D loc;
Light.GetInWorldDirection(loc);
m_LocX=loc.x;
m_LocY=loc.y;
m_LocZ=loc.z;
}
MLRInfiniteLight &CInfiniteLightProps::GetData()
{
Light.SetIntensity(m_Intensity);
Light.SetColor(m_Red,m_Green,m_Blue);
Vector3D dir(m_LocX,m_LocY,m_LocZ);
Stuff::LinearMatrix4D mat(true);
mat.AlignLocalAxisToWorldVector(dir,Stuff::Z_Axis,Stuff::Y_Axis,Stuff::X_Axis);
Light.SetLightToWorldMatrix(mat);
return Light;
}