上次提到unity提供了脚本绘制Tilemap的API,今天就是报告成果的日子啦!这次Tilemap游戏物体的设置是沿用上一篇文章的,如果要做出这种立体效果的话需要到上一篇文章去看哦,这里就不重复了。 传送门:1、瓦片地图在脚本中绘制Tilemap只需要调用SetTile()方法,用法如下: tilemap.SetTile(坐标,瓦片); 也就是说想要实现自动生成地图只需要设置好这
很多同学对shader的了解简直令人发指,不得不承认我之前的文章很失败,没有达到指引效果。经过我深深的反思,本系列设定起点还是太高,仅仅着眼于本质不能让很多同学收获学习图形学的实效。我已经反省过了,让这个系列更贴近初学者,你跟随着这篇东西去一步步操作,就能得到一些实际可用的Shader。还是使用Unity作为测试工具,因为用他的人的确很多。在这个小白丛生的圈子里说到图形学,大部分人都告诉你shad
上一篇我们了解了该算法的大致计算过程,下面我们通过midpoint displacement算法(Diamond Step、Square step)创建地形                                  (一)
转载 2024-09-05 10:29:13
289阅读
之前的博客中已经说了随机房间生成:但实现房间生成只是整个地图生成最初最简单的一步。下面讨论如何随机生成连接房间的通道。 房间的通道一般要满足以下特性和特征:1.保证所有随机生成的房间都可以通过通道从起点到达终点,不出现未连接或连接中断的情况。2.通道在生成的过程中不能穿过房间内部。3.考虑是简洁直接的连接方式,还是更为曲折的通道。 好了,现在眼前出现了很多随机生成的房间,那么问
转载 2024-06-04 12:26:35
320阅读
【为什么要做自动化工具】工具类的创建是为了解决实际问题或者优化既有流程,我们来先看看一些项目里面经常遇到的问题。下面这个工具就是可以直接创建一个功能的基础脚本类,就不用每次去复制上次的代码了。然后再帮我们把那些乱七八糟又数不胜数的按钮、文字、图片组件都自动生成在脚本里面,然后自己去关联好引用,一下就能节省好多重复的活。效果图####简单的 一层####复杂点的 管理Panel 子管理Panel 孙
转载 2024-05-04 13:54:32
237阅读
Unity特性目录UnityEngine中CreateAssetMenuAttribute 对ScriptableObject派生类进行标记ContextMenuItemAttribute 为字段添加鼠标右键点击事件RangeAttribute 范围特性SpaceAttribute 控制Inspetor面板的间隔HeaderAttribute 增加一个label描述MultilineAttrib
1、引言2、模板方法模式详细介绍2.1、模板方法模式的定义2.2、模板方法模式的结构2.3、模板方法模式的类图实现2.4、C#举例3、模板方法模式的优缺点4、应用情景5、 应用举例(unity)6、总结 1、引言   说到模板,我们很容易想到生活中的例子,像“简历模板”、“论文模板”、“竞选模板”等。而这些模板有一个共同的特征就是,它们有一个约定俗成的格式,我们能可以拿着这些模板按照我们自己的实
引言:上一篇文章介绍了,利用System.IO的接口,收集路径下所有文件夹的方式设置asset bundle name,这一次介绍另一种方法。原理: 经同事提醒,发现Unity有原生的资源管理器AssetPostprocessor,官方描述:AssetPostprocessor lets you hook into the import pipeline and run scripts pr
原因在 Unity 中使用 TextMeshPro 的文本解决方案,当要生成字库图集时,需要通过插件提供的 【Font Asset Creator】工具,但是每次都需要重新设置选项,如下所示:解决反编译编辑器查看其代码,照着其实现步骤再实现一遍,注意的是升级插件的话,也要看下实现的代码是否需要改动。另外,自动处理多个字体的部分逻辑如下: public void Update() {...
原创 2021-08-20 14:44:37
3205阅读
#自动化代码生成 ##一.前言 由于之前写过关于UI框架的文章,这篇基于之前的基础,添加了自动生成代码的功能; 如果学习过程有困惑可以跳转到之前的文章《Unity——基于UGUI的UI框架》; ##二.效果展示 ##三.打包UIFrame 我使用的是Rider编辑器,用其他的也可以; 目的就是将之前 ...
转载 2021-10-25 19:36:00
997阅读
2评论
UGUI自动化–正篇UIBaseGenerate通过UGUI自动化的前面几篇文章介绍的常用UGUI控件的封装,接下来终于要步入正题了。没错今天就开始介绍如何根据UI控件的名字自动生成变量然后自动将控件和变量序列化。废话不多说,先上图。UISample_UI如上图的界面所示,我们搭建一个简单界面如上所示,一个按钮以及一个界面标题。接下来我们看下其对应的Prefab结构。请注意Prefab里面的标题Q
目录1.参考资料2. 代码添加层2.1创建C#类,生命静态构造方法2.2判断层是否存在2.3添加层3.momo版本修改版4.完整代码(两个版本)4.1 InitializeOnLoad版本4.2 AssetPostprocessor版本1.参考资料代码添加层,借鉴于 雨松MOMO的Unity3D研究院之脚本自动添加tag和Layer,他的这个版本是比较早的,现在的版本不完全支持,需要做修改。另外一
转载 2024-05-05 19:42:14
101阅读
场景切换后灯光显示不正常,昏暗问题 Unity中light窗口没有去勾Auto Generate并且点击Generate Light主线关卡未解锁的情况下,能点击关卡按钮进入游戏 确保把未开启关卡的按钮禁用levelButton[i].GetComponent<Image>().raycastTarget = false;发布exe重进游戏发现游戏进度只保留了解锁关卡进度,并没有保存每
转载 2024-07-15 16:15:18
51阅读
制作这个东西最初的想法是因为在之前的公司工作的时候,发现有一个这个蛮方便的,离职后,发现要自己写一些UI的赋值和定义的内容,实在是太麻烦了,然后就想这自己做一个简单版本的UI脚本生成器,优化自己的工作效率,然后结合目前的内容,做一个简单的版本的。只是实现了一些相对来说比较基本的内容。先看一下图吧:点击一下,然后选择制作好的 UI 预设:这里做了一些判断,只能选择 Canvas 下面的一个子物体作为
1、简述在Unity游戏开发中,使用预制体(Prefab)是一种有效的方式来重复利用对象和组件,提高开发效率。然而,当项目规模逐渐增大时,手动编写与每个预制体相关联的代码脚本可能会变得繁琐。为了提高开发效率,我们可以通过自动生成代码的方式,根据预制体的属性和组件生成相应的代码脚本。2、为什么需要自动生成代码?手动编写每个预制体相关的代码脚本可能会导致以下问题:重复劳动: 随着预制体数量的增加,手动
转载 2023-12-16 02:05:29
56阅读
unity自动生成关卡 我们的关卡由充当图块的不同块组成。 硬编码所有职位不仅对我本人,开发人员,而且对游戏设计师而言都是一种痛苦。 我需要使设计和测试水平足够快的东西。 并独立于开发人员。 因此,游戏设计师只需将一个文件放入Unity中即可读取,并且关卡将显示在屏幕上。 我虽然一会儿怎么做。 我首先介绍JSON文件。 我来自移动应用程序领域,因此我习惯于将JSON用于所有内容,因此在这里使用
转载 2024-08-08 15:29:23
61阅读
1.创建文件夹 //using System.IO; Directory.CreateDirectory(%%1); 2.创建文件 //using System.IO; File.Create(%%1); 3.删除文件 //using System.IO; File.Delete(%%1); 4.删除文件夹 //using System.IO; Directory.Delete(%%1);
转载 2024-06-28 10:35:50
22阅读
Unity2017.3已经发布,其中一大新功能是:程序集定义文件(Assembly Definition File),下面文中我们就简称ADF 得益于此功能,开发者可以在一个文件夹中自定义程序集。定义明晰的依赖关系,可以确保脚本更改后,只会重新生成必需的程序集,减少编译时间。 项目越大脚本越多,编译时间必然会越长。在进行项目迭代时,这很容易制约效率,因此设置好程序集定义文件可以提高工作效率,减
目录前言一、程序生成贴图Texture二、程序生成材质Material三、程序挂载脚本Scripts四、程序开关其他脚本(Scripts)或物体(GameObject)五、程序生成网格前言我们在写unity脚本的时候,有时会碰到无法单纯使用手工拖拽或导入资产,需要程序脚本直接生成或控制一些资产的情况,因此本文的目的在于汇总这些操作方法。一、程序生成贴图Textureusing System.Col
sulecollider、spherecollider等,我们判断出对应的...
原创 2023-04-27 12:51:09
308阅读
  • 1
  • 2
  • 3
  • 4
  • 5