![]() |
torcs - 1.2.2 | ![]() |
00001 /*************************************************************************** 00002 00003 file : grcar.h 00004 created : Mon Aug 21 18:21:15 CEST 2000 00005 copyright : (C) 2000 by Eric Espie 00006 email : torcs@free.fr 00007 version : $Id: grcar.h,v 1.14 2003/11/08 16:37:18 torcs Exp $ 00008 00009 ***************************************************************************/ 00010 00011 /*************************************************************************** 00012 * * 00013 * This program is free software; you can redistribute it and/or modify * 00014 * it under the terms of the GNU General Public License as published by * 00015 * the Free Software Foundation; either version 2 of the License, or * 00016 * (at your option) any later version. * 00017 * * 00018 ***************************************************************************/ 00019 00020 00021 #ifndef _GRCAR_H_ 00022 #define _GRCAR_H_ 00023 00024 typedef struct 00025 { 00026 ssgSimpleState *texture; 00027 GLuint CounterList; 00028 GLuint needleList; 00029 tdble needleXCenter, needleYCenter; 00030 tdble digitXCenter, digitYCenter; 00031 tdble minValue, maxValue; 00032 tdble minAngle, maxAngle; 00033 tdble *monitored; 00034 tdble prevVal; 00035 tdble rawPrev; 00036 } tgrCarInstrument; 00037 00038 00039 typedef struct 00040 { 00041 float iconColor[4]; 00042 ssgTransform *carTransform; 00043 ssgSelector *LODSelector; 00044 int LODSelectMask[32]; 00045 float LODThreshold[32]; 00046 ssgSelector *driverSelector; 00047 ssgStateSelector *envSelector; 00048 ssgTransform *wheelPos[4]; 00049 ssgTransform *wheelRot[4]; 00050 ssgColourArray *brkColor[4]; 00051 ssgSelector *wheelselector[4]; 00052 ssgState *wheelTexture; 00053 ssgVtxTableShadow *shadowBase; 00054 ssgVtxTableShadow *shadowCurr; 00055 ssgBranch *shadowAnchor; 00056 tgrSkidmarks *skidmarks; 00057 sgMat4 carPos; 00058 tgrCarInstrument instrument[2]; 00059 tdble distFromStart; 00060 tdble envAngle; 00061 int fireCount; 00062 tdble px; 00063 tdble py; 00064 tdble sx; 00065 tdble sy; 00066 } tgrCarInfo; 00067 00068 extern tgrCarInfo *grCarInfo; 00069 00070 extern void grInitCar(tCarElt *car); 00071 extern void grDrawCar(tCarElt*, tCarElt *, int, int, double curTime, class cGrPerspCamera *curCam); 00072 extern void grDrawShadow(tCarElt *car); 00073 extern void grInitShadow(tCarElt *car); 00074 extern tdble grGetDistToStart(tCarElt *car); 00075 extern void grInitCommonState(void); 00076 00077 #endif /* _GRCAR_H_ */ 00078 00079 00080