port from perforce

This commit is contained in:
2026-04-18 22:31:51 +02:00
commit 8d0ab5b7cc
8409 changed files with 3972376 additions and 0 deletions

160
evoke-64k/ev10/camera.h Normal file
View File

@@ -0,0 +1,160 @@
#pragma once
#include <d3dx9.h>
const int g_iCamTickFactor= 2 << 14;
#ifdef CAMERATESTER
#include "TextFileReader.h"
#include "StringHelper.h"
#include "EditorHelp.h"
#include <fstream>
#include <sstream>
#include <cstdio>
#define CAMERAEDIT
#endif
struct SCameraDefinition
{
D3DXVECTOR3 m_vec3Pos;
D3DXVECTOR3 m_vec3Rot;
float m_fDOF;
float m_fFOV;
int m_iDemoTime;
};
struct SCameraKey
{
int m_dwTime;
int m_dwDemoTimeStart;
int m_dwDemoTimeSpeed;
float m_fPos[ 3 ];
float m_fRot[ 3 ];
float m_fDOF;
float m_fFOV;
float m_fTangentOffset[ 2 ];
#ifdef CAMERATESTER
void ToString( std::string& strData );
void FromString( std::string& strData );
void Reset();
void FromCameraDefinition( SCameraDefinition& camDef );
void ToCameraDefinition( SCameraDefinition& camDef );
#endif CAMERATESTER
};
struct SActCamData
{
SCameraKey* m_pCamData;
int m_iMaxStepCount;
};
void InterpolateCamLocal( SActCamData* pData, int iIndex, int dwLocalTime, SCameraDefinition& Out );
int CalcCamGlobal( SActCamData* pData, int dwTime, SCameraDefinition& Out );
#ifndef CAMERATESTER
void PreparePlayCam();
void PlayCam( int iRealTimePassed, SCameraDefinition& CamData );
#endif
/*
void drawLine( D3DXVECTOR3& pvec3Pos1,
D3DXVECTOR3& pvec3Pos2,
DWORD dwColor )
{
//g_pMatrixStack->LoadIdentity();
//g_d3d_device->SetTransform( D3DTS_WORLD, g_pMatrixStack->GetTop() );
g_d3d_device->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TFACTOR );
g_d3d_device->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_SELECTARG1 );
g_d3d_device->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_DISABLE );
g_d3d_device->SetTextureStageState( 1, D3DTSS_COLOROP, D3DTOP_DISABLE );
g_d3d_device->SetRenderState( D3DRS_FOGENABLE, FALSE );
g_d3d_device->SetRenderState( D3DRS_ZENABLE, FALSE );
g_d3d_device->SetRenderState( D3DRS_LIGHTING, FALSE );
SVertex v[ 3 ];
g_d3d_device->SetRenderState( D3DRS_TEXTUREFACTOR, dwColor );
v[ 0 ].x= pvec3Pos1.x;
v[ 0 ].y= pvec3Pos1.y;
v[ 0 ].z= pvec3Pos1.z;
v[ 1 ].x= pvec3Pos2.x;
v[ 1 ].y= pvec3Pos2.y;
v[ 1 ].z= pvec3Pos2.z;
g_d3d_device->DrawPrimitiveUP( D3DPT_LINESTRIP,
1,
v,
sizeof( SVertex ));
g_d3d_device->SetRenderState( D3DRS_FOGENABLE, TRUE );
g_d3d_device->SetRenderState( D3DRS_ZENABLE, TRUE );
}*/
#ifdef CAMERATESTER
const int c_iCamCount= 64;
int GetCamTrackCount();
std::vector<SCameraKey>& GetCamTrack( int iIndex );
std::vector<SCameraKey>& GetEditTrack();
void ReadCameraTrack( char* pcFileName, int iTrack );
void WriteCameraTrack( char* pcFileName, int iTrack );
void ReadCamera();
void WriteCameraHeader();
void ReadCameraAll();
void WriteCameraAll();
void DrawEditOutput();
void Save();
void Reload();
void MakeTimeContinous();
void DeleteTrack();
void MoveTrack();
void ClearTrack();
void AddTrack();
void LockTrack();
void ChangeTrack();
void ChangeStep();
void EditToStep();
void VerifyStep();
void ChangeTangent( int iCount );
void ChangeStart();
void ChangeSpeed();
void ChangeLength();
void SetStep();
void RemoveStep();
void SetStepCamera();
void HomeCam();
void TickFreeCam( int iTime );
void ChangeStepKeys( int iPrior, int iNext );
void InterpolateCamGlobal( int iRealTimePassed, SCameraDefinition& CamData );
void DrawCameraDebugOutput();
int FillDataFromEdit(SActCamData& data);
int GetCurrentTrackStartTime();
void ResetRealTime();
void CalcCamTrackStarts();
void SetStepFromTime();
int CalculateRealTime();
int CalculateDemoTime();
bool IsFreeCam();
int GetRealTime();
#endif