O presente trabalho visa explicar os passos seguidos para o desenvolvimento do jogo de corrida proposto como trabalho final da disciplina IA725 – Computação Gráfica 1.
A elaboração do jogo em questão deveria fazer uso dos seguintes tópicos, estudados ao longo do semestre: modelagem geométrica, textura e iluminação. Quanto às regras do jogo, este deveria consistir em um objeto que percorre um percurso e cujo tempo para terminar o percurso deve ser medido, de forma que o objetivo seja realizar a corrida no menor tempo possível. Para dificultar o jogo, deve-se colocar obstáculos no percurso.
Para o presente trabalho, escolheu-se que o jogo seria uma corrida de carro em uma pista de forma elíptica. Os obstáculos inseridos na pista são caixas cujas posições são determinadas aleatoriamente pelo programa.
Para modelar o carro utilizou-se o MilkShape, que tem como uma das saídas possíveis o formato "raw". Esta saída é um conjunto de linhas sendo que cada face do modelo é composta por 3 vértices (cada vértice com 3 coordenadas) formando um triângulo.
No MilkShape fez-se um carro (sem rodas) e uma roda (um cilindro). Com os arquivos gerados criou-se dois arrays que foram colocados no arquivo carro1.h (array carro1 e array roda1). Estes arrays são chamados no programa principal para criar o modelo através da primitiva GL_TRIANGLES do OpenGL.
Desta forma os objetos presentes na corrida são todos compostos por triângulos, o que facilita o tratamento, pois se fossem quadriláteros, por exemplo, haveria a possibilidade de um ponto não estar no mesmo plano que os outros, o que não é possível com o uso de triângulos.
A pista consiste em duas parábolas que possuem simetria entre si. Para a pista foi criada uma função que cria triângulos entre as duas parábolas. As demais localidades são conjuntos de triângulos que têm textura de grama.
Figura 1 - Carro e pista em wireframe