> 文章列表 > 第四十一章 2D游戏(2)

第四十一章 2D游戏(2)

第四十一章 2D游戏(2)

下面可以继续制作彩色砖块
砖块是一个游戏对象:持有一些状态数据,举例:位置,大小,速率。持有一些属性:颜色,旋转,是否可被摧毁,2D图片。
每个物体都表示成GameObject类中的一部分。
其头文件如下:

#ifndef GAMEOBJECT_H
#define GAMEOBJECT_H#include <GL/glew.h>
#include <glm/glm.hpp>#include \"texture.h\"
#include \"sprite_renderer.h\"// Container object for holding all state relevant for a single
// game object entity. Each object in the game likely needs the
// minimal of state as described within GameObject.
class GameObject
{
public:// Object stateglm::vec2   Position, Size, Velocity;glm::vec3   Color;GLfloat     Rotation;GLboolean   IsSolid;GLboolean   Destroyed;// Render stateTexture2D   Sprite;	// Constructor(s)GameObject();GameObject(glm::vec2 pos, glm::vec2 size, Texture2D sprite, glm::vec3 color = glm::vec3(1.0f), glm::vec2 velocity = glm::vec2(0.0f, 0.0f));// Draw s