【游戏引擎Easy2D】第一个引擎程序

  • ‍♂️iecne个人主页:点赞关注收藏评论支持哦~
  • 每天关注iecne的作品,一起进步
  • ✨一起学习内容专栏:C++保姆级入门教程  C++每日一题  C++游戏设计教程
  • 本文收录专栏:C++游戏引擎教程与实战
  • 希望大家多多支持一起进步呀!

前言

哈喽大家好,我是iecne,本期为大家带来的是CPP/C++游戏引擎Easy2D教程 —— 调整窗口 ,包教包会,快来看看吧!

引擎支持 Visual Studio 2013 及以上版本,如果你使用的是较低版本的 VS,那么你需要考虑一下更新你的编译器了

上一期的作品——Easy2D引擎制作的游戏片段上了热榜,于是有粉丝私信要求出一期Easy2D的教程

【游戏引擎Easy2D】第一个引擎程序_第1张图片


 

目录

前言

一.下载并安装

1.Easy2D 是什么 ?

2.安装 Easy2D

3.开始使用!

二.第一个程序

1.格式 

头文件

 命名空间

 作者习惯 

2.Game

3.开始与结束

三.调整窗口

1.调整方法

2.实战例子 

四.总结


 

一.下载并安装

1.Easy2D 是什么 ?

对于编程而言,初学者最需要的不是技能,而是成就感。

如果你喜欢用 C/C++ 编写自己的小游戏,那么 Easy2D 将是个不错的选择,它大大简化了游戏制作过程,可以帮助你快速开发 Windows 上的 2D 小游戏。

它的特点和它的名字一样,Everything is Easy!


2.安装 Easy2D

使用简易安装器

在 下载 页面下载安装包,打开后跟随提示安装即可。

安装程序会检测您已经安装的 Visual Studio 版本,并根据您的选择将对应库文件解压至 VS 库目录下。

Easy2D 不支持 VS2012 及以下的版本(包括 VC6.0),如果你使用的是低版本的 VS,那你需要尝试一下新版的 Visual Studio 了。

安装环境
操作系统:Windows 7 及以上操作系统。
编译环境:Visual Studio 2013 (x86 & x64) 及以上版本。


Tips

如果需要手动安装,可以下载 .7z 格式的压缩包,解压后将相关文件分别拷贝到 VS 对应的 include 和 lib 文件夹内,或者你的工程路径下即可。 

使用源码编译

  1. 打开 Github 地址,点击页面右上角的 Clone or download,克隆本仓库或者下载 zip 源码
  2. 使用 Visual Studio 2013 或更高版本,打开目录下的 sln 文件
  3. 选择合适的编译平台(x86 或 x64)和编译配置(Debug 或 Release),编译 Easy2D 项目
  4. 创建你的新项目,并在解决方案管理器右键打开项目属性
  5. 把 C/C++ ==> 附加包含目录 设置为 Easy2D 项目的 /Easy2D/include/ 目录
  6. 把 链接器 ==> 附加库目录 设置为 Easy2D 项目的 /Easy2D/output/ 目录
  7. 开始编写 Easy2D 游戏吧!!!

3.开始使用!

使用 VS 新建一个空的 C++ 控制台程序,在源文件开头引入easy2d.h头文件,即可开始使用。

复制下面的代码以创建一个Hello World程序。(可以不用看,新手100%看不懂)

#include 

using namespace easy2d;

int main()
{
    if (Game::init())                               // 初始化游戏
    {
        auto scene = gcnew Scene;                   // 创建一个场景
        SceneManager::enter(scene);                 // 进入该场景

        auto text = gcnew Text(L"Hello Easy2D!");   // 创建一个文本
        text->setAnchor(0.5, 0.5);                  // 设置文本中心点
        text->setPos(Window::getSize() / 2);        // 文本位置居中
        scene->addChild(text);                      // 将这个文本添加到场景中

        Game::start();                              // 开始游戏
    }
    Game::destroy();
    return 0;
}

二.第一个程序

相信你已经配置好了 Easy2D 的环境,让我们新建一个空的控制台程序,从这里起步。

#include 

using namespace easy2d;

int main()
{
    return 0;
}

入门使用技巧: 
1. 使用解决方案资源管理器窗口添加/管理文件
2. 使用团队资源管理器窗口连接到源代码管理
3. 使用输出窗口查看生成输出和其他消息
4. 使用错误列表窗口查看错误
5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件 


1.格式 

头文件

首先我们看下Easy2D的头文件

#include 

俩easy2(小写),中间/,最后.h

很好记吧?

 命名空间

#include 

 作者习惯 

作者还是习惯把iostream和std加上

如下:

#include 
#include 

using namespace easy2d;
using namespace std;

int main()
{
    return 0;
}

2.Game

首先使用 Game 类来构建游戏的大体框架。Game 类用来控制游戏主流程,它可以完成开始游戏、暂停游戏、退出游戏等一系列操作。

Game::init() 函数对游戏进行初始化,它必须在 main 函数的第一行调用,且只能调用一次。如果在初始化前进行了其他操作,有可能出现未知的错误。当初始化失败时,init() 会返回 false。

int main()
{
    // 初始化
    if (Game::init())
    {
        // 初始化成功
    }
    return 0;
}

3.开始与结束

Game::start() 函数用来开始游戏,这个函数是阻塞的,执行该函数将进入到游戏主循环中,只有当窗口关闭或退出游戏时,这个函数才返回。

Game::destroy() 函数用来销毁游戏过程产生的各类资源,它应该在程序的最后调用。

有了这三个函数,我们就可以构建一个没有任何画面的窗口程序了。一个 Easy2D 程序应由 初始化设计游戏内容开始游戏销毁资源 四个部分组成,下面的代码运行后将显示一个无画面的黑窗口。

#include 
#include 

using namespace easy2d;
using namespace std;

int main()
{
    /* 初始化 */
    if (Game::init())
    {
        /* 设计游戏内容 */

        /* 开始游戏 */
        Game::start();
    }
    /* 销毁资源 */
    Game::destroy();
    return 0;
}

三.调整窗口

1.调整方法

Window 类用来控制窗口的属性,例如,你可以使用 Window::setTitle 函数修改窗口标题,并使用 Window::setSize 函数设置窗口的大小。

// 修改窗口标题
Window::setTitle(L"Demo");
// 修改窗口大小
Window::setSize(300, 300);

Tips

C++ 中的字符串有很多种类型,因为 Easy2D 使用 Unicode 字符集,所以必须在字符串前加一个前缀 ‘L’ 来标志这个字符串是 Unicode 编码的。

大家不用将设置里的改成Unicode字符集,因为在前面加上L就行了

Window::getWidth 和 Window::getHeight 函数可以获取窗口的宽度和高度,这两个函数可以帮助你对齐图片位置

// 获取窗口的宽度和高度
float width = Window::getWidth();
float height = Window::getHeight();

// 将窗口的宽高输出在控制台上
printf(L"%.1f %.1f\n", width, height);

2.实战例子 

这样说我们不明白,直接上代码:

#include 
#include 

using namespace std;
using namespace easy2d;

int main()
{
    if (Game::init())
    {
        // 修改窗口标题
        Window::setTitle(L"iecne");
        // 修改窗口大小
        Window::setSize(300, 300);
        Game::start();
    }
    Game::destroy();
    return 0;
}

效果如下:

【游戏引擎Easy2D】第一个引擎程序_第2张图片

 看小的框框


四.总结

本节课主要是讲解了Easy2D引擎实现的教程,至此该课示例的思想博主已经真真切切彻彻底底分享完了,相信大家对这个逻辑有了一定的理解,大家可以自己动手敲敲代码,感受一下

包教包会,帅的人已然点赞收藏关注,而丑的人还在犹豫,被犹豫了,快三连吧!


 感谢每一个观看本篇文章的朋友,更多精彩敬请期待:iecne的博客_CSDN博客-C++保姆级入门教程领域博主

文章存在借鉴,如有侵权请联系修改删除!dd8b4788b2554df4bec4b8202395cad2.gif

 

 

 

 

你可能感兴趣的:(【C++游戏引擎】,c++,游戏引擎,开发语言)