英文原文:https://www.jacksondunstan.com/articles/5145  像 List 和 Dictionary<TKey, TValue> 这样的集合类型是 C# 中的基本工具。可悲的是,我一直在代码库中看到它们在代码库中被同样的误用。今天我们将看看前 5 个问题,并学习如何轻松避免它们!双字典查找  让我们从一个非常常见且非常浪费的情况开始。它看起来是这
Unity中的UGUI源码解析之事件系统(1)-概述从今天开始通过几篇文章一步步深入, 围绕事件系统展开对UGUI源码的解析.网上大部分文章讲的是事件系统是什么, 怎么用. 我的文章会在这些基础之上进一步探讨其原理和设计思想, 当然, 只是我的一家之言, 也不一定正确(特别是不同版本之间的差异是存在的). 所以还是希望能给大家提供的是一种思路, 省去大量实践和抠细节的研究, 大家可以基于我的研究(
当我们在Kubernetes(K8S)中部署容器化应用程序时,通常会遇到需要设置默认资源(Default Resources)的情况。这些默认资源可以帮助我们更好地控制容器的资源分配,以确保应用程序能够获得所需的计算资源。 下面我将向你介绍如何在Kubernetes中设置Unity Unity默认资源。Unity Unity是一种跨平台的游戏开发引擎,广泛用于游戏开发。在使用Unity Unit
原创 2024-04-24 09:56:15
302阅读
之前写了Unity3D热更新全书系列Blog 提出了下载、加载、脚本三个方面的开源类库 下载方面有EasyDown加载方面有GameObjParser脚本方面有C#Light另外有一个没有独立成库,但是到处都用的Myjson。 2015,重头思考这些事情,有了不一样的感悟,于是也有了新的规划 1.首先了C#Light的语法解释问题变得臃肿低效,重头开始了L#项目。目前L#项目已经进入Beta阶段,
转载 2024-08-14 11:16:28
79阅读
Transform.TransformPoint //可以将坐标点从局部坐标系转换到全局坐标系 Transform.InverseTransformPoint //可以将坐标点从全局坐标转换到局部坐标系 Transform.TransformDirection // 对向量从局部坐标转换到全局坐标 Transform.InverseTransformDirection // 对向量从
转载 2024-08-22 21:16:51
64阅读
0x00 前言最近读到了一个今年GDC上很棒的分享,是Sebastian Aaltonen带来的利用Ray-tracing实现一些有趣的效果的分享。 其中有一段他介绍到了对Signed Distance Field Shadow的改进,主要体现在消除SDF阴影的一些artifact上。 第一次看到Signed Distance Field Shadow是在大神Inigo Quilez的博客上,
转载 2024-08-26 21:19:56
69阅读
51、 如何切换和加载场景: SceneManager.activeSceneChange();当场景发生变换时(加载新的场景时)触发 SceneManager.LoadScene();加载方法(1,通过场景标号;2,通过场景名字;) 52、 关于ScenceManager的其他方法: SceneManager.LoadScene();异步加载,可以用来设置显示加载的进度条 SceneManage
转载 2024-08-12 20:43:08
274阅读
# Unity Android调用Unity:实现跨平台互动的无限可能 ## 引言 在游戏开发中,Unity 是一个广受欢迎的引擎,能够在多个平台上运行,而 Android 则是最广泛使用的移动操作系统之一。通常,我们在 Unity 中开发完一个模块后,希望能够与其他平台或服务进行互动。本文将探讨如何在 Unity 中调用 Android 特有的功能,并提供简单的代码示例,帮助开发者在 Uni
原创 11月前
129阅读
Unity 封装 倒计时(计时器,CountDownTimer),实现周期更新、技能冷却等功能  在做游戏时,时常会用到计时器,例如技能冷却,物体一定时间后Inactive,还有周期更新(如一些连网请求,比较耗性能,不需要每一帧请求)等。网上也有不少关于这个计时器的文章,但基本都是需要配合Mono的(即需要绑定到MonoBehaviour组件上,需要Update(),或者协程来更新)。这里就实现基
转载 2024-03-16 09:49:52
103阅读
本章要来介绍这款超好用的插件『SRDebugger』。插件支援Real-time Console,运作游戏时如果出现Bug,或是程式撰写的Debug.Log,都会出现在Console画面。另外,还有Options Tab的功能,类似游戏作弊用控制台,可以撰写类似『无限血量』、『自动跳关』等方便测试的功能,亦能输出一些重要的讯息。SRDebugger - Console & Tools On
转载 5月前
198阅读
Object类是Unity中所有对象的基类。 Object类实例方法GetInstanceID方法:Object对象ID基本语法 public int GetInstanceID();功能说明 此方法用来返回Object对象的实例化ID。说明如下:1.每个Object对象的实例、Object子类的实例如GameObject、Component等以及Object子类的子类实例如T
转载 2024-03-25 11:40:20
274阅读
使用Sign in with apple 插件,为Unity开发的游戏加入Apple ID登陆功能注意事项:Apple ID登陆应用可以获取到用户苹果账号ID、用户全名、用户邮箱、用户身份token以及用户授权码(Notice:用户全名以及用户邮箱仅当用户第一次登陆应用时才会获取)用户启动应用后,Apple ID快速登陆应该首先执行,如果用户之前授权过本应用,则弹出对话框让用户再次确认登陆来得到用
转载 2024-03-16 04:00:22
214阅读
浮点常量在C#中,一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。浮点常量可以使用以下几种表示形式(大写与小写效果等价):十进制表示法:使用小数点来表示浮点数(默认为double类型),例如:3.14、0.5、-1.23等等。科学计数法:使用e或E来表示10的幂次方(默认为double类型),例如:1.2e-3表示0.0012,2.5E2表示250。后缀f或F:用于标识浮点常量(floa
转载 2024-04-03 11:02:41
229阅读
在塔防游戏中防御塔自动检测敌人的靠近,在合理的攻击范围内开始攻击 在这篇博客中 我将实现简单的防御塔的效果1.搭建场景我们首先创建敌人 (给敌人设置标签 为了在进入和离开攻击范围的检测) 然后创建防御塔本体 最重要的是给它添加一个球型碰撞体 修改合适的大小 作为攻击范围 注意一定要把球行碰撞体上边的isTrigger 勾选2.防御塔的实现首先我们要让防御塔检测到敌人进入和离开自己的攻击范围 我们的
转载 2024-05-16 05:01:16
31阅读
文章目录制作步骤准备好水体网格扰动水体网格添加水体网格色调,纹理放置海上放哨点(一些随便放的立方体)添加水的深浅透视效果添加水光效重构水顶点法线正交的相机的深度需要注意改进ProjectReferences 简单的模拟水的效果(3A游戏效果请绕开哦) 效果:制作步骤准备好水体网格(网格脚本生成的,参考:Unity Shader - Noise 噪点图 - 实现简单山脉)扰动水体网格顶点(参考:
作者:EnigmaJJ 在Unity中使用NGUI时,为了减少draw call,我们会将美术用到的小图打成一张图集,如图: 打包图集有很多种方式,这里介绍的是使用TexturePacker工具来打包图集。TexturePacker支持的游戏引擎相当的广泛,主要包含了Unity、Cocos2D、SpriteKit、LibGDX等等,导出的图片格式也十分丰富,可以导出为PSD、P
转载 2024-04-24 13:21:08
1036阅读
Unity 自制工具:Point。方便标记出生点或巡逻点等功能。  如上链接,之前封装过一次点对象,但觉得易用性还不是那么好,在使用cinemachine插件后,发现其相机轨道到waypoint控制很不错,所以就抄袭了一些代码,重新实现点的封装,并添加了一些常用随机区域出生点工具(环状、球状、立方体状等)。Point(点)定义:只有位置和旋转角度两个属性的类对象。[System.Serializa
转载 2024-04-30 16:41:52
190阅读
目录资源包下载创建地图地面素材切割成块,铺路创建调色板铺路小池子的构造把树添加到场景中为树添加碰撞体场景构造效果游戏角色导入添加刚体和碰撞体勾选冻结旋转创建PlayerControl.cs用刚体移动可以消除画面抖动摄像机跟随摄像机跟随范围调整设置遮挡效果设置不可通行的区域对碰撞区域进行优化消除蓝色的边界外视野,将视野局限于地图内游戏动画的实现建立一个动画状态集参考课程案例设计 一 2D 游戏场景、
转载 2024-05-07 15:08:47
116阅读
  总的来说unity的脚本生命周期分几个部分:编辑→初始化→游戏逻辑→渲染→GUI→Teardown首先是Reset,顾名思义:重置。在什么情况下调用呢?1.用户第一次添加组件时。2用户点击见组件面板上的Reset按钮时。接下来的几个比较重要:Awake():当脚本实例被载入时调用,一般进行一些初始化赋值。Start():Start只在Update第一次被调用前执行一次。接下
转载 2024-03-03 13:53:46
119阅读
一些常用术语直接光:光线直接或者经过一次反射进入我们的视野 间接光:光线经过多次反射进入我们的视野 逐像素光:一个像素一个像素处理光照计算 逐顶点光:一个顶点一个顶点处理光照计算,这个相对逐像素处理比较节省性能,因为顶点会经过光栅化产生更多的像素,顶点TypedirectionalLight:平行光,模仿世界中的太阳光 spotLight:聚光灯,由一个点发出一个光,形成一个椎体 pointLig
转载 2024-03-22 14:11:00
194阅读
  • 1
  • 2
  • 3
  • 4
  • 5