本文整理汇总了C++中BMPClass::loadGLTextures方法的典型用法代码示例。如果您正苦于以下问题:C++ BMPClass::loadGLTextures方法的具体用法?C++ BMPClass::loadGLTextures怎么用?C++ BMPClass::loadGLTextures使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BMPClass
的用法示例。
在下文中一共展示了BMPClass::loadGLTextures方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: LoadImages
bool LoadImages()
{
background.load(currentLocation->getName());
background.loadGLTextures();
int r=254, g=0, b=254, frameCount=12, frame=0; // r,g,b is background color to be filtered, frameCount and frame number
mario1sprite=new CBaseSprite(frameCount, background.getViewportWidth(), background.getViewportHeight());
mario1sprite->loadFrame(frame, "Gerad - Walk (Right)1.bmp",r, g, b);
mario1sprite->loadFrame(frame+1, "Gerad - Walk (Right)2.bmp",r, g, b);
mario1sprite->loadFrame(frame+2, "Gerad - Walk (Right)3.bmp", r, g, b);
mario1sprite->loadFrame(frame+3, "Gerad - Walk (Left)1.bmp", r, g, b);
mario1sprite->loadFrame(frame+4, "Gerad - Walk (Left)2.bmp", r, g, b);
mario1sprite->loadFrame(frame+5, "Gerad - Walk (Left)3.bmp", r, g, b);
mario1sprite->loadFrame(frame+6, "Gerad - Walk (Front)1.bmp", r, g, b);
mario1sprite->loadFrame(frame+7, "Gerad - Walk (Front)2.bmp", r, g, b);
mario1sprite->loadFrame(frame+8, "Gerad - Walk (Front)3.bmp", r, g, b);
mario1sprite->loadFrame(frame+9, "Gerad - Walk (Back)1.bmp", r, g, b);
mario1sprite->loadFrame(frame+10, "Gerad - Walk (Back)2.bmp", r, g, b);
mario1sprite->loadFrame(frame+11, "Gerad - Walk (Back)3.bmp", r, g, b);
mario1sprite->loadGLTextures();
InventorySprite = new CBaseSprite(1, background.getViewportWidth(), background.getViewportHeight());
InventorySprite->loadFrame(frame, "bckgnd1.bmp", r, g, b);
InventorySprite->loadGLTextures();
NPC1Sprite = new CBaseSprite(1, background.getViewportWidth(), background.getViewportHeight());
NPC1Sprite->loadFrame(frame, "Scholar1 (Front).bmp", r, g, b);
NPC1Sprite->loadGLTextures();
NPC2Sprite = new CBaseSprite(1, background.getViewportWidth(), background.getViewportHeight());
NPC2Sprite->loadFrame(frame, "Old Woman (Front).bmp", r, g, b);
NPC2Sprite->loadGLTextures();
TextboxSprite = new CBaseSprite(1, background.getViewportWidth(), background.getViewportHeight());
TextboxSprite->loadFrame(frame, "textbox.bmp", r, g, b);
TextboxSprite->loadGLTextures();
return true;
}
示例2: GeradMoveLeft
bool GeradMoveLeft(float &x, float &y)
{
x -= Gerad.GetSpeed();
if(Timer->elapsed(walkTimer, STOPTIME))
{
Gerad.Setxy(x, y);
walkTimer = Timer->time();
}
for(int i = 0;i < currentLocation->ObjectNum;i++)
{
if(currentLocation->objects[i].IsWithin(x, y))
{
x += Gerad.GetSpeed();
Gerad.SetStopStatus();
Gerad.Setxy(x, y);
return true;
}
}
if(x <= 0)
if(currentLocation->left != NULL)
{
currentLocation = currentLocation->left;
x = 462;
background.load(currentLocation->getName());
background.loadGLTextures();
}
else {x = 0; Gerad.SetStopStatus();}
if(Timer->elapsed(walkTimer, STOPTIME))
{
Gerad.Setxy(x, y);
walkTimer = Timer->time();
}
return true;
}
示例3: ProcessFrame
bool ProcessFrame()
{
if(InMenu)
{
return true;
}
float x, y;
Gerad.Getxy(x, y);
if(Gerad.GetWalk())
{
if(InInterior)
{
if(CheckForExit(x, y))
{
int x, y;
exitLocation->interiors[currentInterior].getxy(x, y);
y += 20;
Gerad.Setxy(x, y);
currentLocation = exitLocation;
Gerad.SetFront();
background.load(currentLocation->getName());
background.loadGLTextures();
InInterior = false;
return true;
}
}
interiorLoop(x, y);
if(Gerad.GetRight())
{
return GeradMoveRight(x, y);
}
else if(Gerad.GetBack())
{
return GeradMoveBack(x, y);
}
else if(Gerad.GetFront())
{
return GeradMoveFront(x, y);
}
else if(Gerad.GetLeft())
{
return GeradMoveLeft(x, y);
}
}
return true;
}
示例4: GeradMoveBack
bool GeradMoveBack(float &x, float &y)
{
y -= Gerad.GetSpeed();
if(Timer->elapsed(walkTimer, STOPTIME))
{
Gerad.Setxy(x, y);
walkTimer = Timer->time();
}
for(int i = 0;i < currentLocation->ObjectNum;i++)
{
if(currentLocation->objects[i].IsWithin(x, y))
{
y += Gerad.GetSpeed();
Gerad.SetStopStatus();
Gerad.Setxy(x, y);
return true;
}
}
if(y <= 0)
{
if(currentLocation->top != NULL)
{
currentLocation = currentLocation->top;
if(topInterior)InInterior = true;
y = 462;
background.load(currentLocation->getName());
background.loadGLTextures();
}
else
{
y = 0;
Gerad.SetStopStatus();
}
}
if(Timer->elapsed(walkTimer, STOPTIME))
{
Gerad.Setxy(x, y);
walkTimer = Timer->time();
}
return true;
}
示例5: interiorLoop
void interiorLoop(float x, float y)
{
for(int i = 0; i < currentLocation->InteriorNum; i++)
{
if(checkInterior(i))
{
InInterior = true;
currentInterior = i;
currentLocation->interiors[i].getstartxy(x, y);
y += 20;
Gerad.Setxy(x, y);
currentLocation->interiors[i].setdirection();
currentLocation->interiors[i].exit = currentLocation;
exitLocation = currentLocation;
currentLocation = currentLocation->interiors[i].getLocation();
background.load(exitLocation->interiors[i].getLocation()->getName());
background.loadGLTextures();
return;
}
}
}