怎样用C++写小游戏?

回想我第一次尝试做游戏还是用winform做的,游戏中的元素就是一张张的图片,控制移动就是不停改变各图片的坐标,击打之类的就是判断子弹这张图和怪物图的距离是不是足够近了,然后怪物死了就是让这张图不可见就行了。。。然后设置一个timer不停的来刷新上面说的这些状态最简单的做法应该就这样了吧,想当初还不知道游戏引擎为何物的时候,就这么写了个类似打飞机的小Demo,只要你会在vs里面建一个winform,拖控件,就行了当然,如果有空可以学习下怎么用游戏引擎,那做起来就容易多了,花样儿也更多
■网友
这个需求不如直接用cocos2d。随便看看例子学个皮毛就能做
■网友
实现界面对于初学者当然很难,你完全可以用控制台做啊~给一个例程作为启发吧,控制台操作很自由的~(这段代码是 @夏侯飛燕 当年写的) 记得写游戏的时候要使用局部刷新,而不是全屏幕刷新。#include \u0026lt;stdio.h\u0026gt;#include \u0026lt;stdlib.h\u0026gt;#include \u0026lt;windows.h\u0026gt;void putele(const int right, const int down, const HANDLE hOut){ char symb; strcpy(symb, "◆"); wchar_t wsym; int cvcnt; cvcnt = MultiByteToWideChar(CP_UTF8, 0, symb, -1, NULL, 0); MultiByteToWideChar(CP_UTF8, 0, symb, -1, wsym, cvcnt); cvcnt = WideCharToMultiByte(CP_ACP, 0, wsym, -1, NULL, 0, NULL, NULL); WideCharToMultiByte(CP_ACP, 0, wsym, -1, symb, cvcnt, NULL, NULL); COORD pos = {right * 2, down + 1}; SetConsoleCursorPosition(hOut, pos); printf("%s", symb);}int main(){ int i, j, k; int updn, leri; i = j = updn = leri = 0; for(k = 0; k \u0026lt; 1000; ++k) { HANDLE hOut; COORD pos= {0, 0}; hOut = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(hOut, pos); printf("--------------------------line: %2d, row: %2d, cnt: %4d--------------------------\", j, i, k); putele(i, j, hOut); i == 39 ? updn = 1 : 0; j == 23 ? leri = 1 : 0; !i ? updn = 0 : 0; !j ? leri = 0 : 0; !updn ? ++i : --i; !leri ? ++j : --j; Sleep(50); } return 0;}我当时记得还在控制台里面画了一个对话框,但是代码找不到了 =。=总之控制台也是很好用的啦,对于初学者而言非常友好,黑色护眼……


    推荐阅读