游戏开发
ARTELE
爱好计算机
展开
-
一个个人学习的小游戏demo开源
简介 之前在学习游戏相关只是的时候,由于学习的比较杂乱,这个过程中写了一个游戏框架,其实就是个小demo,决定开源了,和喜欢游戏开发的人交流学习。代码的资料注释不多,以下是一些效果,其中,游戏元素管理,动画加载,物理等一切都是自己写的,不依赖任何库,只有图像显示需要opengl,本打算写个马造的,奈何功力不够。 效果图 源码链接demo源代码和资源 ...原创 2020-11-23 16:04:19 · 683 阅读 · 0 评论 -
游戏中的AI---寻路算法A* [1](下篇 A*算法)
0.简介 前面有了Dijkstra算法的铺垫以后,我们来看A*算法。 1.启发式 这个启发式从字面理解就是启发,受到启发,算法在寻路的时候会受到启发?差不多是这样。看下面这句代码 float t_cost = t.cost+ mapNodes[node.x][node.y].cost+qf*1000;//此节点与父节点距离+父节点到起点距离+启发因子 我们发现,这个与Dijkstra的...原创 2020-04-29 17:47:11 · 1026 阅读 · 0 评论 -
OpenGL游戏制作之路[第总结篇]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 之前的设计中出现了一些小问题,所以我把文件架构重新设计了一遍,然后先在这里总结一下。 正题 首先,我是在写一个游戏,但是我在写游戏的过程中顺便就写成一个小引擎,打算以后还能用来开发别的游戏,在开发的过程中,架构的设计很重要,这里我并不是很精通什么是设计架构,但是我会有意识的让整个程序的可拓展性和鲁棒性更好。现在看看这个程序的类图。 这次的类更多了,也更复杂了,所以之后的设计也要更...原创 2019-04-11 22:27:44 · 827 阅读 · 0 评论 -
OpenGL游戏制作之路[第七篇 元素动起来(2)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 上次已经做好了一个动态的效果,这次要多弄几个,同时我也发现由于元素都是从按钮那里复制过来的,所以,按钮上面就直接赋值动态的序列了,而不是一个简单的图片,只不过按钮没有加入计数器让图像动起来,这种设计感觉不是很合理,所以我打算下一篇的时候改进一下。 正题 我使用的素材都是网上下载的,而且本身也不是动态的,所以就需要自己用PS制作动态的,我做了几张图。 就不一一列举了。 ...原创 2019-03-28 19:54:13 · 308 阅读 · 0 评论 -
OpenGL游戏制作之路[第七篇 元素动起来(1)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
失踪人口回归。 前言 上回书说到地图编辑器可以放置元素了,这次我们让元素动起来。首先,我制作了一张动图的素材。 正题 这两张图仔细观察,有不同的地方,我就利用这两张图来实现元素的动态效果。 class GLTexture { protected: //动画序列 vector<GLuint> animation_sequence; //当前显示的 GLuint...原创 2019-03-27 21:56:15 · 298 阅读 · 0 评论 -
OpenGL游戏制作之路[第十篇 做个正经的对话框]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 前面,我实现了对话框的显示,移动等基本功能,又可以显示文字了,还有按钮。现在呢,我想将这些东西组合起来来显示一下合作的力量是巨大的。 正题 我的思路是,在对话框上面绘制文字,放在标题栏位置,一个关闭按钮放在右上角,看似容易的操作是否真的容易呢。 首先我添加窗口标题,新建了一个窗口类,然后在窗口类里面添加了一个字体类,这也是暂时的,就是为了能出效果。主要是显示的时候,要获取窗口的位置,...原创 2019-04-01 00:28:14 · 409 阅读 · 0 评论 -
OpenGL游戏制作之路[第九篇 文字显示]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 之前还在头疼着,游戏里显示文字怎么办,文字?你可能会说,前面不都是已经显示文字了。确实,有显示出来的文字,但那只是做好的图片上有文字而已,我希望能在代码里输入文字,屏幕上就能显示文字。解决起来真的是麻烦,不过我还是克服了各种困难,实现了文字显示。 正题 首先,需要知道一个东西,truetype2.0,这个是用来生成字体纹理的。这个东西不太好下载,慢慢下吧,我是下载了好多次才成功。 我...原创 2019-03-31 20:06:13 · 364 阅读 · 0 评论 -
OpenGL游戏制作之路[第八篇 游戏内对话框(2)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 上一篇实现了游戏内的对话框,但是还存在一些问题,这次解决一下。 正题 上次的窗口有这么一些问题。 1.窗口点上后,鼠标按住可以随着移动,当再次点击拖动的时候,窗口会突然跳跃一次,问题原因是没有将第一次的鼠标和窗口中心的坐标刷新导致。 2.窗口后面如果有按钮的时候,窗口后面的按钮也会跟着一起响应,问题原因是没有区分窗口和窗口之间的层次导致消息混乱。 3.代码冗余,问题原因,设计问题...原创 2019-03-30 21:10:14 · 382 阅读 · 0 评论 -
OpenGL游戏制作之路[第八篇 游戏内对话框(1)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 之前发现了一个问题,就是编辑好的地图没办法保存,所以就添加了一个保存按钮,然后问题又来了,地图文件要有文件名,所以我打算把保存的方式写成像windows保存文件那样,至少有个地方能输入文件名就行了,所以我意识到了,我需要写一个对话框,然后在对话框上面还要有编辑框等控件,想想都头疼,还是动手写吧。 正题 先设计我们的窗口需要什么,一个图片作为窗体,需要动手PS一个了,还要有个标题栏什么的...原创 2019-03-29 19:08:16 · 327 阅读 · 0 评论 -
OpenGL游戏制作之路[第总结篇]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 最近事情比较多,所以暂时就没有进行更新,所以在这里就简单做一下总结。 正题 总结的内容主要就是设计问题,这里就给一张类图关系。 我后来觉得应该把事件响应单独做一个抽象类,从按钮中拿出来,或者是从控件中独立出来,虽然这样看似没什么实际上的功能用处,但是能表明类之间的明确关系,基本控件是由平面和响应组合而成的,我不知道这样有什么好处,只是觉得这样看起里舒服一些,我尽快补习设计模式方面...原创 2019-02-26 10:18:41 · 610 阅读 · 0 评论 -
OpenGL游戏制作之路[第四篇 游戏控件之游戏元素块(1)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 游戏中,少不了游戏人物,地图砖块等,这次我们就开始设计这些元素,然后将其显示出来,为了可以在后面的开发中方便一些,先对其进行类的设计。 正题 目前是2D游戏,所以我们的元素2D就足够了,根据之前对按钮设计的经验来看,我们可以直接从2DPlane继承,我打算先从魔塔的地图编辑器写,目前,先显示元素块按钮。 类中多了几个变量,这个是要按钮能有放大缩小的效果,暂时还没有效果,但是可以借...原创 2019-02-13 22:26:54 · 307 阅读 · 0 评论 -
OpenGL游戏制作之路[第六篇 游戏控件之游戏地图编辑(1)]---2D游戏---(注:此版本作者处于探索阶段,希望能得到读者的指教和建议)
前言 上次显示了地图,只不过地图上只有地面贴图,这次要在上面显示更多的元素,并且用鼠标来设置地图。这样编辑器大部分工作就完成了。 正题 要让GMap能响应鼠标事件,所以新建一个类从GMap继承,就叫EMap,这个地图中,当鼠标点击一个元素后,回记录该元素,然后在地图上点击的时候,就会放置该元素。 class EMap : public GMap { public: EMap(); /...原创 2019-02-22 10:47:25 · 447 阅读 · 0 评论