60 lines
1.3 KiB
C
60 lines
1.3 KiB
C
#ifndef LIGHT_ST_H
|
|
#define LIGHT_ST_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif /* __cplusplus */
|
|
|
|
#include "GEO.h"
|
|
|
|
/* For DLL using these function :*/
|
|
#include "cpa_expt.h"
|
|
|
|
#include "POS.h"
|
|
|
|
typedef struct GLI_tdstZBufferForLight_
|
|
{
|
|
long lSizeX;
|
|
long lSizeY;
|
|
/* Projection x = X * coefX / Z . y = Y * CoefY / Z;*/
|
|
float fCoefX;
|
|
float fCoefY;
|
|
float *p_stZBufferMap;
|
|
float *p_stMiddleZBufferMap;
|
|
} GLI_tdstZBufferForLight;
|
|
|
|
typedef struct GLI_tdstLight_
|
|
{
|
|
long b_lOnOff ;
|
|
long bThisLightIsZBuffered;
|
|
long lTypeOfLight ;
|
|
MTH_tdxReal xFar,xNear;
|
|
/* for hotspot.*/
|
|
MTH_tdxReal xLittleAlpha,xBigAlpha;
|
|
MTH_tdxReal xLittleTangent,xBigTangent;
|
|
POS_tdstCompletePosition stMatrix ;
|
|
GLI_tdstZBufferForLight stZBuffer;
|
|
GEO_tdstColor stColor ;
|
|
|
|
unsigned char bValid;
|
|
unsigned char ucObjectLighted;
|
|
unsigned char bIsPainting;
|
|
unsigned char ucIsAlpha; /* 0: Normal (RGB&A) 1: A Only 2: RGB Only */
|
|
MTH3D_tdstVector xInter_Min_Pos;
|
|
MTH3D_tdstVector xExter_Min_Pos;
|
|
MTH3D_tdstVector xInter_Max_Pos;
|
|
MTH3D_tdstVector xExter_Max_Pos;
|
|
MTH3D_tdstVector xCenterBox;
|
|
MTH_tdxReal xRadius;
|
|
MTH_tdxReal xIntensity_Min;
|
|
MTH_tdxReal xIntensity_Max;
|
|
GEO_tdstColor stBackgroundColor;
|
|
}
|
|
GLI_tdstLight;
|
|
|
|
|
|
#ifdef __cplusplus
|
|
};
|
|
#endif /* __cplusplus */
|
|
#endif /* LIGHT_H*/
|