本文整理汇总了C++中core::Graphics::SetColor方法的典型用法代码示例。如果您正苦于以下问题:C++ Graphics::SetColor方法的具体用法?C++ Graphics::SetColor怎么用?C++ Graphics::SetColor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类core::Graphics
的用法示例。
在下文中一共展示了Graphics::SetColor方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Draw
void ParticleEffect::Draw(Core::Graphics& graphics)
{
graphics.SetColor(WHITE);
for (unsigned int i = 0; i < numberofParticles; i++)
{
Engine::Vector2 draws[] =
{
Engine::Vector2(1, 0) + particleList[i]->getPosition(),
Engine::Vector2(0, 1) + particleList[i]->getPosition()
};
graphics.SetColor(particleList[i]->getColor());
graphics.DrawLines(1, *draws);
}
}
示例2: Draw
void Draw(Core::Graphics& graphics){
if (isEditingSpaceship){
editor.Draw(graphics);
}
else{
graphics.SetColor(defaultColor);
if(!isMainMenu && !isControls){
{
PROFILE("LevelDraw");
lvl.Draw(graphics);
}
{
PROFILE("ParticlesDraw");
manager->Draw(graphics);
}
}
else if (isControls){
Controls::Draw(graphics);
}
else{
menu.Draw(graphics);
}
}
Debug::DrawMemoryState(graphics, SCREEN_HEIGHT);
}
示例3: draw
void Walls::draw(Core::Graphics& g)
{
g.SetColor(RGB(255, 100, 255));
for(unsigned int i = 0; i< NUM_WALL_POINTS; i++)
{
const Vector3D& w1 = *wallShape[i];
const Vector3D& w2 = *wallShape[(i+1) % NUM_WALL_POINTS];
g.DrawLine(w1.x, w1.y, w2.x, w2.y);
}
}
示例4: DrawUpgrade
void Upgrade::DrawUpgrade(Core::Graphics& graphics, Vector2D mouse, float thickness)
{
myColor = (CheckMouse(mouse))? RGB(134, 134, 134): RGB(94,94,94);
if(upgradeCooldown < .5)
{
upgradeCooldown += .016f;
}
graphics.SetColor(myColor);
for(int i=0; i<BOX_SIZE; i++)
{
Vector2D start(position.x + i, position.y);
Vector2D end(position.x + i, position.y+BOX_SIZE);
graphics.DrawLine(start.x, start.y, end.x, end.y);
}
if(CheckMouse(mouse))
{
viewText(graphics);
if(Core::Input::IsPressed(Core::Input::BUTTON_LEFT)&&upgradeCooldown >= .5f && myCash.getCash() >= upgradeCost && upgradeCount < 5)
{
upgradeCooldown = 0;
myCash.decreaseCash(upgradeCost);
upgradeCount++;
}
}
SetUpgradeCost();
DrawGraphic(graphics);
graphics.SetColor(RGB(255,255,255));
if(upgradeCount > 4)
{
graphics.SetColor(RGB(255,0,0));
}
//Draws $
DrawHorizontalBar(graphics, thickness, Letter_Size, Vector2D(costPosition.x, costPosition.y+thickness/2));
DrawVerticalBar(graphics, thickness, (Letter_Size-3*thickness)/2, Vector2D(costPosition.x, costPosition.y + thickness));
DrawHorizontalBar(graphics, thickness, Letter_Size, Vector2D(costPosition.x, costPosition.y+thickness+((Letter_Size-3*thickness)/2)));
DrawVerticalBar(graphics, thickness,(Letter_Size-3*thickness)/2, Vector2D(costPosition.x+(Letter_Size-thickness), costPosition.y + thickness*2+((Letter_Size-3*thickness)/2)));
DrawHorizontalBar(graphics, thickness, Letter_Size, Vector2D(costPosition.x, costPosition.y+2*thickness + (2*((Letter_Size-3*thickness)/2)-thickness/2)));
DrawVerticalBar(graphics, thickness, Letter_Size, Vector2D(costPosition.x+(Letter_Size/2.5f), costPosition.y));
//Draws Cost
DrawLetters(graphics, thickness);
}
示例5: draw
void Grid::draw(Core::Graphics& g)
{
for(int i = 0; i<numRows; i++)
{
for(int j = 0; j<numColumns; j++)
{
cells[i][j].draw(g);
}
}
if(enemies.numActiveTroops==0)
{
g.SetColor(RGB(50,255,50));
}
else
g.SetColor(RGB(200,50,50));
g.DrawString((int)(cells[9][0].position.x+(cells[9][0].width/2))-30,(int)(cells[9][0].position.y+(cells[9][0].height/2))-10, "COMPILE");
g.DrawLine(cells[9][0].position.x, cells[9][0].position.y, cells[9][0].position.x+cells[9][0].width, cells[9][0].position.y);
g.DrawLine(cells[9][0].position.x+cells[9][0].width, cells[9][0].position.y, cells[9][0].position.x+cells[9][0].width, cells[9][0].position.y+cells[9][0].height);
enemies.draw(g, Vector3D(100,100));
}
示例6: DrawGraphic
void Upgrade::DrawGraphic(Core::Graphics& graphics)
{
if(type==armor)
{
graphics.SetColor(RGB(255,242,59));
DrawGraphicPoints(graphics, armorGraphic, armorSize);
}
else if(type==fuel)
{
graphics.SetColor(RGB(219,65,31));
DrawGraphicPoints(graphics, fuelGraphic, fuelSize);
}
else if(type == health)
{
graphics.SetColor(RGB(103, 219, 31));
DrawGraphicPoints(graphics, healthGraphic, healthSize);
}
else if(type == bullet)
{
graphics.SetColor(RGB(46, 46, 46));
DrawGraphicPoints(graphics, bulletGraphic, bulletSize);
}
}
示例7: DebugFrameMemory
void GameplayFrame::DebugFrameMemory(Core::Graphics& graphics)
{
graphics.SetColor(RGB(255,255,255));
_CrtMemState myState;
_CrtMemCheckpoint(&myState);
myState.lCounts;
char buf[50];
sprintf_s(buf, "Current count: %i", myState.lCounts[_CLIENT_BLOCK]);
graphics.DrawString(20, 870, buf);
sprintf_s(buf, "Current size: %i", myState.lSizes[_CLIENT_BLOCK]);
graphics.DrawString(20, 890, buf);
sprintf_s(buf, "Current HighWaterCount: %i", myState.lHighWaterCount);
graphics.DrawString(20, 910, buf);
}
示例8: Draw
void Lerper::Draw(Core::Graphics& graphics)
{
const unsigned int NUM_LINES = sizeof(Lerp) / sizeof(*Lerp);
graphics.SetColor(RGB(255,100,0));
for(unsigned int i = 0; i < NUM_LINES; i++)
{
const Vector2D& first = Lerp[i] + position;
const Vector2D& second = Lerp[(i+1) % NUM_LINES] + position;
graphics.DrawLine(first.vector_x, first.vector_y, second.vector_x, second.vector_y);
}
const unsigned int LERP_NUM_LINES = sizeof(LerpLines) / sizeof(*LerpLines);
graphics.SetColor(RGB(255,100,100));
for(unsigned int i = 0; i < LERP_NUM_LINES; i++)
{
const Vector2D& first = LerpLines[i];
const Vector2D& second = LerpLines[(i+1) % LERP_NUM_LINES];
graphics.DrawLine(first.vector_x, first.vector_y, second.vector_x, second.vector_y);
}
}
示例9: draw
void EnemyShip::draw(Core::Graphics& g)
{
const int numShippoints= sizeof(lerper)/sizeof(*lerper);
Matrix3 rotato=rotato.rotate(angle);
g.SetColor(RGB(200,100,100));
if(!dead)
{
for(int i=0;i<numShippoints;i++)
{
const Vector2d& s1=rotato*lerper[i]+position;
const Vector2d& s2=rotato*lerper[(i+1)%numShippoints]+position;
g.DrawLine(s1.x,s1.y,s2.x,s2.y);
}
}
}
示例10: Draw
void EnemyShip::Draw(Core::Graphics& graphics)
{
RGB from = ALIEN;
RGB to = BLACK;
float percent = 1 - (life / originalLife);
graphics.SetColor(RGB(((GetRValue(to) - GetRValue(from)) * percent) + GetRValue(from),
((GetGValue(to) - GetGValue(from)) * percent) + GetGValue(from),
((GetBValue(to) - GetBValue(from)) * percent) + GetBValue(from)));
//graphics.SetColor(ALIEN);
Engine::Matrix3 transformations = Engine::Matrix3::Translation(shipPosition) * Engine::Matrix3::rotation(shipRotation);
frame.draw(graphics, transformations);
turret.draw(graphics, shipPosition);
}
示例11: viewText
void Upgrade::viewText(Core::Graphics& graphics)
{
graphics.SetColor(RGB(6, 196, 130));
graphics.DrawLine(position.x + (float)BOX_SIZE/2, position.y + (float)BOX_SIZE/4, position.x + (float)BOX_SIZE/2+50.0f, position.y - 200.0f);
graphics.DrawLine(position.x + (float)BOX_SIZE/2+50.0f, position.y - 200.0f, position.x+(float)BOX_SIZE/2+400.0f, position.y-200.0f);
if(type == armor)
{
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-180.0f), "The armor upgrade increases the rate");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-160.0f), "at which your armor regens out of combat.");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-140.0f), "Your ship regens no armor until the first");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-120.0f), "upgrade has been purchased. The ship is");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-100.0f), "'out of combat' when you haven't taken");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-80.0f), "damage in over five seconds.");
}
else if(type == fuel)
{
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-180.0f), "The fuel upgrade increases the overall");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-160.0f), "efficiency of your spacecraft. What this");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-140.0f), "acutally means is that your fuel doesn't");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-120.0f), "drain like a Hummer's anymore. You've");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-100.0f), "gotta love that one mile to the gallon.");
}
else if(type == health)
{
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-180.0f), "The repair upgrade increases the rate");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-160.0f), "at which these small sort-of space wrenches");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-140.0f), "spawn that increase your ship's health");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-120.0f), "when picked up. The first upgrade causes");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-100.0f), "the wrenches to start spawning whilst");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-80.0f), "continual upgrades decrease the spawn time.");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-60.0f), "Spawn times (seconds): 60/45/30/20/15. ");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-40.0f), "WARNING: The spawn time resets when ");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-20.0f), "you purchase this upgrade to the new time.");
}
else if(type == bullet)
{
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-180.0f), "The bullet upgrade increases the damage ");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-160.0f), "that your bullets deal to targets. Oh ");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-140.0f), "yeah by the way the enemies' health scale");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-120.0f), "as the time goes on so this upgrade might be ");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-100.0f), "a good idea, just saying.");
graphics.DrawString(int(position.x + (float)BOX_SIZE/2+100.0f), int(position.y-80.0f), "Damage: 1(no upgrades)/2/3/5/8/12");
}
}
示例12: drawAt
// Only used for tracing
void Window::drawAt(Core::Graphics& g, Vector offset)
{
g.SetColor(RGB(255, 0, 0));
box.drawAt(g, offset);
deadzone.drawAt(g, offset);
}
示例13: DrawGame
void GameplayFrame::DrawGame(Core::Graphics& graphics)
{
PROFILE("Total Draw");
myBackground.DrawBackdrop(graphics);
graphics.SetColor( RGB( 255, 255, 255));
char buf[50];
sprintf_s(buf, "%f", debugTime);
graphics.DrawString(35,980, buf);
graphics.DrawString(5, 980, "FPS:");
healthBar.DrawHealth(graphics);
fuelGauge.DrawPlayerFuel(graphics);
graphics.SetColor(RGB(51,51,51));
boundaries.Draw(graphics);
{
PROFILE("Draw Planets");
creator.DrawPlanets(graphics);
}
graphics.SetColor( RGB( 255, 255, 255));
{
PROFILE("Draw Enemies");
tester.drawShips(graphics);
}
{
PROFILE("Draw Particles");
myParticles.drawEffect(graphics);
}
myText.drawText(graphics);
graphics.SetColor(RGB(255,255,255));
Vector2D fuel(fuelStation[1].x+(fuelStation[3].x-fuelStation[1].x)/4.5f, (fuelStation[0].y + ((fuelStation[2].y-fuelStation[0].y)/2.5f)));
gameText.drawText(graphics, 4.0f, RGB(255,255,255), "Fueling", 20.0f, 5.0f, 0, fuel);
gameText.drawText(graphics, 4.0f, RGB(255,255,255), "Station", 20.0f, 5.0f, 0, Vector2D(fuel.x, fuel.y + 35.0f));
myCash.DrawCash(graphics, 5.0f);
healthDrop.DrawHealthPickup(graphics);
graphics.SetColor( RGB(255, 255, 255));
graphics.DrawString(30, 100, "PRESS I TO OPEN/CLOSE THE LIST OF INSTRUCTIONS.");
DebugFrameMemory(graphics);
graphics.SetColor( RGB( 255, 100, 0));
{
ranger.Draw(graphics);
}
//rapidFirePowerup.drawPowerup(graphics);
if(alreadyKilled)
{
char buf[50];
sprintf_s(buf, "You survived for %i seconds!", (int)totalTime);
Core::RGB textColor = RGB(255, 149, 0);
gameText.drawText(graphics, 5.0f, textColor, "GAME OVER...", 30.0f, 5.0f, 0, Vector2D(250.0f, 250.0f));
gameText.drawText(graphics, 5.0f, textColor, buf, 30.0f, 5.0f, 0, Vector2D(680.0f, 250.0f));
graphics.SetColor(RGB(255,100,0));
graphics.DrawString(700, 500, "Game over, you have died and as thus you are");
graphics.DrawString(700, 520, "reading this screen. If you wish to try again");
graphics.DrawString(700, 540, "simply press the space bar to reset the game. Yep...");
graphics.DrawString(700, 560, "why are you still reading this?? I mean I");
graphics.DrawString(700, 580, "don't care but you are kind of wasting your");
graphics.DrawString(700, 600, "time at this point.");
if(Core::Input::IsPressed(32))
{
resetFrame();
}
}
if(paused && upgradesPause)
{
armorUpgrade.DrawUpgrade(graphics, mouse, 3.0f);
healthDropUpgrade.DrawUpgrade(graphics, mouse, 3.0f);
bulletsUpgrade.DrawUpgrade(graphics, mouse, 3.0f);
fuelUpgrade.DrawUpgrade(graphics, mouse, 3.0f);
}
else if(paused && instructionsPause)
{
graphics.DrawString(825, 430, " (Press I to close/open the list of instructions.)");
graphics.DrawString(800, 450, " Instructions: use up, down, W or S to move the ship. A and D");
graphics.DrawString(800, 470, "or left and right to rotate the spaceship. Use the left mouse");
graphics.DrawString(800, 490, "to fire your turret. Keep in mind that only ten bullets can");
graphics.DrawString(800, 510, "be on the screen at once and that the sun in the background");
graphics.DrawString(800, 530, "is simply for ambiance.");
graphics.DrawString(800, 570, " Upgrades: Use the cash that you have earned to purchase");
graphics.DrawString(800, 590, "the upgrades. To open the upgrade menu press R. You can");
graphics.DrawString(800, 610, "view individual upgrade information by hovering over the tiles.");
graphics.DrawString(800, 650, "Fueling: Your fuel will slowly decrease as time goes on...because");
graphics.DrawString(800, 670, "you know.....space....well anyway drive over the aptly named");
graphics.DrawString(800, 690, "'FUELING STATION' to fuel your ship. You can't, however, fire");
graphics.DrawString(800, 710, "your turret while you are fueling, because that is illegal.");
graphics.DrawString(800, 750, "Damage: When an enemy ship collides with you, you'll take");
graphics.DrawString(800, 770, "some damage. If you have the armor upgrades then your armor");
graphics.DrawString(800, 790, "will absorb the first chuncks of damage. Each ship has a");
graphics.DrawString(800, 810, "one second spawn delay from being able to damage your ship");
graphics.DrawString(800, 830, "as well as a three second delay from the game starting to");
graphics.DrawString(800, 850, "being able to damage your spacecraft.");
}
}