void render() {
  glClear(GL_COLOR_BUFFER_BIT);

  //glViewport(0, 0, 640, 480);
/*   glMatrixMode(GL_PROJECTION); */
/*   glLoadIdentity(); */
/*   gluOrtho2D(0, 320, 240, 0); */

  glMatrixMode(GL_MODELVIEW);
  glLoadIdentity();
  glScalef(1.25,1.25,1.25);


  drawBackground();
  if (help) {
    drawEnemySet(helplevel);
    drawDefenses(helplevel);
    drawShip(helpship);
    drawShots(helplevel);
    drawHelpText();
  } else {
    drawEnemySet(level);
    drawDefenses(level);
    drawShip(ship);
    drawShots(level);
    drawGameText();
  }

  glFlush();
  glutSwapBuffers();
}
Beispiel #2
0
void GameUpdate(BW::bitmap *pSurface, BW::bounds *pBounds)
{
  updateImageDrawingData();   //BW::BWFXN_updateImageData();
  BW::BWFXN_drawMapTiles();
  BW::BWFXN_blitMapTiles();

  //
  BW::BWFXN_drawAllSprites();// sprites
  // Space tileset stars
  drawGameText();
  BW::BWFXN_drawDragSelBox();
  BW::BWFXN_drawAllThingys(); // draw thingys
}
Beispiel #3
0
void drawGame(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glLoadIdentity();

    glLoadMatrixf(glm::value_ptr(glm::lookAt(camera.eye, camera.center, camera.up)));

    glLightfv(GL_LIGHT0, GL_POSITION, lightPosition);

    drawGameMeshes();

    drawGameText();

    drawGameGui();

    glfwSwapBuffers();
}
Beispiel #4
0
void resetGame(Block *blocks, int *blocksLeft, Result *result) {
    result->outcome = LOSE;
    result->score = 0;
    initializeBlocks(blocks);
    *blocksLeft = size*size;
    int index[2];
    index[0] = spawnBlock(blocks, *blocksLeft);
    (*blocksLeft)--;
    index[1] = spawnBlock(blocks, *blocksLeft);
    (*blocksLeft)--;
    result->score += 1<<blocks[index[0]].num;
    result->score += 1<<blocks[index[1]].num;
    waitForVblank();
    fillScreen(BLACK);
    waitForVblank();
    drawBoard();
    drawGameText();
    updateScoreDisplay(result->score);
    drawBlock(blocks, index[0]);
    drawBlock(blocks, index[1]);
}