- 博客(61)
- 资源 (2)
- 问答 (5)
- 收藏
- 关注
原创 Invalid worldAABB. Object is too large or too far away from the origin
在使用DOTS中,设置Transform值时出现Invalid worldAABB. Object is too large or too far away from the origin。通过debug发现dir值为(NaNf,NaNf,NaNf)
2024-06-24 10:56:03
185
原创 Unity Localization导入CSV报错 BadDataException: You can ignore bad data by setting BadDataFound to null.
Unity Localization本地化多语言插件导入CSV报错。
2024-04-09 18:07:36
286
原创 Unity 2022 每次打开项目都会弹出“Unity is running as administrator“
在重装了系统后每次打开都弹窗口,试了好几种方式都没解决。2205是我的普通用户名称。终于解决了这个问题。
2023-10-26 15:25:17
9993
5
原创 Unity编辑器从PC平台切换到Android平台下 Addressable 加载模型出现粉红色,类似于材质丢失的问题
Unity编辑器在PC平台下使用Addressable加载打包好的Cube,运行发现能正常显示。而在切换到Android平台下,使用Addressable时加载AB包,生成Cube对象时,Cube模型呈现粉红色,出现类似材质丢失的问题。如下图所示。
2023-10-12 22:49:09
3605
4
原创 IL2CPP打包安卓应用报错:BuildFailedException: Incremental Player build failed!
发现是link.xml配置问题,少了一个标签。
2023-05-14 21:13:43
1051
1
原创 使用Unity打包安卓平台应用时报错CommandInvokationFailure: Gradle build failed.
在使用Unity2022 打包安卓应用时报错,经过网上查找发现需要在PlayerSetting的Publishing Setting中设置密钥。
2023-05-13 22:25:20
882
3
原创 C#之特性
一、什么是特性?特性是一种允许我们向程序的程序集添加元数据的语言结构。它是用于保存程序结构信息的特殊类型的类。或者说特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。二、特性的使用由方括号,中间包裹着特性名和参数列表(也可以无参)。放置在它所要应用的元素之前(类前,方法前等等)。可以参考下面3个特性。[Serializable][XmlRoot("MyClass")]public class MyClass{
2022-01-28 20:43:44
12085
2
原创 C#之扩展方法
通常,我们想要向一个类型中添加方法,可以通过以下两种方式:修改源代码。在派生类中定义新的方法。但是以上方法并不是万能的,我们并不能保证拥有一个类型的源码,也并不能保证这个类型可以让我们继承(如结构,枚举,String等等)。但是C#提供了一个办法,那就是扩展方法,使用扩展方法可以直接向现有的类型“添加”方法,无需修改类型的源码,也无需用一个派生类实现方法。一、什么是扩展方法?扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。二、扩展方法结构
2022-01-24 01:05:04
14139
1
原创 FairyGUI.DisplayObject.set_visible (System.Boolean value)
ReportException: NullReferenceException Object reference not set to an instance of an object.FairyGUI.DisplayObject.set_visible (System.Boolean value) (at <00000000000000000000000000000000>.0)FairyGUI.GObject.set_visible (System.Boolean value) (at
2021-09-07 21:29:26
350
原创 NullReferenceException: Object reference not set to an instance of an object(GameManager.instance为空)
通过Debug发现GameManager.instance为空。但是检查代码后发现代码并没有问题。于是尝试将GameManager脚本移除,并重新添加进来。最终问题解决了。
2020-08-05 11:31:03
16940
原创 角色左右闪烁
通过观察发现,怪物的范围检查的Colider与Long Platform的Colider发生了接触,从而导致了targetPoint在PointA与Long Platform之间不断切换,最终怪物不断闪烁。我们可以将Long Platform的Colider Mask设置一下,设置Long Platform和图层为Player、Environment、Bomb的游戏物体的碰撞体产生碰撞关系。如下图所示。...
2020-08-04 22:45:19
189
原创 Unity之动画系统的学习(五):子状态
创建游戏物体创建Animator Controller使用SubState来将多个动画状态及其过渡看作单独的状态运行效果:通过脚本来控制using System.Collections;using System.Collections.Generic;using UnityEngine;public class SubState : MonoBehaviour { private Animator anim; void Start() { an
2020-07-16 23:27:17
297
原创 Unity之动画系统的学习(四):逆向运动学
什么是逆向运动学?正向运动学的官网定义:大多数角色动画都是通过将骨骼的关节角度旋转到预定值来实现的。一个子关节的位置是由父节点的旋转角度决定的。这样,处于节点链末端的节点位置是由此链条上的各个节点的旋转角和相对位移来决定的。可以将这种决定骨骼位置的方法称为前向运行学。例如,利用现有的动画片段或者外部文件或者场景动画的方式都是前向运动学。逆向运动学(IK)官网定义:给定末端节点的位置,从而逆推出节点链上所有其他节点的合理位置。例如,希望角色的手臂去触碰一个固定的物体。通过逆向运动学实现注释
2020-07-16 22:49:21
2275
原创 Unity之动画系统的学习(三):Layer
Layer应用场景往往一个角色可能有多个动作,例如走路,射击,但是想要在游戏中体现出边走路边射击的动画,这时就可以使用Layer。创建游戏物体创建Animator Controller创建命名为Layer的Animator Controller,并将其赋给角色的Animator组件的Controller属性,双击Layer,进入到Animator视图。新建一个Walk动画状态在Base Layer中新建一个Walk动画状态,并给它赋一个命名为HumanoidWalk的Animation Cl
2020-07-16 15:01:47
3129
原创 Unity之动画系统的学习(二):曲线
新建一个游戏物体创建一个Animator Controller新建一个动画参数双击打开,进入Animator视图,并设置参数CurveValue。新建一个Animation State并设置动画片段在Base Layer中右键创建新的Animation State,并设置动画片段,然后将命名为Curve的Animator Controller拖入到角色的Animator组件中的Controller属性。运行游戏,发现角色会跑出摄像机范围,难以观察,这时,可以在角色的Animator组件中,取
2020-07-15 23:16:09
1293
原创 Unity之动画系统的学习(一):场景动画
首先创建一个游戏物体打开Animation视图Window ->Animation -> Animation,打开Animation视图为游戏物体创建一个动画片段(Animation Clips)文件(以.anim结尾)为命名为Cubeposition的动画片段(Animation Clips)录制动画通过在Animation视图中点击红色按钮就可以开始Cubeposition的动画片段的录制。可以通过移动playback head(白线)到关键帧,并在Scene视图或其他地方进
2020-07-15 18:34:44
1470
原创 DOTween的学习
什么是DOTween?对变量进行动画using System.Collections;using System.Collections.Generic;using UnityEngine;using DG.Tweening;public class GetStart : MonoBehaviour { public Vector3 myVector = new Vector3(0, 0, 0); // Start is called before the first fra
2020-07-15 12:15:41
608
原创 Unity之UGUI的学习(七):Slider(滑动条)
什么是Slider?Slider控件允许用户可以通过鼠标来在预先确定的范围调节数值。我们可以在Hierarchy视图右键 -> UI ->Slider来创建滑动条。上图是一个Unity内置Slider的结构。当然我们也可以自己创建一个更加个性的Slider。但在这之前需要了解Slider组件。属性和功能属性功能Interactable控制组件是否接受输入,如果没有被勾选,是不能进行滑动的。Transition用于控制Slider响应用户操作的方式
2020-07-11 00:04:41
19509
1
原创 Unity之UGUI的学习(六):Toggle(开关)
什么是Toggle?Toggle(开关)是用来让用户打开或关闭某个选项的复选框。通过在Hierarchy视图下右键 ->UI -> Toggle可以创建Toggle。属性和功能属性功能Interactable控制该组件是否接受输入。如果该选项没有被选中时,表示Toggle不能接受输入且动画过渡不可用。Transition用于控制Toggle响应用户操作方式。Navigation用来控制UI控件的键盘导航如何实现Is On默认是否勾选T
2020-07-10 19:44:48
6135
原创 Unity之UGUI的学习(五):Button(按钮)
Button按钮控件可以响应用户的单击事件,用于启动或确认操作。属性和功能属性功能Interactable组件是否接受输入,如果没有勾选,则将不能接受输入,并且没有点击效果Transition用于控制按钮响应用户的操作方式。Navigation确定控件的顺序Transition(过渡选项)Color Tint根据按钮所处的状态更改按钮的颜色。可为每个单独的状态选择颜色。还可在不同状态之间设置 Fade Duration 属性。数字越大,颜色之间的淡入淡
2020-07-10 17:35:51
905
原创 Unity之UGUI的学习(四):Mask(遮罩)
什么是Mask?Mask(遮罩)是一种不可见的UI组件,它可以用来修改子物体的外观。遮罩将子物体限制为父物体的形状。如果子物体大于父物体将只显示和父物体大小相同的那一部分。如上图所示,在父物体Image中添加子物体Image,父物体Image上添加组件Mask,可以发现子物体Image本来是大于父物体Image的,但是在父物体使用了Mask组件后,Mask将子物体的大小限制到与父物体一样了。Show Mask Graphic表示是否绘制组件所在游戏物体的图形。...
2020-07-10 16:25:10
3218
2
原创 Unity之UGUI的学习(三):Text(文本)
Text用于显示文本的可视组件。属性和功能属性功能Text控制显示文本Font字体Font Style文本样式,正常,粗体,斜体,粗斜Font Size字体大小Line Spacing文本行之间的垂直间距Rich Text是否为富文本样式Alignment文本的水平和垂直对齐方式Align By Geometry使用字形几何的范围来执行水平对齐Horizontal Overflow用于处理文字太宽而无法适应文本框
2020-07-10 15:03:51
1498
原创 Unity之UGUI的学习(二):Rect Transform(矩形变换)
什么是Rect Transform?Rect Transform(矩形变换)是一种有别于原有的Transform组件的新的变换组件。在原来的场景中Transform组件表示的是一个点,而Rect Transform表示的是一个矩形。Rect Transform不仅拥有位置,旋转和缩放,还拥有高度和宽度,并且还有锚点和轴心点属性。1.Anchors(锚点)锚点在Scene视图一四个三角形手柄显示,它的信息在Inspector视图中显示。官网上有这样的描述。矩形变换有一个锚点的布局概念,如果一个
2020-07-10 14:14:24
2552
1
原创 Unity之UGUI的学习(一):Canvas和EventSystem(画布和事件系统)
一、Canvas(画布)Canvas是一个带有画布组件的游戏对象,所有的UI控件都必须是它的子对象。我们可以通过在Hierarchy视图下右键->UI->Canvas,来创建一个Canvas(画布),随着Canvas创建的还会有一个EventSystem。当然,也可以直接在Hierarchy视图下右键->UI->其他的UI控件,这样如果在Hierarchy下没有创建Canvas,会自动创建。如果创建了,那么你创建的其他的UI控件会自动归入到Canvas下。如下图所示。创建后,
2020-07-09 22:46:04
2342
1
原创 Unity的学习(三):古迹探险
一、新建项目新建项目,并在Assets下右键Import Package ->Custom Package导入资源。如下图所示。二、地形设计地形工具的使用可以参考Unity官方文档2.1创建地形在Hierarchy中右键创建Terrain(地形),同时在Assets中会出现New Terrain(保存的是地形相关数据),将其重命名为Terrain Data并将其放入创建的Terrain文件夹中。2.2 调整地形的长度和宽度在Hierarchy视图中选中Terrain,可以在Insp
2020-07-03 00:14:50
2088
原创 Unity的学习(二):打砖块
一、新建项目创建成功后,进入了如下界面。二、场景的设计在Hierarchy中鼠标右键创建Plane(地面)游戏物体,将其Transform组件重置,并将游戏物体重命名为Ground,如下图所示。调整地面的大小。在Assets下创建文件夹Materials,并在其中创建Ground的Material(材质)并在Ground(地面)游戏物体上设置材质。如下图所示。(Smoothness为光滑度)三、创建砖块和砖块的prefab(预制体)右键创建Cube,并给该游戏物体添加Rigidbod
2020-07-01 11:28:32
1854
原创 Unity的学习(一):Unity的基础界面与操作
一、界面工具栏:提供了常用工具的快捷访问方式Scene视图(场景视图):用于设置场景以及放置游戏对象,是构造游戏场景的地方Game视图(游戏视图):由场景中相机所渲染的游戏画面,是游戏发布后玩家所能看到的内容。Hierarchy视图(层级视图):用于显示当前游戏场景中所有游戏对象的层级关系Project视图(项目视图):整个工程中所有可用的资源,例如模型、脚本等。Inspector视图(检视视图):用于显示当前所选择游戏对象的相关属性与信息。二、工具栏2.1 Transform Tool
2020-06-01 14:30:32
7153
原创 idea查看jdk源码并在源码中写注释
一、概要想要查看jdk源码并希望能够写一些注释。以下是一些概要的步骤,以及会遇到的一些问题。新建一个项目,并将jdk安装目录下的src压缩包解压到项目下并替换原来的src。需要让debug时自动关联到项目的src中的源码。运行一个demo,看是否能运行成功。在此期间会遇到如下问题:程序包com.sun.tools.javac.api不存在找不到sun.awt.UNIXToolkit...
2020-03-01 19:09:42
3961
11
原创 java的学习:final关键字
final,见名知意,就是最终的意思,那么它在java中可以修饰什么呢?又有什么作用呢?一、final的使用在java中,final可以修饰变量,方法,类。1.1 final修饰变量...
2020-02-28 14:17:44
163
原创 java的学习:访问权限修饰符
作用:用来限定对于该类成员的访问权限修饰符类内部同一个包不同包的子类同一个工程privateyes(缺省)yesyesprotectedyesyesyespublicyesyesyesyes...
2020-02-26 21:37:59
148
原创 java的学习:this关键字
一、什么是this关键字?当你调用一个对象的方法时,如果这个方法中有this,那么在你调用时,this就会生成一个对于这个对象的引用。简单点来说,this可以理解为当前对象。二、this关键字的使用(注意:this关键字只能在非静态方法中使用)this关键字可以用来调用属性(成员变量),方法,构造器。2.1 this关键字调用属性(this.属性)class Person{ pr...
2020-02-25 19:22:34
226
原创 Wildcard string cannot be null or empty. Make sure permission strings are properly formatted
2020-02-19 21:20:18.877 WARN 1460 --- [nio-8080-exec-6] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [java.lang.IllegalArgumentException: Wildcard string cannot be null or empty. Make sure per...
2020-02-19 21:27:32
392
原创 Cannot read property 'selectedRowKeys' of undefined(vue回调函数中this无效)
在使用ant-design-vue时发现出现报错,无法读取未定义的“selectedRowKeys”属性。如下图,一开始在onOk()和onCancel()中是通过this来取值,但是并没有取到。在一开始,我通过网上查找,发现并没有与我要找的问题相关的。然后我就去翻ant-design-vue官方文档,找到onOk()和onCancel(),发现它们是回调方法。于是猜想可能是回调中this和...
2020-02-12 01:03:55
2338
1
原创 Avoid using non-primitive value as key, use string/number value instead.Duplicate keys detected: '[o
今天在使用ant-design-vue时出现警告:具体的问题就是有重复的键,可能会导致更新错误。经过查找,发现报警告的的地方是由于在v-for循环中,key值可能会出现重复,所以报了重复键警告。解决:将key变成唯一的就行...
2020-02-11 17:17:29
536
关于android的DisLruCache的问题
2018-08-31
java多线程。。。。。
2018-03-15
数组(C语言)。。。。。。。。。
2017-07-24
输出一维数组(1,-9,7,2,-10,3)中最大元素的下标。
2017-07-22
求解,(不要用数组)。。。。
2017-07-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人