- 博客(32)
- 收藏
- 关注
原创 【小贴士|Unity】华佗热更版本控制配置
现在越来越多的新项目选择使用HybridCLR,而不是以前的Lua。也不妨有的项目会配置打包机器人以及版本控制,但是这个版本控制的配置还真需要注意一些。
2024-04-15 15:07:57 193
原创 【C#实战】实现一个服务等待另一个服务的启动
在某些情况下,我们可能需要在一个服务启动之后再启动另一个服务。这种情况下,我们可以使用`SemaphoreSlim`作为等待条件。在本文中,我将介绍如何实现一个服务等待另一个服务的启动。
2024-04-02 23:55:03 332
转载 【英文转载|ASP.NET】Transient、Scoped、Singleton区别
【转载|ASP.NET】Transient、Scoped、Singleton区别。
2024-03-11 10:16:04 41
原创 [Unity实战]使用NavMeshAgent做玩家移动
使用NavMeshAgent做角色控制器的好处是能避免玩家去莫名其妙的地方(毕竟基于烘焙过的导航网格),一般常见于元宇宙应用和mmo。
2024-03-07 22:22:11 648
原创 【NUC】显卡坞掉驱动/设备解决
之前用的一直是神州网信win10的系统,经由雷电4接了一个GTX1060 3GB的显卡,后来系统盘固态挂了,做了个win11,结果跑Unity、跑简单的VR/XR出现了GPU device lost, Fatal D3D Error等莫名其妙的掉驱动问题。这在之前win10是没有遇到过的。
2024-02-12 23:29:00 520
原创 【Unity/C#实战】时间戳
时间戳在计算机科学和游戏设计中有着重要的意义。它是记录和比较时间的一种标准方式,经常用在网游的营销活动等,通过比较时间戳,可以确定是否在活动时间范围内诸如此类。一般来说它是一个long类型的数据。可能也会有同志问了,long和ulong它俩区别一个有符号,一个无符号,难道说时间戳还能是负数?是的,因为做的是减法,看下面原理。在C#中,时间戳通常是以Unix时间戳的形式存在,它是指从格林威治时间1970年1月1日00:00:00起至指定时间点的总秒数。
2024-01-29 00:31:06 387
原创 【Unity实战】Jenkins与自定义命令行参数
Unity是一款功能强大的游戏开发引擎,它提供了许多方便开发者使用的功能和工具。其中一个非常有用的功能是Unity命令行参数。通过使用命令行参数,开发者可以在启动Unity时自定义一些行为和设置,从而更好地管理和调试项目。使用Unity命令行参数的好处是,它可以帮助开发者更好地管理和调试项目。通过在命令行中指定参数,我们可以自动化一些常见的任务,例如构建项目、执行测试、导出资源等。这不仅可以提高开发效率,还可以减少人为错误的发生。
2024-01-15 16:37:01 977
原创 【Unity实战】绕开ToggleGroup默认选中首项的行为
有些东西,手册上不会讲的。我一直建议身边的同事、志同道合的网友要多探索、多做实验,不要死磕教程视频等,否则会陷入Tutorial Hell。换句话说就是脱离教程你啥都不是。如题,今天就碰上了这样的需求。
2024-01-10 01:34:24 551
原创 【Unity实战】Jenkins打包机联调脚本
这个脚本是一个用于在Jenkins中构建Unity项目的辅助工具。它的主要功能是构建HybridCLR热更新,并将生成的DLL文件和AOT元数据DLL文件复制到指定的目录,并将它们添加到Unity的Addressable Assets系统中。如果您还不知道Jenkins和HybridCLR的话,建议先阅读一下往期博客和相关官方文档。
2024-01-07 17:26:37 1066
原创 【Unity实战】HybridCLR热更快速集成
本文假设你已经通过UPM导入了HybridCLR、Addressables、il2cpp支持并具有一定的C#基础和Unity编辑器操作能力。
2023-12-28 15:44:59 1645
原创 【Unity实战】WebGL读取本机硬盘上的文件
本文假设你要在Unity做一个头像上传的功能,这里我提供一个通过Unity和JavaScript实现的方法。
2023-12-26 21:52:28 598 3
原创 【Unity实战】卸载git lfs
git lfs的确好用,对于美术资源还是比较友好。但是用不好,则如同寄生虫一样,挥之不去。这里介绍一种补救的方法来拯救你的repo
2023-12-16 23:03:35 496
原创 【Unity技巧】interface接口使用
interface在Unity游戏开发中也是一个改变游戏规则的因素。假设你想将ChatGPT(或其他GPT)集成到你的项目中。所以你将编写一个脚本,使用UnityWebRequest发送符合其API要求的POST请求并获取结果。但有一天,ChatGPT在你所在地区不再可用,你找到了另一种使用不同API要求的替代方案。如果没有interface,你将不得不重写许多与GPT交互的脚本(甚至UI的脚本得大改)。别担心,interface可以帮助你适应这些重大变化。
2023-12-10 14:26:59 524
原创 【Unity实战】RectTransform宽高自适应
假设你做了一个ScrollView,Content下要做一个消息气泡,消息气泡本身就是一个GameObject,里头有一个Text组件,Anchor为(0.5, 1.0),组件上挂好了Content Size Fitter做纵向自适应。然而消息气泡不能挂Content Size Fitter,因为ScrollView的Content本身就有Content Size Fitter做自适应和LayoutGroup做排版,故用代码做消息气泡的自适应。
2023-12-05 21:35:12 462
原创 Unity与Jenkins打包机实战
Jenkins是一个开源的持续集成工具,用人话来说就是。一般常见于公司项目用于持续交付。可能有个人开发者对打包机很陌生或者不是很在意(比如在写这篇文章之前的我),项目小,本机写完本机打,甚至能边写边打,也没觉得怎么样。直到后来打包卡电脑没法做其他事情的时候,是时候单拎出来个电脑做个打包机了,要不耽误事情。
2023-11-23 15:15:51 322
原创 常用JWT注册声明
JWT是一种用于在网络应用间传递声明的开放标准。在这个命名空间中,定义了一系列已注册的声明名称,这些名称在不同的标准中被使用。每个常量字段代表一个已注册的声明名称,例如"Aud"代表"aud"(JWT中的"Audience")。
2023-11-10 11:00:11 73
原创 使用partial修饰符让脚本和协作变得简洁明了
以前写Unity的网络脚本,一般都会用region进行区域划分,好方便折叠和阅读,然而后来需要考虑到无头的服务端,需要做些无头的处理,脚本显得非常臃肿。如果读者有了解过UNET和Mirror的NetworkManager,那里面客户端和服务端callback都在一起。如果项目还用到git,如果前后端开发人员都在修改这个脚本,很难不会有冲突和滞后。所以有没有办法既能方便阅读而且把冲突、滞后概率降低?有的,那就是partial。
2023-10-27 12:40:33 48
原创 Apache反向代理Nextcloud实战
自更换移动宽带,无公网IP苦不堪言,还好有云服务器,寻思借用云服务器的公网IP完成云服务器到家里NUC主机上的Nextcloud安装的访问。这里,笔者假定读者已经正确安装Nextcloud,且启用了SSL证书,系统为RHEL,网页服务器为Apache。
2023-10-20 14:45:19 252
原创 【Unity】get set引起的安卓下Json反序列化错误
今天一同事用Newtonsoft.Json解析Addressable里存放的角色服装Json文件,结果一直报键值相同的错误。Editor下一切正常,然而打到安卓上就不行了。解析出来的List数目都对的上,然而里面的数据都是空的或者默认值。
2023-10-18 23:24:31 77
翻译 论FPS游戏的准星工作原理及其Projectile发射位置的摆放
该文章出自Reddit,比较详尽地解释了拟真、ESports竞技类射击游戏有关准星和Projectile发射位置的设计思路。
2023-10-12 11:42:54 279
原创 Singleton在Unity中的最佳实践
Singleton即单例,在C#中主要方便找一个脚本的实例。在Unity中,一般给场景中的某个非常常用的脚本做成Singleton,这样其他脚本就方便找它,而不是每次用的时候FindObjectOfType或者在脚本里写个公共变量然后在编辑器中拖拽进去。
2023-10-06 17:58:41 138
原创 如何优雅地备份Unity工程
不开玩笑的说,我在Reddit上看到过一个帖子,楼主问大家备份Unity工程的频率。我猜你看到这就已经开始笑了,别笑,当年你我都是这么过来的。我不以偏概全哈,我只说我的情况,当年我也是玩游戏玩的沉迷,老爸学的数据库,他治疗游戏沉迷的方法就是引导我去分析游戏的原理。我也就这么入坑了。初中时候做unity的时候,那时候还没接触到版本控制这个事,那时候家里限制我每周末能碰电脑,所以只能周六日写点,周日晚上备份。那时候还真的是右键工程目录,WinRAR分卷压缩,传到百度网盘。
2023-10-02 00:28:24 829
原创 如何让游戏反作弊系统和HyperV共存
一个是原来的Windows环境,一个是关闭了HyperV的环境。感到非常奇怪,因为程序运行在真机,HyperV也确认没有安装。保存为BAT批处理,运行一下。下次开机的时候会多一个启动选项。
2023-09-30 20:41:16 128
原创 TextMeshPro 非英文字符实战
TextMeshPro原先是Unity商店的一个UI插件,主要改善UGUI默认Text组件的字体模糊、DrawCall问题,后来被Unity给收购到了自家Package Manager,默认并不启用(除非你是用Hub上的模板建的工程),这也让很多新手都感觉不到这东西的存在。
2023-09-29 11:34:35 89
原创 【小妙招】一招解决Unity WebGL下AudioClip不工作问题
假设你要做一个WebGL的游戏,用Timeline做的过场动画,过场动画有个AudioTrack(可能混了多个AudioTrack),但是一到浏览器上运行就没有声音。
2023-06-03 21:34:32 600
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人