// gameapp.h
#ifndef __GAMEAPP_H__
#define __GAMEAPP_H__
//我们的游戏类必须从 SexyAppBase 类派生. 后者声明在这个头文件.
#include "SexyAppFramework/SexyAppBase.h"
// 声明我们定义在 Board.h 中的窗体部件类.
class Board;
//
// 游戏类.
// 直接从 SexyAppBase 派生. 并实现基类中的几个函数(做初始化,加载资源等工作).
// 它的作用是创建窗体部件 Board (游戏的界面. 逻辑. 处理用户输入等等工作都由窗体部件来做)
// 并且要加载程序中用到的资源.
///
class GameApp : public SexyAppBase
{
Board* mBoard; //我们的窗体部件
public:
GameApp();
virtual ~GameApp();
//
// 初始化.
// 如果我们的程序要有一个前导. 放在这里.
// 框架会在这个函数返回后自动调用 后边的 LoadingThreadProc()
//
virtual void Init();
//
// 加载程序用到的资源
// 这个函数在一个单独的线程中进行.
// 如果加载时间稍长. 我们需要一个类似 " Loading ... " 的前导.
// 可以在这个函数中更新加载进度条.
// 这个函数执行完毕时. 框架自动调用后边的 LoadingThreadCompleted()
//
virtual void LoadingThreadProc();
//
// 资源全部加载完毕以后 应该执行的动作.
//
virtual void LoadingThreadCompleted();
};
#endif // __GAMEAPP_H__
//board.h
#ifndef __BOARD_H__
#define __BOARD_H__
#include "SexyAppFramework/Wi
popcap sexyframework - Demo1 基本框架
最新推荐文章于 2017-02-27 01:31:16 发布
本文档展示了如何使用popcap的SexyAppFramework创建一个基础的游戏框架。`GameApp`类继承自`SexyAppBase`,负责初始化、加载资源和管理游戏逻辑。`Board`类作为游戏的主要窗口部件,继承自`Widget`,处理游戏的绘图、更新和用户输入。通过`GameApp`的`Init()`、`LoadingThreadProc()`和`LoadingThreadCompleted()`函数完成游戏的初始化和资源加载,而`Board`的`Draw()`和`Update()`函数则分别用于游戏的渲染和逻辑更新。
摘要由CSDN通过智能技术生成