游戏开发中常见问题梳理
Nicole Potter
专注于Unity3D游戏开发
展开
-
U3D游戏开发按钮相关
一篇常用unity的UI按钮代码逻辑相关,带你新手入门!原创 2024-05-03 16:14:12 · 486 阅读 · 0 评论 -
U2D寻路相关(A*寻路算法)
介绍A*寻路的简单实现原创 2024-04-02 10:44:31 · 160 阅读 · 0 评论 -
U3D开发中Json管理器的常用思路
对于U3D游戏开发中,对于json数据的存储和读取通常有默认json,和litjson的解决方案(当然还有其它的),本次将对于json数据读取与存储提供思路。用于存储游戏相关数据,用于配置游戏数据。对于网络游戏,可以存储一些客户端的简单不重要数据,可以用于传输信息。缺点:数据容易被修改,只要找到文件位置,就可以轻易进行数据修改。原创 2024-04-02 09:24:44 · 296 阅读 · 0 评论 -
U3D游戏开发中对于UI面板基类的框架构建代码思路
需要注意的是,对于你的面板使用了Update方法的,一定要重写其方法并且继承保留父类的方法,否则根据父类逻辑,你的UI面板显示都是alpha为0,(即:创建面板,但是你无法看见其显示)在U3D游戏开发中,我们常常使用UI逻辑,对于大量的UI逻辑,我们会选择构建UI面板基类,让所有面板UI继承,从而减少代码量,今天我将介绍关于UI面板基类框架搭建的代码思路。对于大量UI使用的工程当中,存在大量UI时,我们会考虑代码查找的方式获取UI,防止UI数量过多,拖拽麻烦甚至关联出错,以上提供查找UI的代码思路。原创 2024-03-19 09:08:54 · 369 阅读 · 0 评论 -
U3D游戏开发中对于提示信息的管理思路(提示面板管理器)
此处使用继承了单例模式的基类(此处没给出源码,感兴趣可以私聊我获取),显示面板(使用了搭建的UI框架,并调用其中的初始化方法,初始化面板内显示的文字信息。对于这种UI复现率高的面板,我们可以将其制作成面板管理器,每一次只改变面板内的提示信息。在游戏当中,或许会存在各式各样的提示面板,例如:密码账号错误!以上代码使用了UI框架,可以不必通过拖拽等方式获取特定UI,如果你没有搭建类似的框架,可以直接使用拖拽方式,当然效果是一致的。以上代码思路非常简单,没有复杂逻辑,希望可以帮助一些开发小白。原创 2024-03-19 08:41:18 · 238 阅读 · 0 评论 -
U3D游戏开发中使用框架与UGUI+JSON配置文件的代码思路
今天我们要介绍的ugui+json代码思路配合了策划的表格,通过json与表格数据相互转换得到表格之中数据,程序代码通过json读取数据应用在游戏之中。UGUI是目前游戏开发中常见的UI思路,除此之外还有GUI,NGUI等等UI方案,NGUI在很早之前使用率较高,随着UGUI的推广,大部分游戏开始使用UGUI的UI思路。在U3D游戏开发之中,我们常常会搭建框架,主要作用是减少代码的复用率,提高开发效率,在开发中(特别是协同开发)我们搭建框架往往考虑框架的实用性以及易于理解性。原创 2024-03-12 10:03:24 · 229 阅读 · 0 评论 -
U3D游戏开发中的数据管理器思路
如果是一个稍大的项目,代码复用率较高,我们会考虑框架的搭建。数据管理器内部主要用于存储各类数据(例如存储用户登录数据,游戏内部音效数据,用户背包数据,用户个人账户数据<例如玩家的金币数量,体力,其他货币,玩家名字,玩家等级等等玩家个人信息>),在内部封装数据的存储和修改数据的方法,并且将其直接数据持久化,在外部需要更改时可以搭建事件中心,使用事件触发的形式保存数据引用数据框架,或者其他方式引用数据框架。下面展示项目数据框架源码(仅供参考,部分框架源码没有拿出,希望大家理解思路,欢迎私聊讨论)原创 2024-03-12 09:33:41 · 294 阅读 · 0 评论 -
游戏开发常见操作系列之技能信息管理系统一
当然可以使用配置文件的写法,后续可能会更新配置文件的写法,敬请期待。后续有优化方法会及时更新。U3D游戏开发中建立技能信息系统可以使用以下思路。(策划提供txt文档)原创 2024-01-28 19:06:17 · 147 阅读 · 0 评论 -
U3D游戏开发中控制摄像机缩进与位置旋转系列
使用以上代码可以解决摄像机的问题,很多项目中都可以直接使用。我还有很多系列的代码,几乎都是完整代码可运行的一些代码逻辑,我后续会更新更多的内容,包括2D系列,热更新系列等等,需要的可以关注我噢!为了提供更好的学习环境未开启收费模式,希望大家共同学习,做更好的游戏!(游戏人最后的挣扎)U3D游戏开发中,PC端游戏往往可以实现摄像头移动,比如缩进以及以玩家为轴左右旋转。原创 2024-01-24 15:21:30 · 533 阅读 · 0 评论 -
U3D游戏开发控制玩家攻击以及移动方向控制系列
以上是我demo中这一部分的完整代码,对于demo感兴趣的小伙伴可以私聊我,了解大致过程。以上代码提供给大家学习以及思考。包括实例化点击等等,适合有游戏开发基础的游戏人观看,以下代码没有仔细优化,但是大致思路如下,我很期待与你讨论更加优质的方法。游戏开发中常用几种操作,控制玩家攻击以及点击鼠标控制玩家具体移动方向。接下来展示完整代码与大家一同分享。原创 2024-01-24 15:09:38 · 347 阅读 · 0 评论 -
U3D游戏开发中摇杆的制作(UGUI版)
在PC端模拟摇杆,实现玩家通过控制摇杆让玩家移动,以下是完整代码:希望我的笔记对你有所帮助,喜欢就点赞收藏吧!原创 2024-01-17 22:17:21 · 384 阅读 · 1 评论 -
U3D游戏开发中摇杆的制作(NGUI版)
希望我的笔记对你有所帮助,下一篇将解密UGUI版摇杆的制作。在PC端模拟摇杆,实现控制摇杆让玩家或者物体移动。原创 2024-01-17 22:13:53 · 357 阅读 · 0 评论 -
U3D游戏开发中控制主角人物移动
以上代码如有疑问欢迎私聊问我,希望我的笔记对您有所帮助。本篇将介绍主角人物移动的代码逻辑以及动画控制。原创 2024-01-16 20:41:00 · 512 阅读 · 0 评论 -
游戏开发创建操作之玩家信息系统的建立
这个类中包含玩家的一些技能和经验值加成,包括血量,速度,魔法值等等。(几乎是非常完整了),每次触发只需要在其中调用方法即可。原创 2024-01-16 20:34:12 · 407 阅读 · 0 评论 -
游戏开发常见操作梳理之NPC药品商店系统(NGUI版)
其中使用了UICamera.isOverUI主要是用于判断点击的是不是在UI上面,防止UI点击穿透(可能会点击到UI下面的NPC。其它的代码几乎不需要过多的解释,如果对于代码不明白的欢迎私聊问我。其中有一些代码可能关联了其它系统,直接复制使用可能会有些问题,可以直接删除修改即可,或者查看我的其它系统笔记补充该系统。(后续会出UGUI+Json的版本,敬请期待!原创 2024-01-15 23:17:56 · 454 阅读 · 0 评论 -
游戏开发常见操作梳理之NPC任务系统
以上就是任务系统的完整逻辑了,适合于有一定基础的小伙伴,没有基础的小伙伴只需要正确拼接应该有的UI以及NPC即可,有一些逻辑可能关联了其它的系统,你可以自行选择删除,如果有疑问的点欢迎大家来向我提问,我很高兴为大家解答。为了暗示玩家点击NPC对话,我们通常还会制作不同的鼠标指针提示玩家。多数游戏存在任务系统,接下来介绍通过NPC触发任务的游戏制作代码。原创 2024-01-15 23:03:05 · 479 阅读 · 0 评论 -
游戏开发常见操作梳理之小地图的制作
游戏中一般存在小地图系统,实际上就是设置一个新的摄像机放置在玩家的正上方,然后在小地图上显示新摄像机看见的东西就可以了。原创 2024-01-14 21:19:35 · 381 阅读 · 0 评论 -
游戏开发常见操作梳理系列之——玩家信息的显示系统
在游戏中,有不少游戏在左上角会出现玩家的头像和等级以及血量,这就是玩家的信息显示系统,那么这些是如何制作的呢?接下来我将讲讲代码的操作,其它操作我会在其它笔记中一一说明,敬请期待!信息的显示相当简单就是控制一些UI,然后在其它系统里面填写相应的方法即可,以下使用NGUI,你可以自己替换。原创 2024-01-14 21:13:21 · 340 阅读 · 0 评论 -
游戏开发之常见操作梳理——武器装备商店系统(NGUI版)
具体思路和核心方法全在代码里讲述了,如果你有什么不懂的,欢迎来问我,我很高兴为您解答!游戏开发中经常出现武器商店,接下来为你们带来武器装备商店系统的具体解决办法。(后续出UGUI+Json版本,敬请期待)这个你还需要结合我前面的笔记里面的信息管理系统一起使用才能发挥成效(在背包系统那篇笔记之中)原创 2024-01-14 21:05:42 · 326 阅读 · 0 评论 -
游戏开发常见操作系列之敌人系统的开发一(U3D)
在开发游戏的过程中,我们常常会出现一些敌人攻击我们玩家,并且实现掉血以及死亡的现象,敌人还会源源不断地生成,这是怎么制作的呢,接下来为大家提供方法。其中使用了NGUI,后续会更新其它方法,敬请期待!使用HUDText实现扣血时显示文本,直接使用让开发更方便。敌人生成的逻辑(你可以理解为敌人窝,用来产生敌人的)原创 2024-01-14 20:54:35 · 339 阅读 · 0 评论 -
游戏开发中常见系统梳理之背包系统的实现一
其中最最重要的就是接下来的类了,一个关于物品信息的类,有了它才能操控背包系统正常运作,其中文本读取的是txt的文本,其中的定义规则你可以自己定义,然后拿给策划填写就可以了,注意不要空格!(我之前是这样写的,结果我的其它协作者使用报错了,原因是策划期间修改了文本,并且没有仔细检查,所以大家一定要注意!原创 2024-01-14 20:44:00 · 686 阅读 · 0 评论 -
游戏开发常见操作梳理之角色选择一
主要是使用数组将预设体(角色)存储起来进行切换,其中包括一些Unity的操作,有操作不清楚的欢迎私聊问我,我很高兴为您解答!接下来的笔记中,我将使用自带的数据持久化系统对其进行操作,实现角色的选择页面。(后续会更新xml系列的文件配置方法实现角色的选择,敬请期待!进入游戏后,我们经常会进入角色选择的界面。通常是左右两个按钮可以更改角色供玩家选择。对于这种界面我们通常使用数据持久化将角色信息存储起来。原创 2024-01-14 20:23:56 · 694 阅读 · 0 评论 -
游戏开发常用实践操作之按动任意键触发
(以下是对于Unity中的操作,使用的UI是NGUI,对于核心操作没有影响,你可以自己置换)接下来一些笔记会对于一些大大小小的实践操作进行记录,希望对你有所帮助。希望我的笔记对你有所帮助,如果你有什么问题,欢迎私聊我解决!原创 2024-01-14 20:14:04 · 391 阅读 · 0 评论 -
在Unity中通过字典的值查找相应的键(C#)
在游戏开发中,除了使用配置文件之外。在使用字典时,如何通过值找到键呢?下面这篇博文将为您提供完整代码。原创 2024-01-01 21:29:40 · 654 阅读 · 0 评论 -
实现一个物体按照曲线运动(正弦余弦)
通过控制速度和距离可以控制物体的运动轨迹。想要实现一个物体的曲线运动,需要一个。面朝向的运动速度以及左右方向上。移动逻辑,以下代码写在。原创 2023-10-16 08:46:00 · 66 阅读 · 0 评论 -
使用线性插值实现物体的跟随移动
(在这里提供移动方法参考,具体公式在Unity基础系列中已经说明)原创 2023-10-14 19:35:21 · 158 阅读 · 0 评论 -
Unity开发设置音效
一定要把相应的按钮关联上,之后就可以得到你想要的效果了!需要导入这个组件然后导入项目音乐。原创 2023-08-08 23:12:19 · 705 阅读 · 0 评论 -
在Unity中一些Loading界面制作的小技巧
将图片导入到Unity中,可以创建一个文件夹保存它们,直接拖拽进来即可。(图片拖拽到Rawimage上,就会显示图片)一定要记得把进度条以及文本拖拽到脚本上面去,不然就无法运行。添加Slider和文本,可以调整成自己喜欢的形状和颜色。后面的一些数字就代表着它们,会被写进代码里面实现跳转。添加Canvas,image,Rawimage.其实上面就用到了计时器,效果一致。时间的控制大家可以自行调整。原创 2023-08-08 00:04:37 · 1091 阅读 · 1 评论 -
在Unity中控制物体移动到指定位置
这个代码是从远处到达游戏开始的起始位置,起始位置为指定位置。直接运行时物体向前移动直到指定位置。原创 2023-08-07 23:50:36 · 695 阅读 · 0 评论 -
在Unity中的image实现透明度渐变
最后把它们都挂载在image(其它的一些东西也可以实现)上面,然后运行就可以得到渐变效果了。其中Alpha=0表示为透明,1则表示为有色。添加组件与先前一致,此处略。原创 2023-08-06 23:38:35 · 2018 阅读 · 0 评论 -
在Unity中进行游戏开发,如何设置默认图标
选择你想要的图标拖入其中,然后运行就会发现默认图标了。(默认图标类似于鼠标默认图标)按照上图操作然后点开Player Settings。原创 2023-08-05 21:22:58 · 450 阅读 · 0 评论 -
如何修改Unity的语言系统(中英语言切换)
按照上图步骤完成,点击Editor language旁边的语言,选择中文或者English然后重启Unity就会发生改变了。原创 2023-08-05 21:15:45 · 1957 阅读 · 1 评论 -
(Unity)从资源商店中下载资源
点击Search online就会进入资源商店,这个时候你可能要登录一下自己的账号,不然下载的时候也会让你登录,否则无法安装。如果你不是商业用途,在学习阶段就放心点击接受。点击在Unity中打开,然后再导入资源即可。在里面搜索资源,我一般选一些免费的资源。首先打开Unity.原创 2023-08-05 21:08:33 · 746 阅读 · 0 评论 -
关于生命周期函数的一些问题
MonoBehaviour类的生命周期函数的自动调用机制,正是其中的一个例子,它使得开发者可以专注于逻辑实现而不必过多关注底层的技术细节。Unity的自动调用机制是通过引擎内部的消息传递机制实现的。当游戏对象的状态发生变化时,Unity会自动向该对象发送相应的消息(例如Start、Update等),并根据是否实现了相应的回调函数来决定是否调用该函数。Update函数会在每个游戏帧更新时被调用,通常用于实现游戏对象的逻辑行为。这种自动调用机制确保了游戏对象的逻辑行为可以在正确的时间点得到执行,原创 2023-08-04 15:41:53 · 43 阅读 · 0 评论 -
常见问题梳理系列之虚方法与抽象方法的区别
这与C++不同,相信很多小伙伴因此产生了许多疑惑。抽象方法又叫做纯虚方法,那么虚方法与纯虚方法有什么区别呢?下面我们将展开说说。抽象方法就是abstract修饰的方法,与虚函数相同,必须被访问,不能是private。原创 2023-07-10 21:52:35 · 542 阅读 · 0 评论 -
常见问题梳理系列之this()调用相关
this相关的一些基础知识在C#系列中已经讲解完毕,在此了解一些this五种用法之中的一种易错类型。关于this的调用相关的报错点将较为详细地讲述。原创 2023-07-10 20:41:08 · 78 阅读 · 0 评论 -
常见问题梳理系列之里氏替换原则as的使用
基本知识不再赘述,这篇笔记将说说as使用的一些报错问题。原创 2023-07-09 22:06:58 · 44 阅读 · 0 评论 -
常见问题梳理系列之运算符重载相关
运算符重载在C#系列中已经讲述地比较清楚了,这篇笔记针对运算符重载的一些报错问题进行阐述。原创 2023-07-09 14:09:38 · 47 阅读 · 0 评论 -
常见问题梳理系列之拓展方法相关
基础知识不再赘述,这里我们将着重讲解拓展方法相关的报错问题。目录1.string中未包含定义或者采用没有参数的方法2.打印结果为ConsoleApp8.Q 3.正确做法①有返回值类型②无返回值类型 4.其他注意事项在其拓展方法中添加参数,如:public static string Speak2(this Q str,st原创 2023-07-08 22:57:34 · 32 阅读 · 0 评论 -
常见问题梳理系列之索引器相关
C#索引器的基础在C#系列之索引器中有所描述,这篇笔记将更加详细地梳理索引器相关报错问题。(以类中的索引器为例)原创 2023-07-07 19:20:41 · 54 阅读 · 0 评论