
unity教程
文章平均质量分 78
爱编程的鱼
“某一刻发现屋里有腐烂的臭味 寻着味道找去 原来是枕头里藏了发霉的梦和我腐烂的理想 摸索着床底下发现了一具尸体 原来是年少的自己”
展开
-
Unity—从入门到精通(第一天)
Unity是一款跨平台的游戏引擎,支持多种操作系统,包括Windows、Mac、iOS和Android等。凭借其强大的功能和灵活性,Unity成为了当今业界最受欢迎的游戏开发工具之一。它的核心特性包括可视化编辑器、C#脚本编程环境、内置物理引擎,及一个资源商店,开发者可以在其中获取各种素材、插件和工具,大幅提升开发效率。原创 2025-03-19 21:15:20 · 2183 阅读 · 0 评论 -
Java游戏服务器开发如何学
反射也是我们做游戏服务器常用的,特别是事件响应和处理,我们把对应的处理和对应的事件联系起来,底层都是通过反射,根据对应的事件编号等规则找到处理的反射对象或方法,底层来处理,这样业务逻辑层只需要接入服务的处理类就可以了,底层通过反射来把对应的事件映射派送到对应的服务。日志对于游戏服务器开发来说是非常重要的,特别是上线的时候,日志是最重要的一个调试手段,线上版本代码出了bug,也只能通过日志来查,所以一个好的日志系统非常的重要,Java的日志系统也是非常成熟的,比如log4j等,很多日志系统可用。原创 2024-12-07 08:27:23 · 716 阅读 · 0 评论 -
Unity应该如何学
首先学会编辑器的基本操作,摆放3D物体,添加物理刚体,添加组件,运行等基本操作。Unity虽然是可视化编辑,上手简单,但是正式商业项目的时候,需要考虑项目的稳定和可维护性,就不能很任性的像学基础一样,随意的挂代码,随意的绑定资源,节点到编辑器,我们需要自己来制作一个可维护的游戏开发框架, 做框架需要对游戏开发中的多岗位协作(程序,策划,美术)需求要非常清楚,同时要做好资源管理,内存控制,框架还要考虑上线以后的资源更新和逻辑更新做好版本管理和热更新等。如何学习Unity呢?游戏开发中的经典的专题与算法。原创 2024-12-07 08:26:30 · 883 阅读 · 0 评论 -
BEPUphysicsint碰撞事件详解
上一节我们給大家介绍了BEPUphysicsint的基本使用,在游戏开发中我们经常要使用物理引擎的事件,所以本节我们详细的讲解BEPUphysicsint 的物理事件。此物理引擎会产生了碰撞事件与非碰撞事件,碰撞事件大家好理解,非碰撞事件例如: 物理Entity的update事件,Entity的activation/deactivation事件等。本文主要详解由物理碰撞所导致的事件。今天的分享就到这里了,关注我们,持续的学习BEPUphysint3D物理引擎实战系列。原创 2024-12-07 08:25:19 · 265 阅读 · 0 评论 -
BEPUphysicsint碰撞事件详解
上一节我们給大家介绍了BEPUphysicsint的基本使用,在游戏开发中我们经常要使用物理引擎的事件,所以本节我们详细的讲解BEPUphysicsint 的物理事件。此物理引擎会产生了碰撞事件与非碰撞事件,碰撞事件大家好理解,非碰撞事件例如: 物理Entity的update事件,Entity的activation/deactivation事件等。本文主要详解由物理碰撞所导致的事件。今天的分享就到这里了,关注我们,持续的学习BEPUphysint3D物理引擎实战系列。原创 2024-12-04 20:38:37 · 562 阅读 · 0 评论 -
BEPUphysicsint定点数3D物理引擎使用
今天的BEPUphysicsint的基本使用和概念就分享到这里,关注我们,学习如果在Unity中构建基于确定性的3D物理引擎BEPUphysicsint。(1) 创建一个物理世界Space,并开启模拟迭代;(2) 添加一个物理物体Entity到世界;(4) 添加静态的Mesh形状的物理物体;(3) 物理引擎的基本处理与操作使用;(5) 处理物理事件;原创 2024-12-04 20:37:20 · 506 阅读 · 0 评论 -
BEPUphysicsint定点数3D物理引擎介绍
帧同步的游戏中如果用物理引擎,为了保证不同设备上的结果一致,需要采用定点数来计算迭代游戏过程中的物理运算。也就是我们通常说的定点数物理引擎(确定性物理引擎)。本系列教程给大家详细的讲解如何在你的项目中内置一个确定性物理引擎。确定性物理引擎我们使用github上开源的物理引擎BEPUphysicsint v1库。今天的分享就到这里了, 关注我们, 接下来还会继续更新定点3D物理引擎系列教程。(2) BEPUphysicsint v1的由来;(1) 定点数计算的原理与优缺点;原创 2024-11-29 19:49:45 · 563 阅读 · 0 评论 -
RVO动态避障技术方案介绍
我们在开发游戏的时候经常会遇到这样的问题,当我们寻路的时候,其它人也在寻路,如何避免不从其它人的位置穿过。这个叫做动态避障,目前主流的解决方案就是RVO。本节我们来介绍一些Unity 实现RVO的相关资料,后续在详细的讲解ROV算法的原理。今天的RVO的介绍到这里了,关注我们,后续更新RVO实战系列,让你的游戏能动态避障。原创 2024-11-29 19:48:26 · 957 阅读 · 0 评论 -
Unity 3D 游戏发布一口气讲完!(o-ωq)).oO 困
PC 是最常见的游戏运行平台。随着欧美游戏的崛起,PC 平台随之发生游戏登陆大潮。FilePlatformWindowsMacOS XLinuxx86x86_64InspectorPCMac&LinuxIcon当完成了上述设置,也可使用默认值。便可回到Build Setting 对话框。5.单击右下角的 Build 按钮,选择文件路径用于存放可执行文件。发布的内容是一个可执行的exe文件和包含其所需资源的同名文件夹,单击该文件后便会出现如下图所示的游戏运行对话框。点击了play!后即可运行游戏。原创 2024-10-04 08:00:51 · 1637 阅读 · 0 评论 -
Unity 3D导航系统一口气讲完!☆⌒(*^-゜)v THX!!
过去,游戏开发者必须自己打造寻路系统,特别是在基于节点的寻路系统中,必须手动地在 AI 使用的点之间进行导航,因此基于节点系统的寻路非常烦琐。Unity 3D 不仅具有导航功能,还使用了导航网格(navigation meshes),这比手动放置节点更有效率而且更流畅。更重要的是,还可以一键重新计算整个导航网格,彻底摆脱了手动修改导航节点的复杂方法。原创 2024-10-01 18:16:39 · 1259 阅读 · 0 评论 -
Unity 3D 模型与动画一口气讲完!(o-ωq)).oO 困
三维模型是用三维建模软件建造的立体模型,也是构成 Unity 3D 场景的基础元素。Unity 3D 几乎支持所有主流格式的三维模型,如 FBX 文件和 OBJ 文件等。开发者可以将三维建模软件导出的模型文件添加到项目资源文件夹中,Unity 3D 会将其显示在 Assets 面板中。原创 2024-10-01 18:12:46 · 1360 阅读 · 0 评论 -
Unity3D物理引擎一口气讲完!(づ ̄3 ̄)づ╭❤~ (万字讲解)
早期的游戏并没有强调物理引擎的应用,当时无论是哪一种游戏,都是用极为简单的计算方式做出相应的运算就算完成物理表现,如超级玛丽和音速小子等游戏。较为常见的物理处理是在跳跃之后再次落到地上,并没有特别注重物理表现效果。当游戏进入三维时代后,物理表现效果的技术演变开始加速,三维呈现方式拓宽了游戏的种类与可能性,越来越好的物理表现效果需求在短时间内大幅提升。如何制作出逼真的物理互动效果,而又不需要花费大量时间去撰写物理公式,是物理引擎重点要解决的问题。在 Unity 3D 内的引擎设计中,使用硬件加速的。原创 2024-09-28 14:52:02 · 2594 阅读 · 0 评论 -
Unity3D地形系统一口气讲完!谢啦!!☆⌒(*^-゜)v
在三维游戏世界中,通常会将丰富多彩的游戏元素融合在一起,比如游戏中起伏的地形、郁郁葱葱的树木、蔚蓝的天空、、凶恶的猛兽等,营造出身临其境的游戏沉浸感,让玩家置身游戏世界,忘记现实。地形作为游戏场景中必不可少的元素,作用非常重要。Unity 3D 有一套功能强大的地形编辑器,支持以笔刷方式精细地雕刻出山脉、峡谷、平原、盆地等地形,同时还包含了材质纹理、动植物等功能。通过地形编辑器可以让开发者实现游戏中任何复杂的游戏地形。原创 2024-09-27 06:56:30 · 1890 阅读 · 0 评论 -
Unity 3D UGUI 系统一口气讲完!(^U^)ノ~YO
Canvas画布是摆放所有UI元素的区域,在场景中创建的所有控件都会自动变为Canvas游戏对象的子对象。若场景中没有画布,在创建控件时会自动创建画布。不论是你主动创建还是被动创建,系统都会自动创建一个名为的游戏对象,该对象挂载了若干与事件监听相关的组件,可供设置。在画布属性栏中有一个属性。在渲染模式下,场景中的UI会被渲染到屏幕上,如果屏幕大小或分辨率发生改变,画布会自动适配。该模式下不需要UI摄像机,UI将永远出现在所有摄像机的最前面。Sort Order渲染模式类似于渲染模式。原创 2024-09-26 06:01:24 · 1191 阅读 · 0 评论 -
Unity图形用户界面!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。(万字解析)
游戏开发过程中,开发人员往往会通过制作大量的图形用户界面( Graphical User Interface,GUI )来增强游戏与玩家的交互性。Unity 3D 中的图形系统分为OnGUINGUIUGUI等,这些类型的图形系统内容十分丰富,包含游戏中通常使用到的按钮、图片、文本等控件。概念图形用户界面是指采用图形方式显示的计算机用户操作界面。与早期计算机使用的命令行界面相比,图形界面相对来说在视觉上更具有吸引力,信息传达能力更生动、交互性更强。《植物大战僵尸》中的GUI。发展。原创 2024-09-24 21:07:33 · 1337 阅读 · 0 评论 -
Unity 3D 脚本开发基础教程一口气讲完!(。・∀・)ノ
脚本可以说是一款游戏的灵魂,Unity 3D 脚本用来界定用户在游戏中的行为,是游戏制作中不可或缺的一部分,它能实现各个文本的数据交互并监控游戏运行状态。但是以 Boo 作为开发语言的使用者非常少,若继续投入大量资源来支持这一开发语言显然不值得,所以在 Unity 5.0后,不再支持 Boo。目前,Unity 3D 官方教程及实例基本都是以和为开发语言。学习难度低、学习门槛低,是十分适合初学者的一门脚本编辑语言。编程是基于和编程语言的,相对于难度较高。但是。原创 2024-09-22 18:39:38 · 2160 阅读 · 0 评论 -
Unity视图界面一口气讲完!(๑•̀ㅂ•́)و✧
在 Hierarchy 视图中,单击Create按钮,可开启与 GameObject 菜单下相同的命令功能选项。在 Hierarchy 视图中,单击右侧的倒三角可以保存场景或加载场景。在 Hierarchy 视图中,为游戏开发者快速查找当前场景中的某个对象提供了搜索区域。在 Project 视图中,顶部有一个浏览器工具条。左边是Create菜单,该菜单具有与Assets菜单下Create命令相同的功能。游戏开发者可以通过 Create 菜单创建脚本、阴影、材质、动画、UI等资源。原创 2024-09-21 09:40:14 · 3070 阅读 · 0 评论 -
Unity 3D 概览一口气讲完!\(@^0^@)/
Unity 3D也称Unity,是由 Unity Technologies 公司开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具。Unity 3D可以运行在Windows和MacOS X下,可将游戏发布至WindowsMacWiiiPhoneWebGL(需要 HTML5)和Android等平台。也可以凭借插件发布网页游戏,支持Mac和Windows平台的网页浏览,是一个全面整合的专业游戏引擎。业界现有的商用游戏引擎和免费游戏引擎数不胜数。原创 2024-09-21 09:30:34 · 1988 阅读 · 0 评论 -
自走棋制作(二)-UI制作
很明显,每次刷新都是刷新四个,然后刷新出来以后,这些都会有英雄的信息。我们每次都会随机四个。这里的预制体就是整个的一个空物体,然后给它添加一个空物体专门来显示image,然后添加一个text显示名字,一个text显示价格。至于刷新和加经验都是按钮,然后所有的UI都已经搞定了,没什么太多的问题。比如这里生成四个新的英雄,我是直接赋值的,后期的话,肯定是需要随机的,然后那些随机的英雄都是需要用Excel做成表格,或者用TXT来保存,也是可以的。UI的话呢,注要是做和游戏关联性大的,比如刷新,升级,英雄信息等。原创 2024-07-13 20:48:18 · 578 阅读 · 1 评论 -
自走棋制作(一)-地图搭建
最近这个自走棋突然火起来了,像LOL的云顶之奕,那是火的一塌糊涂。当然除了它,其他的游戏貌似也有自走棋,dota好像就有。和它的游戏玩法有很大的关系。英雄、羁绊相生相克,还有选秀阶段的方式,为了平衡差距,让最弱的玩家先选择装备和英雄。OK,废话不多说,先来看看自走棋地图搭建好是什么样子的。大体就是这么个样子,周围的环境因素,我就不弄了。然后一个大的地面也是用plane搞定,注意一个点,就是所有的六边形需要比地面高,因为它需要渲染在上面。后期这些六边形的一些状态,我们就通过代码搞定就可以了,后期再补上。原创 2024-07-06 06:56:18 · 580 阅读 · 1 评论 -
DOTS Instancing合批:如何针对单个渲染实体修改材质参数
比如位置数据,每次渲染一个实体的时候传递一次。每个物体在渲染的时候,引擎都会把材质中的参数数据传递给渲染管线,然后渲染管线把参数数据进一步的传递给渲染物体的Shader,这样当我们修改材质对象里面的参数后,渲染使用该材质对象的物体时,由于参数都是从材质对象里面获取,所以得到的现象就是修改材质一个的参数,使用该材质的所有的物体都会受到影响。加上以后,每次修改Entity组件里面的数据时,在渲染entity之前,会把对应的数据传递给渲染管线中的uniform变量,而不是去改变材质对象里面的参数数据。原创 2024-07-03 21:11:53 · 649 阅读 · 1 评论 -
基于高度的纹理混合shader
这端代码很好理解,通过splat_control这张贴图的四个通道控制_Splat0~_Splat3这四张贴图的混合,如果splat_control对应通道的值为1,那么这个通道对应的贴图就完全显示,为0则完全不显示,通过修改splat_control贴图就可以实现想要的混合效果了;解释一下这段代码,先对比两张贴图的高度,高度差超过0.3的会被舍弃掉,为了防止在边缘以外的地方也被保留下来了,所以后面再乘一次splat_control,最后做一个标准化处理,把他们按比例缩放到0-1这个区间。原创 2024-06-26 11:23:07 · 879 阅读 · 1 评论 -
unity在模型上绘画
在我的上一篇文章【基于高度进行混合的shader】里面分享了如何利用高度图进行贴图的混合,里面使用了T4M插件来绘制控制混合的control贴图。像T4M这样直接在mesh上对贴图进行绘制的功能对于美术的同学肯定不陌生,很多建模工具都支持直接在模型上对贴图进行绘制,如C4D的bodypaint工具、allegorithmic公司推出的Substance Painter都支持直接在模型上进行绘制。这里简单说一下如何在UNITY里实现这个在模型上绘画的功能。原创 2024-06-24 11:57:58 · 840 阅读 · 1 评论 -
Unity3D插件开发教程(四):获取地址组件
打开面板了,第一个参数为窗口的标题,第二个参数为默认打开的文件夹目录,第三个参数选择的文件夹的默认名字。使用很简单,用一下就可以了。前几天做导出安装包插件时,遇到了个问题,我需要获取地址,可是每次都要手动填入(复制粘贴)地址是个很费时不讨好的事,所以我就写了一个获取地址的小组件。有人问到,如果我不是选择文件夹,而是选择文件怎么办,其实做法也是一样的,当然,我也会在源代码里面把选择文件的逻辑加上。一个文本和一个按钮,文本显示选择的路径(路径为空时显示提示语,并且无法选择),点击按钮打开面板选择文件夹。原创 2024-06-19 20:31:32 · 1084 阅读 · 1 评论 -
如何实现Moba游戏野怪的AI系统
OK,那么这个野怪的AI到底怎么做的?首先我们需要闭着眼睛想想我们玩游戏的时候,别人的AI咋做的,然后我们就模仿别人的做出来。那么我们都玩过,也知道野怪的”脾气”,你不打它,它就会在自己的一亩三分地里面,不会乱跑。如果你过去打它,那么它也会反击你,直到它丢失视野或者超过了它可移动的最大范围,它就会回去原来的地方待着。既然是中立的野怪,那么它是不属于任何一方的资源,大家是靠本事获取的。那么今天我们就做一个野怪的AI系统,这个系统不是非常的完整的一个野怪系统,因为是抽时间随便做的,但是基本的功能都是有的。原创 2024-06-10 18:49:01 · 536 阅读 · 1 评论 -
Neovim 配置全面解析(上)
当我们在命令行中输入nvim不带任何路径并敲击回车的时候,就会打开这个界面,通常我们会在这个界面中配置最常用功能,比如打开最近编辑过的文件,快速打开项目文件夹,快速修改快捷键等。使用官方配置的图像:使用字体生成器:[Text to ASCII Art Generator (TAAG) (patorjk. com)](-- dashboard-nvim (新增)vim.notify ("没有找到 dashboard")returnendconfig = {header = {[[ ]],原创 2024-05-27 06:33:16 · 2686 阅读 · 1 评论 -
Unity3D插件开发教程(三):制作拾色器ColorPicker
这里分别对四个属性进行判断,然后分别调用相应的转换函数,把数值转换成Color类,然后再分别格式化显示各种数值,最后调用。,因为它是比较常用的输入框组件,它显示的是字符串,返回的是用户输入的字符串结果。如果大家有什么意见和建议,或者是有什么疑问,或者是有想看的知识点内容,都欢迎到评论区发上你们的评论。方法要使用“#FFFFFFFF”样式,所以,先要把“0x”替换掉,然后加上“#”。)的颜色值是分开四个输入框的,复制起来很不方便。当然,转换的时候要把空格和“f”替换掉,然后进行分割字符,再使用。原创 2024-05-23 06:43:53 · 1138 阅读 · 1 评论 -
Unity3D插件开发教程(二):制作批处理工具
在制作关卡时,很多时候会遇到同一个物体可能需要复制多份,然后分布在不同地方。这时候,就需要做一个批量工具来加快制作的效率了。如果大家有什么意见和建议,或者是有什么疑问,或者是有想看的知识点内容,都欢迎到评论区发上你们的评论。增加一个彩蛋,做了一个100*100*100的正方体矩阵然后直接占满8g内存.......好了,接下来,就是本文的重点之一,绘制面板了。一个好的工具能让你的工作进度加快不少。绘制完面板,然后就开始写复制部分的逻辑。然后我们定义几个变量,用于后面使用。好了,接下就开始写绘制面板的逻辑了。原创 2024-05-20 18:05:49 · 841 阅读 · 1 评论 -
Unity3D插件开发教程(一):自定义锚点组件
EditorHandlesMenuItemSelection使用Handles类在Scene视图绘制一个正方体整个插件的结构:首先我们在目录下创建一个代码(注意命名空间可能会报错,可以修改一下命名空间)。就是我们要实现的锚点组件了。它只有简单几个属性用于记录锚点的参数。所以在运行时并不会对效率产生多大的影响。/// 线框颜色/// 是否使用全局缩放/// 是否使用Handles标准尺寸以上的属性待会在使用到的时候会一一给予介绍。然后我们在AnchorComponent/Editor。原创 2024-05-18 18:11:11 · 1457 阅读 · 1 评论 -
Unity内置寻路算法-导航网格
寻路算法非常重要,因为绝大部分的游戏都需要用到,比如RPG游戏中的任务系统,任务点击任务后需要自动寻路到目标位置,再比如Moba游戏,我们点击地图,英雄就会自动寻路到点击的地方。这就是寻路算法的作用了。首先我们要用unity的导航网格组件,我们就需要烘焙场景,然后根据烘焙出来的数据,才能进行具体寻路,比如什么地方可以走,什么地方不能走,爬坡的最大高度等等,所以你怎么烘焙你的场景,就会出现怎么样的寻路地图。当你看到你的场景出现浅蓝色的区域时,那么你就成功的烘焙了你的场景了,浅蓝色区域就是可以行走的区域了。原创 2024-05-16 18:29:55 · 384 阅读 · 1 评论 -
Unity Animation--动画剪辑(创建动画)
如果GameObject已经分配了一个或多个动画剪辑,则“创建”按钮不可见。而是,现有剪辑之一在“动画”窗口中可见。要在动画剪辑之间切换,请使用“动画”窗口左上角播放菜单下的菜单(要在具有现有动画的GameObject上创建新的动画剪辑,请从此菜单中选择“中尚未分配任何动画剪辑,“创建”按钮出现在“动画窗口”时间轴区域的中央。下图显示了Unity是如何从动画窗口中的新动画剪辑开始分配这些片段的。同样,Unity会提示您保存新的空动画剪辑,然后再对其进行操作。见图4:“项目”窗口中的“新建动画剪辑”原创 2024-05-16 18:27:25 · 593 阅读 · 1 评论 -
Unity Animation--动画窗口指南(使用动画视图)
如果在播放头位于关键帧之间时进行了更改(因此显示的值是一个插值),则将使用您输入的新值在该点创建一个新的关键帧。在上面的示例中,机械臂的GameObject层次结构的各个部分都在同一动画剪辑中进行了动画处理。在下面的图像中,“动画”视图(左)显示了当前选定的GameObject及其子子GameObject(如果它们也受此Animation控制)使用的动画。右侧的“视图和“层次结构”视图中,这表明“动画”视图显示了附加到当前所选GameObject的“动画”。在尚未录制动画的新创建的剪辑中,此列表为空。原创 2024-05-12 07:11:52 · 2115 阅读 · 1 评论 -
Unity Animation--动画剪辑
动画剪辑是Unity动画系统的核心元素之一。Unity支持从外部来源导入动画,并提供创建的能力使用“动画”窗口在编辑器中从头开始。原创 2024-05-02 11:48:11 · 819 阅读 · 1 评论 -
Unity Animation--动画系统概述
Unity具有丰富而复杂的动画系统(有时称为“”)。Animator窗口中的动画状态机的典型视图。原创 2024-04-22 00:30:00 · 875 阅读 · 1 评论 -
Unity--UI操作方法(多种分辨率的UI)
可以使用“检查器”中的“锚定预设”下拉菜单,或在“场景视图”中拖动三角形的锚定手柄,将左上角按钮的锚定设置为左上角。在这些低密度屏幕上,按钮的显示不应大于高密度屏幕上的按钮,而应以相同的大小显示。由于在这种情况下,景观分辨率宽1.5倍,但也短1.5倍,因此这两个因素会保持平衡,最终比例因子为1,这意味着按钮将保持其原始大小。在现在的游戏和应用程序中需要支持多种不同的分辨率,尤其是UI布局需要能够适应这种分辨率,Unity中的UI系统包括用于此目的的各种工具,可以通过各种方式进行组合。器”组件中,可以将其。原创 2024-04-22 00:15:00 · 1457 阅读 · 1 评论 -
热门动画插件DoTween的使用
做游戏基本都会用到插件,它能让你的效率更高,因为它里面都是写好了的方法,只要用就可以了。在众多动画插件中,DoTween脱颖而出,因为它用起来很简单也很方便,自然用的人就多了。你想想,你的UI动画,你难道要自己做动画吗?首先我们去Unity的AssetsStore下载DoTween这个插件,这里我们搜索了你会发现有两个,其中一个是免费的,我们用免费的就可以了,哈哈。然后我们就可以开始使用DoTween了,因为它一个插件有很多的方法,我不可能在这里直接给全部讲完,这也不现实,再说我也不是全部都知道的呀。原创 2024-04-16 20:59:43 · 581 阅读 · 1 评论 -
游戏当中的声音系统
这里我不多说,比如今天我们做的是赛车游戏,大家都应该知道赛车的话,随着车的档位车速的不同,它发动机发出的声音也是不一样的。然后我们就通过速度的变化,给用上不同的音频片段,切换的时候就是音色上场的时候了,正常音色是0.5的值,越大声音越尖锐,然后我们就让它插值变大到最大就切换音频片段,这样就可以了。就比如LOL,如果你对面玩的塞恩,大家都知道它把,改版后是可以大范围开车的,如果你不带耳机,你就听不到塞恩开车的声音,那么很可能上一秒你在美滋滋的补兵,下一秒你就别人杀了。所以,游戏的声音系统是非常重要的。原创 2024-04-16 20:58:05 · 556 阅读 · 1 评论 -
Cocos Creator 3.8 开发2D水面波纹Shader
Cocos Creator的版本不一样,可能导致以前编写的Shader无法正常运行,这种其实很好解决,我们在开发Shader的时候,基于现在Cocos Creator的版本先创建一个现有的模板出来,然后再将关键代码移植过去。Cocos 的uv 左上角为(0, 0),我们要在图片的上方做水波纹,那么片元的uv.y < y0的片元就丢弃, uv.y >= y0的就正常显示。2D 水面波纹的主要原理就是给定一个正选波的边界,在范围内的片元uv就显示,在范围外的片元uv就不显示。2D 波浪的基本技术原理。原创 2024-04-13 19:04:58 · 1632 阅读 · 1 评论 -
关于游戏当中击退/击飞效果的制作
我们在产生蘑菇云的同时,也在这里创建一个球形的碰撞区域,这区域就是爆炸范围,然后再遍历这个区域,如果这个区域内用携带刚体组件的物体,那就让他们飞。这就是击飞效果主要点了,圈出来的地方,第一处就是模拟一个爆炸范围的函数,第二个就是添加爆炸力的函数,有了这个两个,坦克就可以被炸飞了。添加爆炸力的函数就是给带有刚体的物体添加一个力,第一个参数就是力的大小,然后第二个参数就是爆炸中点,第三个就是爆炸的半径大小,根据这个半径,越靠近爆炸中心就会受到越大的力。最后一个参数的意义就是它的爆炸权重吧,暂且这么叫它。原创 2024-04-11 18:40:15 · 1428 阅读 · 1 评论 -
回合制游戏战斗模块的制作
首先,我们要知道回合制的机制,一人一次,然后呢,也并不是一队伍的人都是最先攻击的,还是要看速度来的。但是原则就是一人一回合,然后下一个。在这里我们认为双方都有可移动的普通攻击,所以基本上双方都有很多的共同点,那么我们可以先写一个基类,然后让子类继承基类的一些方法或重新就可以了。整个的逻辑就是由管理类来发布命令,比如让cube方先攻击,然后等cube方所有人都攻击完了,最后再换队伍攻击。这是部分代码,有点多,其他的不贴了,然后我们需要把脚本挂载在每个角色上面,最后我们要用一个管理类来管理我们的战斗双方。原创 2024-04-06 09:43:05 · 1041 阅读 · 1 评论