在接触新的游戏引擎的时候,如何能快速地熟悉并开发出一款新游戏?

引言

大家好,今天分享点个人经验。

有一定编程经验或者游戏开发经验的小伙伴,在接触新的游戏引擎的时候,如何能快速地熟悉并开发出一款新游戏

利用现成开发框架。

1.什么是开发框架?

开发框架,顾名思义,它是一个框架

通常会把引擎看似复杂的内容整理和浓缩到一套代码里面。

通过这套代码,你可以轻松实现游戏功能,编写游戏逻辑

开发框架通常会提供标准化的示例,你或者团队只需要模仿示例的代码,去实现流水化地开发。

开发框架还有什么好处?

2.为什么要使用开发框架?

主要有以下几个观点。

1.不重复造轮子

搭建过开发框架的小伙伴都知道,所谓的造轮子,就是把我们需要用到的游戏引擎提供的方法,整理到特定的里面去管理

开发的时候直接通过整理好的类去创造内容,举2个例子。

配置管理器,有了它,我们只需要准备好相关的配置,然后通过配置管理器的接口,就可以获取到配置的内容,而不需要去考虑配置如何加载到游戏。

SDK管理器,有了它,我们只需要在对应平台的类里面实现各自平台的特定方法兼容不同平台的内容。而不需要去考虑开发时怎么办、打包成安卓原生时怎么办或者打成小游戏的时候怎么办

2.模块化

开发框架会把相同功能或者特定功能的内容划分开来,形成一个个独立的模块。

例如关于资源的管理,会整理到资源管理器UI界面的相关操作,会整理到UI管理器等等。

3.模板化

开发框架通常会整理出比较清晰的模板示例。有明确的规范

例如管理视图的应该在哪里写实现游戏逻辑的应该在哪里写、甚至连游戏开发常量的声明地方都规范地比较仔细。

这样能够减少代码经过迭代后导致乱七八糟的局面,也是团队开发非常必要的一点。

4.不用填坑

一般框架是作者在开发游戏时整理出来的一个体系,在打造这个体系的过程中,难免会遇到一些坑,这些坑会随着开发框架的迭代去处理掉

因此我们使用框架,有着一种站在巨人的肩膀上开发的感觉,不用为了一些莫名其妙的问题浪费宝贵的时间

3.开发框架的选择

通常开发框架包含下面几种:

  • 开源框架: 一般会上传开源社区,这里建议选择一些使用人数较多的,多人使用,作者才会勤奋地迭代。

  • 商业化框架: 商业化框架,意味着需要付费才能使用。一般会相对于开源的更加稳定。

  • 商业游戏源码: 一般游戏开发团队会基于商业游戏的源码进行二次开发或者换皮。

个人开发者和新人,通常建议从免费的开源框架入手,通过给定的实例,同时结合官方教程和API文档,去理解如何驱动游戏开发。

有条件或者有决心小伙伴,可以考虑商业化的框架,付费的比免费的的好处就是,你或许以为付费仅仅是获取了知识,其实更多地是链接上作者或者作者的圈子,你的问题更容易被解决,这个收益是远远大于表面看到的。

公司团队,由于需要资金成本较大,不建议浪费时间在搭建框架,一般会考虑对应类型的商业游戏的源码进行二次开发或者换皮,但是也看具体有没有这类的源码,一般商店可能会出售。虽然可能不是比较完整的内容,但是也能节约大部分时间

有了开发框架之后,还有其他建议吗?

4.积累

框架只是我们开发功能时的一套工具,它是游戏开发中比较普遍内容的规范。然而需要实现一些特定的内容时,我们还是需要靠平时的积累

例如我们要用到重力感应去控制游戏时,我们需要知道怎么去监听陀螺仪,并且根据得到的参数驱动游戏内容。

再如我们要实现一些技能效果时,我们需要了解如何使物体旋转、位移

再如我们要实现一些游戏效果时,我们可能需要利用到Shader等等。

以上特定的内容一般不会在开发框架中植入,要我们平时的积累

当我们需要用到某些功能时,我们可以去查看官方API文档、可以去搜索引擎搜索、还可以通过商店去直接购置

为此笔者特定整理了一系列有趣又实用实例和教程,大家可以关注我,目标是完成100个。

结语

笔者整理了一些实用源码,可以扫码或者阅读原文看看,付费不仅是知识的获取,更是对笔者的支持和认可,感谢!

亿元源码杂货铺

在哪里可以看到如此清晰的思路,快跟上我的节奏!关注我,和我一起了解游戏行业最新动态,学习游戏开发技巧。

我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

AD:笔者线上的小游戏《贪吃蛇掌机经典》《填色之旅》《重力迷宫球》大家可以自行点击搜索体验。

实不相瞒,想要个在看!请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐专栏:

和8年游戏主程一起学习设计模式

8年主程手把手打造Cocos独立游戏开发框架

从零开始开发贪吃蛇小游戏到上线系列

游戏开发的技巧、心得、资讯

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/241293.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序、uniapp仿扎克新闻(附源码)

介绍 本着试试 mpvue 的态度开发此程序,界面主要是模仿 ZAKER 新闻,数据全部是由 Mock 随机生成的,使用的是 Easy-Mock 服务。本程序只开发了的几个页面,尝试了自定义组件,路由跳转及参数传递等功能。再开发下去只是组…

微信游戏开发:连接社交与娱乐的创新之路

在移动互联网时代,微信已经成为了人们日常生活中不可或缺的社交工具。而微信游戏,作为在这一平台上崛起的新兴产业,不仅给用户提供了更多娱乐选择,也为开发者们创造了独特的机遇。本文将探讨微信游戏开发的关键步骤、技术要点以及…

C# OpenCvSharp DNN 部署yolov5旋转目标检测

目录 效果 模型信息 项目 代码 下载 C# OpenCvSharp DNN 部署yolov5旋转目标检测 效果 模型信息 Inputs ------------------------- name:images tensor:Float[1, 3, 1024, 1024] -------------------------------------------------------------…

六、CM4树莓派USBRS转485串口通讯

一、串行通讯接口 串行通讯接口简称串口(UART) 采用串行通信方式的扩展接口,数据位一位一位的按照顺序传送 优点:通信线路简单,只要一对传输线就可以实现双向通信能够大大降低成本,适合远距离通信。 缺点…

【后端学前端】第三天 css动画 动态搜索框(定位、动态设置宽度)

1、学习信息 视频地址&#xff1a;css动画 动态搜索框&#xff08;定位、动态设置宽度&#xff09;_哔哩哔哩_bilibili 2、源码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>test3</title>…

紫光展锐CEO任奇伟博士:展锐5G芯筑基当下,迈向未来

12月5日&#xff0c;紫光集团执行副总裁、紫光展锐CEO任奇伟博士受邀出席2023世界5G大会5G产业强基发展论坛&#xff0c;发表了题为《展锐5G芯&#xff1a;筑基当下&#xff0c;迈向未来》的演讲。 ​ 世界5G大会由国务院批准&#xff0c;国家发展改革委、科技部、工信部与地方…

Re58:读论文 REALM: Retrieval-Augmented Language Model Pre-Training

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称&#xff1a;REALM: Retrieval-Augmented Language Model Pre-Training 模型名称&#xff1a;Retrieval-Augmented Language Model pre-training (REALM) 本文是2020年ICML论文&#xff0c;作者来自…

使用 MySQL连接 c#(简易)

目录 一&#xff0c;下载与本机MySQL相应版本的连接插件1&#xff0c;查找本机下载的MySQL版本2&#xff0c;进入MySQL网站下载连接插件 二&#xff0c;使用C#创建项目进行插件引用1&#xff0c;打开C#创建一个新项目2&#xff0c;引用下载的连接插件 三&#xff0c;进行连接&a…

指针浅谈(四)

在指针浅谈(三)中http://t.csdnimg.cn/wYgJG我们知道了数组名是什么&#xff0c;任何用指针访问数组&#xff0c;一维数组传参的本质是什么&#xff0c;这一次我们来学习二级指针&#xff0c;指针数组&#xff0c;以及如何用指针数组模拟二维数组。 1.二级指针 指针变量也是变…

jmeter接口测试之使用rsa算法加密解密的代码

本篇介绍jmeter 使用rsa算法进行加密参数 如果测试过程中&#xff0c;部分接口采用了rsa加密算法&#xff0c;我们的jmeter 也是可以直接拿来调用的&#xff0c;不需要开发配合去掉加密代码&#xff01; 直接上代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2…

CentoOS 7部署Samba

文章目录 &#xff08;1&#xff09;Samba概述&#xff08;2&#xff09;安装Samba&#xff08;3&#xff09;启动和管理Samba服务&#xff08;4&#xff09;查看Samba进程&#xff08;5&#xff09;介绍Samba配置文件&#xff08;6&#xff09;修改Samba配置文件&#xff08;7…

车联网助力自动驾驶发展

单车智能决策难点 芯片&#xff0c;成为自动驾驶的最大瓶颈 自动驾驶对芯片算力要求极高。要求自动驾驶处理器在每秒能够处理数百万亿次的计算&#xff1b; 自动驾驶对计算的实时性要求极高。任何一点时延&#xff0c;都有可能造成车毁人亡&#xff1b; 对低能耗有极大的…

气象监测设备的内容介绍

气象监测设备是基于无线通讯、物联网感知等技术而研发的多功能智能气象设备&#xff0c;用于监测二氧化碳、气压、雨量、风速、风向、光照度、空气温湿度、土壤温湿度、PM2.5/PM10等气象参数&#xff0c;通过无线通讯方式将数据传输到环境监控云平台上&#xff0c;以便相关人员…

2023快速上手新红利项目:短剧分销推广CPS

短剧分销推广CPS是一个新红利项目&#xff0c;对于新手小白来说也可以快速上手。 以下是一些建议&#xff0c;帮助新手小白更好地进行短剧分销推广CPS&#xff1a; 学习基础知识&#xff1a;了解短剧的基本概念、制作流程和推广方式。了解短剧的市场需求和受众群体&#xff0c…

【git教程】

目录 git与SVN的区别&#xff1a;集中式与分布式的区别Windows上安装Git创建版本库/仓库&#xff08;repository&#xff09;将文件添加到repository报错处理 查看仓库的状态版本回退工作区和暂存区管理和修改撤销修改删除文件远程仓库添加远程仓库警告解除本地和远程的绑定关系…

Windows环境提示“‘mysql‘ 不是内部或外部命令,也不是可运行的程序或批处文理件” 简易记录

在Windows环境下使用DOS命令窗登入MYSQL&#xff0c;提示“mysql 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。” 这意味着系统无法找到 mysql.exe可执行文件&#xff0c;这是因为 MySQL 没有正确安装或未添加到系统PATH环境变量中所致。 处理方法&#x…

蝴蝶Butterfly 数据集VOC+yolo-2000张(labelImg标注)

蝴蝶被誉为“会飞的花朵”&#xff0c;是一类非常美丽的昆虫。蝴蝶大多数体型属于中型至大型&#xff0c;翅展在15~260毫米之间&#xff0c;有2对膜质的翅。体躯长圆柱形&#xff0c;分为头、胸、腹三部分。体及翅膜上覆有鳞片及毛&#xff0c;形成各种色彩斑纹。今天要介绍的是…

GitHub Copilot - Elasticsearch 和 MySQL 单表查询耗时比对

当单表数据库超过百万后&#xff0c;数据库 like %xxx% 查询明显变慢&#xff0c;为了对比 Elasticsearch 的效果&#xff0c;将百万级的测试数据导入到 Elasticsearch 中对比看看效果。导入和查询 Elasticsearch 的过程完全通过 GitHub Copilot Chat 辅助编码。 Elasticsearc…

智能客服的应用——政务领域

#本文来源清华大学数据治理研究中心政务热线数智化发展报告 &#xff0c;如有侵权&#xff0c;请联系删除。 面对地方政务热线发展所面临的挑战&#xff0c;数智化转型已经成为了热线系统突破当前发展瓶颈、实现整体提质增效的关键手段。《意见》中也明确指出&#xff0c;政务…

任意文件读取漏洞

使用方法php://filter/readconvert.base64-encode/resourcexxx 任意文件读取漏洞 php://filter/readconvert.base64-encode/resourceflag 在url后边接上 以base64的编码形式 读取flag里面的内容 php://filter/readconvert.base64encode/resourceflag 用kali来解码 创建一个文…