75 PFNGLMULTITEXCOORD2FARBPROC glMultiTexCoord2fARB = NULL;
76 PFNGLMULTITEXCOORD2FVARBPROC glMultiTexCoord2fvARB = NULL;
77 PFNGLACTIVETEXTUREARBPROC glActiveTextureARB = NULL;
78 PFNGLCLIENTACTIVETEXTUREARBPROC glClientActiveTextureARB = NULL;
91 char *extensionStr = (
char*)glGetString(GL_EXTENSIONS);
92 if (extensionStr == NULL)
95 if (strstr(extensionStr,
"GL_ARB_multitexture")) {
100 glMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC) wglGetProcAddress(
"glMultiTexCoord2fARB");
101 glActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC) wglGetProcAddress(
"glActiveTextureARB");
102 glClientActiveTextureARB = (PFNGLCLIENTACTIVETEXTUREARBPROC) wglGetProcAddress(
"glClientActiveTextureARB");
103 glMultiTexCoord2fvARB = (PFNGLMULTITEXCOORD2FVARBPROC) wglGetProcAddress(
"glMultiTexCoord2fvARB");
229 initView(
int x,
int y,
int width,
int height,
int ,
void *screen)
232 const int BUFSIZE = 1024;
332 glDepthFunc(GL_LEQUAL);
333 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
349 const int IDXSIZE = 16;
355 const int BUFSIZE = 1024;
372 for (i = 0; i < s->_ncars; i++) {
381 for (i = 0; i < s->_ncars; i++) {
384 hdle = elt->_paramsHandle;
385 snprintf(idx, IDXSIZE,
"Robots/index/%d", elt->_driverIndex);
420 GfOut(
"-- shutdownCars\n");
431 ssgDeRefDelete(
grCarInfo[i].envSelector);
433 ssgDeRefDelete(
grCarInfo[i].wheelTexture);
434 if (
grCarInfo[i].driverSelectorinsg ==
false) {
int initView(int x, int y, int width, int height, int, void *screen)
int initCars(tSituation *s)
void grShutdownScene(void)
static void grNextCar(void *)
#define GR_ATT_WHEELRENDERING_DETAILED
double currentTime
current time in sec since the beginning of the simulation
static void grSelectCamera(void *vp)
void grInitShadow(tCarElt *car)
void * GfParmReadFile(const char *file, int mode)
Read parameter set from file and return handle to parameter set.
cars situation used to inform the GUI and the drivers
static void grSwitchMirror(void *)
#define GFPARM_RMODE_STD
if handle already openned return it
tCarElt ** cars
list of cars
void grInitSkidmarks(tCarElt *car)
initialize the skidmak structure for a car
void selectCamera(long cam)
void grInitCarlight(int index)
void GfParmReleaseHandle(void *parmHandle)
Release given parameter set handle parmHandle.
void GfuiAddKey(void *scr, unsigned char key, const char *descr, void *userData, tfuiCallback onKeyPressed, tfuiCallback onKeyReleased)
Add a Keyboard callback to a screen.
void grInitSound(tSituation *s, int ncars)
int initTrack(tTrack *track)
void grShutdownSound(int ncars)
EWheelDetail grUseDetailedWheels
int GfParmWriteFile(const char *file, void *parmHandle, const char *name)
Write parameter set into file.
void update(tSituation *s, float Fps)
static class cGrScreen * grGetcurrentScreen(void)
const char * GfParmGetStr(void *parmHandle, const char *path, const char *key, const char *deflt)
Get a string parameter from the parameter set handle.
The Gaming Framework API (client part).
void grShudownCarlight(void)
void grInitSmoke(int index)
void initCams(tSituation *s)
#define GR_ATT_WHEELRENDERING_SIMPLE
void grInitCar(tCarElt *car)
int refresh(tSituation *s)
void grCustomizePits(void)
void grInitCommonState(void)
void grShutdownSmoke()
remove the smoke information for a car
static void grSplitScreen(void *vp)
ssgSelector * driverSelector
void grUpdateSmoke(double t)
update if necessary the smoke for a car
float tdble
Floating point type used in TORCS.
void setCurrentCar(tCarElt *newCurCar)
#define GR_ATT_WHEELRENDERING
tMouseInfo * GfuiMouseInfo(void)
Get the mouse information (position and buttons)
static float grMouseRatioY
Graphic Module Interface Definition.
void grShutdownBoardCar(void)
float grRefreshSound(tSituation *s, cGrCamera *camera)
void GfuiAddSKey(void *scr, int key, const char *descr, void *userData, tfuiCallback onKeyPressed, tfuiCallback onKeyReleased)
Add a Special Keyboard shortcut to the screen.
int GfParmSetNum(void *handle, const char *path, const char *key, const char *unit, tdble val)
Set a numerical parameter in the parameter set handle.
cGrCamera * getCurCamera(void)
static void grSelectTrackMap(void *)
void selectBoard(long brd)
tdble GfParmGetNum(void *handle, const char *path, const char *key, const char *unit, tdble deflt)
Get a numerical parameter from the parameter set handle.
double GfTimeClock(void)
Get the time in seconds.
void activate(int x, int y, int w, int h)
int track(tModInfo *modInfo)
static void grPrevCar(void *)
void grShutdownSkidmarks(void)
remove the skidmarks information for a car
int grLoadScene(tTrack *track)
static void grSetZoom(void *vp)
void grShutdownState(void)
class cGrScreen * grScreens[GR_NB_MAX_SCREEN]
static void grAdaptScreenSize(void)
static void grSelectBoard(void *vp)
#define GR_ATT_NB_SCREENS
int GetSingleTextureMode(void)
#define GFPARM_RMODE_CREAT
Create the file if doesn't exist.
static float grMouseRatioX
int isInScreen(int x, int y)