C#新特性
前言在C#8.0中新增了两个新的特性,System.Index及System.Range,这是借助对应的两个运算符 ^ 及 ..,让我们很方便就可以获取序列中某个或一段元素。
正文System.IndexSystem.Index表示索引类型,^指定的索引是相对于序列尾端。如^2表示从序列尾端、从右至左的第二个元素。这里始终记住 ^x等价于 list.length - x ,所以如果代码写成 list[^0],那么等价于 list[list.length-0],结果就会抛出异常。下边举例说明。
123456789101112131415161718var list = new[]{ "爱","情","公","寓","曾","小","贤","胡","一","菲","吕","子","乔","陈",&q ...
Unity设置碰撞器之间不碰撞
前言做游戏时,有时候需要让同一个地图的两个敌人不互相碰撞,但是两个人都有碰撞器,能站在地上。这个功能是如何实现的呢?答案就是设置layer。
正文当点击Hierarchy窗口中的某个对象时,在Inspector窗口就可以看见Layer选项
你可以修改或创建该对象的Layer,使得某两个对象的Layer相同或不同,比如,我可以设置两个敌人都在Enemy的Layer中,这时候再进入:Edit->Project Settings…->Physics 2D(3D项目选择Physics)可看到如下窗口选项:
只要把Enemy-Enemy之间的那个勾取消掉,即可使同在Enemy中的对象互不碰撞:
to be continued…
科研伦理与学术规范答案
前言这里是科研伦理与学术规范答题。
正文
to be continued…
Unity将3D项目升级为URP项目
前言在使用Unity的过程中,总会遇到老项目需要用到URP效果,故需要将3D项目转化为URP项目。
1.安装Universal RP在Window窗口下打开Package Manager,包的类型选择Unity为 Unity Registry 搜索Universal,可以看到当前unity版本(2020.2)已经认证支持的Universal RP版本是10.2.2。点击install进行安装。打开UnityARegistry时有时候会存在下面的报错,这是因为网络的问题,可能需要科学上网。
2.创建渲染管线的Pipeline点击Project下的加号创建新的渲染管线,Rendering -- Universal Render Pipeline -- Pipeline Asset(Forward Renderer)如下图,使用默认的命名方式命名并把他们归纳在新的文件夹下。
点击窗口Edit -- Project Settings打开设置页面选择Graphics给可编辑渲染管线设置中添加刚才新创建的URP Pipeline随后在Quality默认设置也添加新建的URP Pipeline。在不 ...
如何实现一个强大的MMO技能系统
1. 如何实现一个强大的MMO技能系统——序章前言技能系统可以说是游戏中广泛存在而又最重要的系统了,它是整个游戏战斗体验的核心。一套强大的技能系统可以让游戏的策略性,可玩性得到极大的提升。然而技能系统牵涉到的模块非常多,又会面对策划各种各样的奇葩需求,同时技能模块中很多系统的设计不仅仅对程序员的编码能力提出了一定的要求,而且还需要程序员对游戏机制有着深入的理解。可以说要实现一套强力的高可用高扩展的技能系统还是有一定复杂度的。
如果作为一个游戏玩家,谈论到技能系统,我们一定会对War3的技能编辑器印象深刻,通过设计一个高扩展的技能系统编辑器,它打造了无数的经典游戏。各种对战地图,RPG守图,TD塔防,趣味闯关,甚至产生了其中最经典的风靡全球的Dota,为我们展示了War3技能系统的强大。后来Valve甚至因此专门开发了Dota2,而且它提供了更强大的地图编辑器,基于该编辑器开发的自走棋更是开创了一个新的游戏品类。这就是技能系统所展现的魅力。
如果论网络游戏领域技能系统之集大成者,相信魔兽世界,守望先锋,Dota2都可占得一席之地。深入玩过这几款游戏的话,都会被他们技能系统之精巧所震撼。但 ...
NuGet配置微软官方中国镜像
前言NuGet配置微软官方中国镜像
正文NuGet微软官方中国镜像地址:
https://nuget.cdn.azure.cn/v3/index.json
打开Visual Studio => 工具 => NuGet包管理器 => 程序包管理器设置
找到“Net包管理器” => “程序包源”,点击“+”新建项,将地址https://nuget.cdn.azure.cn/v3/index.json填写到源上。
在搜索程序包的时候使用刚新建的配置就行了。
to be continued…
NewtonJson
前言Newtonsoft.Json介绍Netonsoft.Json 是一款 .NET 适用的 Json 插件,可以将 C# 中常用的数据类型序列化成 json 格式,使用时再反序列化对应的类型即可,包括 Dictionary、List 甚至 class 类都能很简单的进行序列化和反序列化,十分好用。
一、下载
进入官网( https://www.newtonsoft.com/json )点击 Download。
直接点击 Json 跳转到 github( https://github.com/JamesNK/Newtonsoft.Json/releases ) 。
跳转到 github 后可选择下载 dll(第一个zip) 或者源码。
二、导入项目在 u3d 工程中创建文件夹 Plugins ,将下载的 zip 中 Bin/netXX/Newtonsoft.Json.dll 以及 .xml 文件拖到 u3d 工程 Plugins 中,其中 xml 为注释,可拖可不拖,反正官网有文档和小例子。
附:
官方文档:https://www.newtonsoft.com/json/ ...
VysorPro破解
前言Vysor是一款谷歌浏览器的插件,能够很好的连接安卓手机进行电脑端查看与操控手机。
正文用谷歌(Chrome)应用商店 搜索vysor下载应用即可;打开vysor,用手机USB连接电脑,打开usb调式链接成功界面如下:但是看着这个vysor很模糊,不清楚,所以搜了一下,要修改一下uglify.js文件C:\Users\用户名\AppData\Local\Google\Chrome\User Data\Default\Extensions\gidgenkbbabolejbgbpnhbimgjbffefm(vysor沙盒名称)\2.1.5_0\uglify.js查找 Account,找到如图的位置,一共有两个 !1 的变量,将前一个变量更改为 1 就行了 如图;保存文件,重启vysor然后设置一下两个变量就行了
to be continued…
Unity的GridLayoutGroup组件
正文GridLayoutGroup网格布局组件
属性:
功能:
Padding-填充
布局组边缘内的填充。
Cell Size-对象元素大小
组中每个布局元素要使用的大小。
Spacing-间距
布局元素之间的间距。
Start Corner-起始角
第一个元素所在的角。
Start Axis-起始轴
沿着哪个主轴放置元素。在开始新行之前,水平将填满整个行。在开始新列之前,Vertical将填充整个列。
Child Alignment-子对象对齐
如果布局元素未填满所有可用空间,则用于这些元素的对齐方式。
Constraint-约束
将网格限制为固定数量的行或列,以辅助自动布局系统
属性:
功能:
Left
左边缘内的填充
Right
右边缘内的填充
Top
顶部边缘内的填充
Bottom
底部边缘内的填充
属性:
功能:
Upper Left
第一个元素所在左上角
Upper Right
第一个元素所在右上角
Lower Left
第一个元素所在左下角
Lower Right
第一个元 ...
华硕PG279QR显示器
华硕PG279Q显示器ODOD可理解为Overdrive,是一项通过提高液晶面板电压,以牺牲显示效果为代价来降低显示延迟的技术。关闭(选择禁用)时,显示面板以正常状态工作,能提供最佳的显示效果,但显示延时较高;开至中档(选择常规色)时,显示面板以较高电压工作,略微影响显示效果,显示延时有所降低;开至高档(选择Extreme)时,显示面板以能稳定接受的最高电压工作,严重影响显示效果,产生肉眼可见的明显色差,显示延迟降至最低。建议:玩竞技类游戏时可设置为Extreme来改善操作感,提高成绩;玩一般游戏时可设置为常规色,在欣赏风景的同时改善操作体验;不玩游戏时(看电影等)可关闭OD,提供最佳显示效果。
软硬件综合测试相信大家在选择显示器的过程中经常会听到有网友推荐选择什么大金刚和小金刚显示器。那么什么是大金刚,什么又是小金刚呢。
在开始介绍这款大金刚显示器之前,我们先来了解一下小金刚和大金刚的区别吧。首先这两大类显示器并不是指某几款特定的产品,目前来说当显示器的几个参数到达了某个标准,他就会被冠以x金刚的称呼。
先说说小金刚,在前几年,只要显示器拥有2K分辨率+IPS面板+144Hz ...