南通大型网站建设厚街网站建设
2026/4/18 18:53:54 网站建设 项目流程
南通大型网站建设,厚街网站建设,动画怎么制作,汕尾海丰建设规划局网站告别枯燥#xff0c;用游戏点燃编程乐趣#xff01;官网#xff1a;www.py-me.com 大家好呀#xff01;经过前两节略显复杂的应用开发学习#xff0c;是不是感觉脑子都要冒烟了#xff1f;别担心#xff0c;今天咱们来点好玩的——用PyMe开发游戏#xff01;没错…告别枯燥用游戏点燃编程乐趣官网www.py-me.com大家好呀经过前两节略显复杂的应用开发学习是不是感觉脑子都要冒烟了别担心今天咱们来点好玩的——用PyMe开发游戏没错就是那个让人欲罢不能的对对碰游戏还记得小时候玩过的连连看、消消乐吗今天咱们就要亲手打造一个属于自己的对对碰游戏放心这次不会像前两节那样让人头秃保证让你在欢声笑语中写完代码~提示本节内容需要更新至PyMe1.5.4.8 版本PyMe 游戏引擎让游戏开发变简单前面我们已经领略了PyMe开发桌面应用的使用今天在游戏开发领域PyMe同样会令人惊讶它不但内置了基础游戏框架还提供了一整套工具链让我们可以专注于最好玩的部分——写游戏逻辑举个例子如果没有PyMe你要自己配置图形库要处理窗口创建要搞定事件循环最后还要折腾打包...有了PyMe这些统统不用愁我们只需要关心怎么把游戏做得更好玩就行。不过首先我们需要了解一下使用PyMe开发游戏的基本原理和开发流程。基本原理游戏引擎是游戏运行的底层框架如果我们把游戏的展现比喻为组织一台大合唱作为导演的我们需要去考虑到的几个要素包括场景GameScene游戏大戏上演的舞台用于承载和显示所有的人员和表现物。层GameLayer相当于大合唱中的队列每个队列都有自己的表演任务比如最后一排男声部、前面一排的女声部、再到演奏队列、最前面的歌唱家等。在游戏中每一排负可能负责的是显示远景、背景、阻档物、角色、特效、界面等任务虽然引擎设计为”层“Layer但我用大合唱中的”队列“来说明相信你会更加容易理解。结点GameNode) 大合唱队列中每个独立的个体。比如歌唱家就相当于游戏中的主角。在引擎设计中使用“结点”Node是为了让不同的个体之间可以设置父子关系以方便渲染和逻辑管理你可以根据游戏的策划案来基于Node派生出不同的个体比如玩家、NPC、界面、控件、粒子效果等等。资源管理ResManager)整个表演所需要的物料每个表演者的乐器和衣着等。在游戏引擎中资源管理负责加载文件和提供函数查找它们以方便使用。考虑到Python语言本身的简单性和运行效率PyMe中的2D游戏引擎设计的非常简单你只需要掌握上面的四个要素就可以很好的理解这套引擎的实现了它不过是在一个GameApp框架里生成一个场景然后在场景里放置一些队列在队列里放置一些个体在需要给个体设置图片资源时去资源管理器要就行了。在游戏中结点关系型结构是一种非常经典的设计特别是在类似界面或特效处理中当你需要在移动一个对话框时上面的输入框和按钮都跟随它一起移动这再正常不过虽然对话框、输入框、按钮都是个体但指定的父子关系可以在移动计算时很好的处理这种影响。PyMe中的界面编辑开发流程基于上面的要素PyMe提供了场景编辑器界面编辑器、动画编辑器、角色编辑器、粒子编辑器等工具链来支撑构建它们。PyMe中的动画编辑一般来说我们需要先明白我们的游戏类型然后确定游戏的场景表现方式你可以先思考基于上面的四要素如何表现游戏接下来就是制作素材并基于素材使用界面编辑器制作界面使用动画编辑器制作动画、使用角色编辑器制作角色使用粒子编辑器制作特效。有了这些”个体“你最后在场景编辑器中创建一些队列“将”个体“放置在”队列“上就可以了。比如下面是玛丽游戏的场景编辑器中间是场景效果右边面板上部是“层”GameLayer管理下部是“结点”GameNode管理基于这套工具你可以非常轻松的编辑一个横版闯关类的游戏。PyMe中的场景编辑游戏策划时间我们的对对碰要有什么在开始游戏开发之前先来简单规划一下我们的游戏要有什么功能因为重点是通过一个简单的对对碰游戏来让大家掌握游戏开发流程所以我并不打算花过多文字来介绍玩法和说明我们简单列出游戏的功能吧。基础功能一个二维的游戏网格一些不同的物品图标点击两个相同物品后消除全部消除后胜利倒计时结束失败进阶功能消除特效点击音效连击奖励道具使用是不是听起来就很兴奋别急我们一步步来动手时刻搭建游戏框架准备资源首先我们要先准备好游戏所用的资源当前游戏的图片我已经从网上找到了一张对对碰的场景图片并进行了简单处理 处理后它是由一个背景图ddp.png和20个物件图标组成除此之外我们还需要一些界面用的图片以及一个背景音乐和一些小音效这样资源就准备好了下面我们启动PyMe开始进行游戏开发啦创建项目首先还是要先更新到PyMe1.5.4.7版本创建项目我们选择“2D游戏”项目并指定一个工程文件夹后点击“确定”按钮。这时我们会进入到启动场景也就是游戏启动时的舞台在这个场景中我们因为背景图片ddp.png大小是1242x1698所以也可以设置窗口大小为宽1242高1698但用笔记本运行可能看不全所以窗口缩放设为0.5即可。并用CTRLS进行保存在视图中当我们用鼠标在中间区域滑动滚轮时场景画布会进行缩放按下滑轮可以拖动画布。我们一会儿再进一步编辑场景先把需要的个体搞定再说在游戏中为了更好的管理大量不同类型的文件我们将个体类文件都设置为在资源”Resources“文件夹内创建所以我们双击”Resources“文件夹进入其中分别用鼠标右键菜单创建一些文件夹”UI“、”Music“、”Images“。并在电脑的资源管理器把声音文件和图片文件分别放入”Music“和Images”文件夹中。制作界面双击进入”UI“文件夹后用鼠标右键菜单来新建游戏界面。在弹出的对话框中输入”StartUI“作为开始界面名称然后我们就会创建出界面文件并进入界面编辑器与PyMe开发应用的界面编辑视图布局类似左边是控件和组件工具条右边是层级树和属性、变量、事件属性栏。如果你之前有PyMe应用开发经验操作界面的过程就很容易上手初始情况下PyMe创建了一个HelloWorld标题的Label。下面我们将文字删除然后为Form_1设置背景图片”ddp.png“这里要注意把背景色设置为纯白色因为在PyMe游戏引擎中如果一个结点有背景色又设置了背景图片那么它最终显示的颜色值 背景图片的像素颜色 乘以 背景颜色所以只有将背景设为纯白才能显示正确的颜色。然后我们再放置一个Image显示标题图片当我们设置了背景图片后在属性栏有一个”适应图片“的选项栏我们设置为”是“会自动将控件大小还原为图片大小。在标题图片下面放置一个Button然后可以在顶部快捷按钮栏上选择图片按钮在背景色右边的四个按钮分别为1默认情况下的背景图片2鼠标悬停状态下的背景图片3鼠标按下时的背景图片4让控件大小适应图片大小。除此之外也同样提供了一些仿应用控件的样式效果。编辑场景有了开始界面我们点击文件资源区最左边的向上返回箭头回到工程文件夹然后双击主场景文件”派米对对碰“进入场景编辑器然后点击右边的场景图层列表中下面的”“按钮增加一个层。前面讲原理的时候我跟大家说过“层”用来区分不同的表演任务这里我们创建一个UI层来显示界面在PyMe的层中内置了两种布局方式一种是自由方式“层”中的个体可以随意拖动摆放。另一种是格子地图在格子地图中个体元素只能放置在格子中就比如前面的玛丽游戏场景这在2D游戏中很常见所以在PyMe中你可以创建多个具有不同布局形式的“层”并结合来用这可以让你创造出很有趣的玩法不过在当前场景中我们只需要用自由模式创建一个“UI”层就可以了。创建好“UI”层后我们点击下方的“界面”切换到“界面”资源列表区域然后在根节点上用鼠标右键单击在弹出的菜单中点击“导入”菜单项将刚做好的StartUI.py导入点选它后在鼠标处就会生成界面我们将鼠标移到中央区域中点一下就会创建出一个StartUI界面当然你可以在任意处点选创建出多个同样的界面不过在本场景中界面就相当于大合唱中的主唱只需要一个就够了。创建好之后点选它在下方的位置布局栏中设置XY为0后面W,H是宽高再后两个是显示顺序设置。这个场景编辑好了我们可以设置一下背景音乐为bgm.mp3窗口缩放保持0.5现在我们可以运行看一下效果了。游戏启动后音乐响起但现在点击“开始游戏”还没有反应。我们需要再创建一个场景用于展现玩法让按钮点击时进行跳转。跳转场景在文件和资源栏用鼠标右键单击在弹出菜单中创建一个新场景”Battle“然后双击进入场景先创建一个BG层在下面的图片资源列表中添加背景图并放置在BG层之后再创建一个Tile层设置使用”格子模式”将Tile层的格子设为14行10列117宽118高横向偏移35纵向偏移10进行对齐。于是场景就变成了这个样子。保存一下再进入Resources\\UI文件夹找到StartUI并打开然后选中“开始游戏”按钮在右边的“事件响应”栏里双击“PickUp”事件这时就会进入到代码编辑器中的Button_1_onPickUp事件函数如果你之前用过PyMe的代码编辑器就应该很熟悉这套流程在函数中加入以下代码就完成点击后切换场景啦GameFun.SwitchScene(Battle)运行一下在开始场景点击“开始游戏”按钮这时可以看到场景跳转到“Battle”场景啦进入到这里基本的游戏框架搭建就完成了相信许多小伙伴已经大概了解了如何创建场景、界面并进行场景跳转这是一个非常好的开始游戏玩法的部分我们下节课再继续

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询