1、游戏立项

微信小游戏中有一款《欢乐停车场Plus》的小游戏,大家可以搜索玩下。这是一款益智类的小游戏,游戏中有红、黄、绿、蓝、紫5辆豪车6个停车位,玩家通过可行走路线移动小车,最终让各颜色的小车停到对应的颜色车位,则完成本关挑战。接下来的日子,我将同大家一步一步的来实现这款小游戏,从零基础入门微信小游戏的开发和发布。

2、本篇内容

CocosCreator零基础制作《欢乐停车场Plus》微信小游戏  三、游戏场景制作

3、文章检索

1)、【微信小游戏实战】零基础制作《欢乐停车场》一、游戏设计

2)、【微信小游戏实战】零基础制作《欢乐停车场》二、关卡设计

3)、【微信小游戏实战】零基础制作《欢乐停车场》三、游戏场景制作

4)、【微信小游戏实战】零基础制作《欢乐停车场》四、游戏关卡脚本实现

5)、【微信小游戏实战】零基础制作《欢乐停车场》五、游戏玩法脚本实现

6)、【微信小游戏实战】零基础制作《欢乐停车场》六、游戏结束

7)、【微信小游戏实战】零基础制作《欢乐停车场》七、游戏发布

4、游戏实战

1)、安装cocos creator 并新建ParkingLot(停车场)项目;

2)、在资源管理器中创建如下目录(在资源管理器区域 右键->新建->文件夹),Prefabs(预制体)用来存放关卡和道路,Scene(场景)我们的游戏场景,Scripts(脚本)游戏中js脚本,Texture(纹理)游戏中用到的美术资源。

3)、在Scene目录上,右键->新建->Scene,命名为Game,这就是我们的游戏场景。

4)、双击我们的Game场景,然后再层级管理器中选中Canvas,在属性检查器中设置游戏分辨率720*1280(竖屏),适配方式选择FitWidth;

5)、接下来我们在层级管理器区域创建3个空节点(在层级管理器区域 右键->创建节点->创建空节点),名称分别为node_game(游戏界面);node_level(关卡选择);node_result(过关界面);这跟我们第一篇脑图分析中的三块是对应的;

6)、完善node_level节点:注意层级关系,spr_bg背景(在node_level上右键->创建节点->创建渲染节点->Sprite精灵),scv_level是关卡列表(右键->创建节点->创建UI节点->ScrollView滚动视图)。ScrollView添加完后,修改成截图所示的样子。

7)完善后的node_level节点:

注意看右边的属性检查器,多了一个Widget组件(点击属性检查器下面的添加组件->添加UI组件->Widght,作用是不同分辨率的适配)和BlockInputEvents组件(添加组件->添加UI组件->Block Input Events,作用是屏幕层)。

再一个注意点就是scv_level->view->content, 属性检查器中多了一个Layout组件(添加组件->添加UI组件->Layout,作用是自动布局),自动布局什么意思呢?我们看到关卡选择界面中每行4关,每行4关这样的有序排列,放在以前我们实现的方式是通过计算坐标放到对应的位置来实现,现在通过Layout可以更简单的实现了,省了自己计算坐标位置了。

8)、完善node_result节点,如下图;spr_开头表示的是精灵(Sprite)节点,lbl_开头表示的是文字(Label)节点,btn_开头的表示的是按钮(Buttong)节点,toogle_开头的表示的是复选按钮(Toogle)节点。

9)、完善node_game节点,这也是游戏中最关键的一部分,这部分就不再详细介绍步骤了,按照我们8)步骤说的命名的规则对应的节点类型,自己尝试搭建。

最终效果如下图:

spr_head_bg:场景编辑器中上半部分,包含的内容分别是:spr_level_bg(温度计样子的背景),spr_lv(LV图片),lbl_lv(显示当前关),btn_menu(返回关卡选择按钮),btn_reset(重置按钮);

node_parking:整个游戏最关键大部分包括:parking0,parking2 ...... ,parking5 分别是空,蓝,红,黄,绿,紫6个精灵,用来表示车位;car1,car2 ...... car5 分别代表蓝红黄绿紫5辆不同颜色的豪车。

node_blockInput:是一个空节点,包含一个widget组件和一个BlockInputEvents组件,作用:移动车的时候,车还没有移动到指定位置,屏幕不可点击。简单说就是车在移动过程中,屏幕不可点击。

10)、到此整个场景就搭建完成,搭建的过程中注意节点的层级关系,节点的类型。

预制体制作:

1)、关卡选择页面,每一个关就是一个预制体。最终效果如下图:

制作预制体也很简单,在我们的Game场景的层级管理器面板中,新建一个Node节点,命名为pfg_level,然后再此节点上右键,添加一个sprite节点,添加一个label节点。然后再Game场景的层级管理器面板中,鼠标左键选中pfg_level节点并长按,拖动到资源管理器面板中的Prefabs文件夹中,这样一个Prefab(预制体)制作就完成了。

2)、游戏过程中,路同样是预制体。一个正六边形,点之间的相互连线,其实就三种长度不同的连线;建立三个road prefab分别为road1,road2,road3;

以road1为例,最终效果如下图:road2,road3只是属性检查器中的Sprite Frame不同而已。road2,road3不再做赘述。

整个的资源管理器面板最终效果如下:

在Scripts文件夹上右键->新建->javascript,新建三个脚本文件,后面我们来实现。Game.js整个游戏脚本;LevelData.js关卡配置脚本;Utils.js通用方法脚本,如本地数据的读取和写入等。

5、游戏总结

1)、如有问题,欢迎留言,加QQ群交流。QQ群: 1群:418177552(已满)  2群:858799494

2)、下一篇我们将一起来用代码来实现选择关卡部分。

转载于:https://www.cnblogs.com/zhangdw/p/9845228.html

【微信小游戏实战】零基础制作《欢乐停车场》三、游戏场景制作相关推荐

  1. 【微信小程序】零基础学 | 小程序语法

    在前面的章节中讲过WXML用于描述页面的结构.WXS用于结合WXML构建出页面的结构.WXSS用于描述页面的样式,它们三者都有特定的语法.其中,WXSS与CSS相差不大,所以就不单独列出了.本章主要讲 ...

  2. 【微信小程序】零基础搭建微信小程序 前端开发

    已经用微信开发者工具做完了基础页面,正在思索如何搭建后台._为了理清思路边写博客边思考. 前端开发 小程序的框架 页面设置 在app.json里写这个小程序的所有页面,写在第一个的编译时默认第一个展示 ...

  3. 小象学院 零基础Python入门 案例三 BMR计算器v_3.0+v_4.0

    尝试自己凭记忆完整的把整一个案例的代码打出来,成功. 但在格式:如注释等方面要注意.

  4. 小象学院 零基础Python入门 案例三 BMR计算器v_1.0+v_2.0

    [以上是写一个程序的基本框架!!!要养成良好习惯!!!] (1) 若整数和浮点数一起进行计算,输出结果为浮点数.因为浮点数的范围更大一些. (2)转换成 浮点数 float() 转换成 整数 int( ...

  5. 前端《Vue.js从入门到项目实战》PDF课件+《微信小程序实战入门第2版》PDF代码调试

    JS进行开发,正如一切的编程语言都立足于电元信号的正负极,即01码,可为什么软件都不采用二进制编码来 进行开发呢?这里面牵扯到一个成本的问题,这正是影响项目领导者进行决策的关键因素.Vue项目与原生J ...

  6. 微信小游戏开发零基础教程(一)-CocosCreator

    微信小游戏零基础教程(一)-CocosCreator 最终效果预览 准备工作 创建工程 测试第一个场景 最终效果预览 本教程最后制作的游戏效果: 准备工作 下载 微信开发者工具 最新版->下载地 ...

  7. unity跑酷怎么添加金币_【Unity3D实战】零基础一步一步教你制作跑酷类游戏(填坑完整版)...

    在两个月前曾写了一篇<[Unity3D实战]零基础一步一步教你制作跑酷类游戏(1)>,里面一步一步演示了制作跑酷类游戏,然而由于时间原因,只写到了让角色往前移动为止.这个坑一直没有时间去填 ...

  8. 【Unity3D实战】零基础一步一步教你制作跑酷类游戏

    原转载自 https://blog.csdn.net/sun15980/article/details/51093048 ,已失效 新 [Unity3D开发小游戏]Unity3D零基础一步一步教你制作 ...

  9. 小程序获取头像试试水 02《 程序员变现指南之 微信QQ 小程序 真的零基础开发宝典》

    本系列教程是针对粉丝的变现教程,还不是粉丝的可以关注我并且到社区:https://bbs.csdn.net/topics/603436232 进行打卡,不是老粉的也可以获取最终的技术变现学习,最终还有 ...

  10. 小程序的 HelloWord 01《 程序员变现指南之 微信QQ 小程序 真的零基础开发宝典》

    本系列教程是针对粉丝的变现教程,还不是粉丝的可以关注我并且到社区:https://bbs.csdn.net/topics/603436232 进行打卡,不是老粉的也可以获取最终的技术变现学习,最终还有 ...

最新文章

  1. mongodb数据库显示obj_MongoDB基础(三)—基本操作及管理 | leon的博客
  2. 编程小白的第一本python入门书-《编程小白的第一本Python入门书》读书笔记
  3. php中四种webservice实现的简单架构方法及实例
  4. Spring配置错误java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataS
  5. 【今日CV 计算机视觉论文速览 第109期】Wed, 1 May 2019
  6. 【java】java ReentrantLock 源码详解
  7. VBA 提取 Office 2016 工具栏图标
  8. Linux系统录制gif动画
  9. Python实现日程表
  10. 燕山大学教务系统官网计算机学院,燕山大学教务处_燕山大学教务信息网_燕山大学教务管理系统入口...
  11. 计算机与电视如何通过网络连接,怎么设置电脑和电视共用一根网线上网
  12. 基于4G路由器的救护车联网方案:生命,刻不容缓
  13. 阿里巴巴常用的12种开发工具,赶紧收藏
  14. 如何挑选无线路由器?
  15. 异地北京办理居住证详细材料
  16. VMware界面大小调整两种方法超详细教程
  17. java数组下标异常越界程序,Java程序运行时会自动检查数组的下标是否越界,如果越界,会抛出下面的哪一个异常?...
  18. Java OutputStream.write()的功能简介说明
  19. Python算法- 剪绳子
  20. MATLAB | 如何在MATLAB中使用python全部colormap配色

热门文章

  1. 广数工业机器人五点法_广数工业机器人制造项目二期建设即将完成,年产逾千台 - 市场新闻 - 产业资讯 -新战略机器人产业研究院 -新战略机器人网-工业、服务、AGV机器人产业资讯传播者...
  2. (转)名企工资一览表 更加明确 自己的目标。
  3. 软考初级程序员易错题:在统一建模语言 (UML)中,( )展现了 一组对象以及它们之间的关系, 给出了系统的静态设计视图或静态进程视图,描述了( )中所建立的事物 实例的静态快照。
  4. 一键申报税务,就找小帮软件机器人...一键申报
  5. ATE工程师的进阶之路(LabVIEW方向)
  6. labview和c语言,到底哪个更好:LabVIEW还是C语言?
  7. 你可千万别小瞧了自媒体这个行业,没有文化,适合自媒体创业吗?
  8. Centos7下安装Seafile实现私有网盘
  9. vue项目更改网页标题与图标
  10. 使用IDEA打包程序到jar包