小游戏开发指南及过程中的难点问题

如果仅仅针对个人开发者来讲,要独立开发一款大型游戏几乎无可能,更大成功的可能还是开发一款类似《羊了个羊》这样洗脑的小程序游戏。

所以这里主要论述小游戏开发的情况,也就是小程序游戏,首先从小游戏的开发流程来看:主要分为游戏策划、UI设计、音效制作、代码编程和测试上线几个大的流程,中间也会穿插关卡设计、规则设计、人物设计等环节,可以看到其实小程序开发是一个工程量较大的项目。

但从整个流程和其中的环节来看,小游戏开发需要开发人员具备以下几点能力:

  1. 有一定的编程基础,例如 JavaScript、TypeScript
  2. 至少熟悉一种游戏开发引擎,比如 Cocos、Unity等
  3. 对游戏机制、游戏系统有一定的理解
  4. 有一定的 UI 界面审美
  5. 能够开脑洞、有创意能力

一、基本的理论

1、小游戏的内核是什么?

小游戏是小程序的一个类目,所以关键是需要掌握小程序技术,小游戏是微信开放给小程序的更多的能力,让小程序开发者有了开发游戏的能力。小游戏没有WXSS、WXML、多页面等内容,但加了一些渲染、文件系统以及后台多线程的功能。

微信小游戏只支持 JavaScript,当然可以编译为 JS 的 TypeScript 以及 CoffeeScript 都可以作为开发语言使用。

其次是小游戏所支持的游戏库 API,主要包含 HTML5 的 Canvas 2D API 和 WebGL 1.0 API,使用任何一种 API 都可以完成游戏最重要的渲染功能,不过不能够混用,除此之外,只有 WebGL 渲染模式可以支持 3D 渲染。

2、游戏引擎有什么作用

...........................\..........\MapColRowDialog.java ...........................\..........\MapDesignPanel.java ...........................\..........\MapDesigner.java ...........................\..........\compile.bat ...........................\..........\map.txt ...........................\..........\run.bat ...........................\..........\wyf\CodeFrame.class ...........................\..........\...\MapColRowDialog.class ...........................\..........\...\MapDesignPanel.class ...........................\..........\...\MapDesigner.class ...........................\..........\img\Diamond.png ...........................\..........\...\camera.png ...........................\GL_MASE\.classpath ...........................\.......\.project ...........................\.......\AndroidManifest.xml ...........................\.......\default.properties ...........................\.......\src\wyf\wpf\Ceil.java ...........................\.......\...\...\...\Constant.java ...........................\.......\...\...\...\Floor.java ...........................\.......\...\...\...\KeyThread.java ...........................\.......\...\...\...\MazeActivity.java ...........................\.......\...\...\...\MySurfaceView.java ...........................\.......\...\...\...\Score.java ...........................\.......\...\...\...\TextureRect.java ...........................\.......\...\...\...\ThreadSetView.java ...........................\.......\...\...\...\TradPair.java ...........................\.......\...\...\...\TradPairGroup.java ...........................\.......\...\...\...\ViewMainMenu.java ...........................\.......\...\...\...\Wall.java ...........................\.......\res\values\strings.xml ...........................\.......\...\raw\gameback.mp3 ...........................\.......\...\...\gotobject.mp3 ...........................\.......\...\...\win.mid ...........................\.......\...\layout\load.xml ...........................\.......\...\......\win.xml ...........................\.......\...\drawable-mdpi\bb.png ...........................\.......\...\.............\ceil.bmp ...........................\.......\...\.............\control.png ...........................\.......\...\.............\floor.bmp ...........................\.......\...\.............\icon.png ...........................\.......\...\.............\load.png ...........................\.......\...\.............\number.png ...........................\.......\...\.............\reddot.png ...........................\.......\...\.............\robot.png ...........................\.......\...\.............\wall.bmp ...........................\.......\...\.............\win.png ...........................\.......\...\.........ldpi\icon.png ...........................\.......\...\.........hdpi\biankuang.png ...........................\.......\...\.............\icon.png ...........................\.......\...\.............\zjm.jpg ...........................\.......\gen\wyf\wpf\R.java ...........................\.......\bin\GL_MASE.apk ...........................\.......\...\classes.dex ...........................\.......\...\resources.ap_ ...........................\.......\...\wyf\wpf\Ceil.class ...........................\.......\...\...\...\Constant.class ...........................\.......\...\...\...\Floor.class ...........................\.......\...\...\...\KeyThread.class ...........................\.......\...\...\...\MazeActivity$1$1.class ...........................\.......\...\...\...\MazeActivity$1.class ...........................\.......\...\...\...\MazeActivity.class ...........................\.......\...\...\...\MySurfaceView$SceneRenderer.class ...........................\.......\...\...\...\MySurfaceView.class ...........................\.......\...\...\...\R$attr.class ...........................\.......\...\...\...\R$drawable.class ...........................\.......\...\...\...\R$id.class ...........................\.......\...\...\...\R$layout.class ...........................\.......\...\...\...\R$raw.class ...........................\.......\...\...\...\R$string.class ...........................\.......\...\...\...\R.class ...........................\.......\...\...\...\Score.class ...........................\.......\...\...\...\TextureRect.class ...........................\.......\...\...\...\ThreadSetView.class ...........................\.......\...\...\...\TradPair.class ...........................\.......\...\...\...\TradPairGroup$1.class ...........................\.......\...\...\...\TradPairGroup.class ...........................\.......\...\...\...\ViewMainMenu.class ...........................\.......\...\...\...\Wall.class ...........................\.......\src\wyf\wpf ...........................\.......\gen\wyf\wpf ...........................\.......\bin\wyf\wpf ...........................\.......\src\wyf ...........................\.......\res\values ...........................\.......\...\raw ...........................\.......\...\layout ...........................\.......\...\drawable-mdpi ...........................\.......\...\drawable-ldpi ...........................\.......\...\drawable-hdpi ...........................\.......\gen\wyf ...........................\.......\bin\wyf ...........................\地图设计器\wyf ...........................\..........\img ...........................\GL_MASE\src ...........................\.......\res ...........................\.......\gen ...........................\.......\bin ...........................\.......\assets ...........................\地图设计器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值