自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (4)
  • 收藏
  • 关注

原创 【Unity】URP报错Object reference not set to an instance of an object

Unity URP报错:NullReferenceException: Object reference not set to an instance of an objectUnityEngine.Rendering.Universal.UniversalAdditionalCameraData.get_cameraStack ()

2024-01-19 16:23:23 575

原创 【Unity】Addressable包资源加载失败:CRC Mismatch.

Error while downloading Asset Bundle: CRC Mismatch. 是资源下载校验失败,但是资源和上次打包的资源是一样的。没有排查到原因,在谷歌搜索后看到。用回原来的版本就能解决问题:https://forum.unity.com/threads/crc-mismatch.716303/大概就是指Unity版本修改后打包,会破坏原来的CRC信息,导致导报出来的资源无法通过CRC校验。

2023-12-08 15:27:25 557

原创 【Unity】LayoutGroup自动缩放子对象大小

如果LayoutGroup的子物体太多,超出layoutGroup的范围,则对子物体进行缩小。确保子物体都在LayoutGroup的范围内

2023-11-10 09:56:19 436

原创 【Unity】Unity接入内购IAP,提示you are not authorized to set the license key

查阅相关内容后(https://forum.unity.com/threads/purchase-you-are-not-authorized-to-set-the-license-key-google-play.954261/)Unity2020之后有可能会提示:you are not authorized to set the license key。Unity2020后不在Editor上面填写了,改成在Dashboard上输入。接入IAP的时候需要输入谷歌的开发者后台key。

2023-07-06 15:16:56 913

翻译 c#正则表达式匹配国际手机号

虽然使用正则表达式对电话号码进行验证可以检查电话号码的格式,但并不能保证该号码存在。还有一种选择是允许电话号码字段没有任何验证,1.带有分机号的更复杂的电话号码。2.在不同时间拨打不同的电话号码。

2023-04-27 10:25:45 1168

原创 【Unity】一个简单的无限列表

Unity 简单的无限列表

2023-04-10 15:19:57 230

原创 【Unity】接入Max广告聚合SDK

选择所需要的广告源。ExternalDependencyManager会帮你根据选择的广告源下载对应的SDK,可能需要挂vpn。其他类型的广告接口可以看侧边栏的这里选择。4.在Unity应用中加载广告。激励视频有一下参考接口。

2023-03-07 21:27:06 2892

原创 【Unity】SafeArea适配大小

通过使用SafeArea,修改stretch适配类型的UI画布的Top偏移,适应安卓异型屏幕。

2023-03-03 15:39:17 1379

原创 【Unity编辑器】指定目标文件夹并导出图集

功能:右键目标文件夹,根据所在路径导出到目标路径,并生成对应的SpriteAtlas文件。"Assets/生成图集(选中文件夹)"

2023-03-02 20:21:30 464

原创 【Unity3D】代码移动动画优化

设置X轴和Y轴的动画曲线,通过AnimationCurve.Evaluate获取进度中X和Y移动的进度的值,控制偏移。可以根据动画曲线控制平移时候的效果。"X轴方向动画曲线""Y轴方向动画曲线"

2022-08-22 11:35:13 1170

原创 Unity安卓生成设备唯一id

目标:生成唯一id,重启后生成仍旧相同。其实可以使用GAID等来源于其他SDK的唯一id,但是为了一个UUID而接入一些SDK,好像也不太对这里参考网上一些内容,通过设备相关信息,生成UUID。作为唯一id相关代码和aar已经打包成一份package了:代码+样例下载android的代码: public String GetSerial() { String serial = ""; try { if (Build.VERS.

2022-02-26 15:04:34 6501 1

原创 Unity安卓端重启游戏

关掉游戏,然后再重新启动。不是重新加载入口场景 public void RestartAndroid() { if (Application.isEditor) return; using (var unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) { const int kIntent_FLAG_ACTIVITY_CLEAR_TASK = 0x00008000; .

2022-02-12 16:26:06 4655 2

原创 Unity 获取andorid的系统地区和系统语言

using System.Collections;using System.Collections.Generic;using System.Globalization;using UnityEngine;public class CountryAndLanguage{ /// <summary> /// 获取系统语言 /// </summary> /// <returns></returns> static public string

2022-01-17 14:00:17 930

原创 Unity丢失的资源统一替换

同事直接把资源文件夹删了,没说,说换了新的路径,资源的guid都改了,然后要一个个改很恼火,写个工具具体效果:1.寻找指定预制体上丢失的资源,并返回一个id2.把指定目录下丢失的资源的Text和Image的组件,并且挂上的也是这个id的统一换成指定字体和图片using System.Collections;using System.Collections.Generic;using UnityEditor;using UnityEngine;using UnityEngine.UI;.

2021-12-07 20:04:56 3325

原创 Lua下对gameObject判空

-- unity 对象判断为空, 如果你有些对象是在c#删掉了,lua 不知道-- 判断这种对象为空时可以用下面这个函数。function IsNil(uobj) return uobj == nil or uobj:Equals(nil)end

2021-10-25 15:26:18 700

原创 使用SpriteMask遮罩挖洞

只做引导的时候,可能会需要对UI上的某些区域进行一个高亮的效果。使用SpriteMask可以使遮罩挖洞,起到高亮的目的遮罩图片使用SpriteRenderer进行图片显示,并添加SortingGroup使SpriteMask指针对本地,不会和其他UI上的Mask影响挖洞上添加一个SpriteMask并且洞的形状取决于使用的Speirte大概是这样的一个结构最终的结果如果想要点击到挖洞后面的UI其实也很简单,通过传递事件把高亮的按钮的事件传递到挖洞的SpriteMask上的点击事件就行了.

2021-06-10 16:16:44 1147

原创 使用RaycastCommand进行批量的射线检测

RaycastCommand 是Unity自带的一个批量射线检测方案,具体内容可以参照:https://docs.unity3d.com/ScriptReference/RaycastCommand.htmlusing System.Collections;using System.Collections.Generic;using UnityEngine;using Unity.Jobs;using Unity.Collections; public class RaycastHitLab.

2021-04-20 14:02:55 1704

原创 ObiRope的一些笔记

之前用ObiRope做的两个小功能,分别是绳子剪裁以及绳子拖拽。但是项目没做完,公司黄了,记录一下相关的笔记。ObiRope下载链接:https://pan.baidu.com/s/1D6330eonD4SALxTOJ2a_bg提取码:hg2oObiRope这个是控制绳子的生成器,需要挂在ObiSolver下进行。需要挂在目标蓝图,使用了相同蓝图,EditPath所有的ObiRope都会一起发生修改。使用EditPath可以修改绳子的初始形状,并且这个修改不是针对单个ObiRope而是

2021-03-03 17:50:32 1535 4

原创 【Unity】用射线触发局部区域进行贴图切换

类似于一个刮刮乐的效果,通过射线检测Mesh上的某一点,然后是这一点上的贴图采用别的图片的一个效果如图就是射线检测水流碰撞点,然后把脏贴图替换为干净贴图using System.Collections;using System.Collections.Generic;using UnityEngine;public class TextureChangeHelper : MonoBehaviour{ [SerializeField] Texture2D _beforeTextru.

2021-02-25 14:26:40 1001

原创 【Unity】生成一个贴合动画的MeshCollider

单纯的MeshCollider只会根据mesh来生成对应的Collider,当动画发生变化之后MeshCollider读取的Mesh会不根据动画而产生变化,可以用SkinnedMeshRenderer下的BakeMesh来赋值,获取当前动画状态的Mesh,并赋予到MeshCollider上。但是生成出来的Mesh不会自己销毁。需要 Resources.UnloadUnusedAssets();否则会造成内存泄漏。using System.Collections;using System.Collec.

2021-02-25 14:13:32 1346

原创 Unity手机端3档震动

using System.Collections;using System.Collections.Generic;using UnityEngine;public class VibrateHelper : MonoBehaviour{ static public bool Acitve { get { return Global.VibrationOn; } }#if UNITY_IOS [DllImport("__Internal")] stati

2021-02-23 23:47:36 270 1

原创 Raycasthit.texturecoord闪退问题

试图通过Raycasthit.texturecoord来获取射线的uv点,结果造成闪退了。Crash信息:UnityEngine.RaycastHit:CalculateRaycastTexCoord_Injected解决:给模型加上读写权限:

2021-02-23 21:36:51 382

原创 Unity布娃娃被踢走后模型不显示

添加了布娃娃系统之后,受到物理拉扯的骨骼可以被玩家踢着到处跑,离开一定范围之后会出现布娃娃的模型不会在摄像机中显示的问题比如:Scene视图里面是有一个女尸体在场景里的,但是在Game里面是没有女尸体。后面通过判断,发现女尸体的Renderer不在Camera的视窗范围内,所以没有被渲染原因是renderer没过去,但是骨骼过去了,要显示模型的话,需要勾上renderer的这个选项,让renderer在摄像机外面也会进行渲染可以通过以下代码进行动态开关: this.GetCo

2021-01-18 20:22:20 265

原创 Unity显示被遮挡的模型

具体显示为这个效果:同事在网上找了一个受光的材质Shader "Custom/RoleShader"{ Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Albedo (RGB)", 2D) = "white" {} _Glossiness ("Smoothness", Range(0,1)) = 0.5 _Metallic ("Metallic",

2021-01-18 12:06:29 1013

原创 Unity根据帧率缩小分辨率优化性能

using System.Collections;using System.Collections.Generic;using UnityEngine;public class ResolutionOptimize : MonoBehaviour{ /// <summary> /// 不满这个分辨率就会缩小屏幕 /// </summary> public float MaxScreenFps = 40f; /// <summar

2021-01-15 15:44:05 531 1

原创 Mobile Fast Shadow优化阴影性能

下载MobileFastShadowMobileFastShadow是一个用投影的方式实现阴影效果的插件,可以调高游戏性能1.导入资源,可以选择把Examples内的示例文件都导入进来2.为了防止和Unity内部的影子重叠,先ProjectSetting下关掉Unity的原有影子3.新建一个空物体,挂上MobileFastShadow脚本挂上脚本之后会自动附带上Camera和Porjector组件,Camera是用于捕捉屏幕内容,并根据这个内容生成对应的阴影,可以理解为Camera是灯光

2021-01-15 15:05:02 833

原创 获取IronSource的广告源Pod和Maven版本

接入IronSource库后,现在可以选择Maven或者Pod的形式导入相关广告源,Ironsource官网上有一个入口,可以方便的获取接入广告源的Maven和PodAndroid:https://developers.ironsrc.com/ironsource-mobile/android/mediation-networks-android/#step-1在这边勾选所需的广告源会在下方这里更新你勾选的广告源的Maven版本。IOS的话同理,地址:https://developers.iro

2020-12-09 14:20:09 353 4

原创 Unity材质赋值引起内存问题

Material orginMat = new Material(text.fontSharedMaterial); if (td.font) text.font = td.font; Material curMat = new Material(text.fontSharedMaterial); curMat = CopyMatFromOrgin(curMat, orginMat); text.fon...

2020-12-09 14:14:20 526

原创 TextmeshPro自动选择文本材质

选中默认的FontAsset,找到FallBack Font Assets,并且添加你的其他语言的FontAsset进去这个的话会如果你当前的FontAsset不包含目标字符,就会在FallBack List下的包含目标字符的FontAsset并自动选择

2020-12-09 14:13:28 787

原创 Animator动画融合笔记

BlendTree在一个状态下,根据参数进行动画融合如下图效果为根据【Blend】这个参数不同,接近把左右前的移动动画进行融合Layers把身体不同部位的动画进行融合base layer是默认为override,并且权重是1。可以调节权重,使其生效或者不生效以及融合效果Mask放入的是生效部位,用于对于Transform或者avater的生效位置Blending是指override或者additive,指定是采取叠加融合还是直接覆盖。在avater下,动画的实际效果可能会因为其

2020-06-19 17:24:08 1405

原创 Unity版本更新之后IOS审核提示机型适配变少

之前用2020.3.1提交IOS白包,后来更新版本后使用2020.3.10打包的,提示适配 机器变少了。2020.3.10之后Auto graphics api只有metal了。应该是版本升级auto graphics api去掉了opengl了取消Auto graphics api后加上,可以加上OPENGLES 3...

2020-04-28 14:17:19 1431

原创 UI页面切换按钮随页面切换缩放

选中按钮放大其余按钮缩小的效果:using System.Collections;using System.Collections.Generic;using UnityEngine;public class BottomBarBtn : MonoBehaviour{ public RectTransform rect; public GameObject[] a...

2020-04-20 15:52:53 346 1

原创 Unity 判断是否点到UI的代码

public bool IsPointUI() { bool isPointUI = false; if (Input.GetMouseButtonDown(0) || Input.GetMouseButton(0) || (Input.touchCount > 0 && Input.G...

2020-04-15 01:05:09 463

原创 Unity适配IOS刘海屏

实现靠顶端对齐的UI在刘海屏往下偏移,并且用黑色图片填充适配前:适配后:public class SafeAreaFitter : MonoBehaviour{ // Start is called before the first frame update public bool drag; public float offset; void...

2020-04-08 13:51:13 2934

原创 Ironsource sdk在Unity 2019.3.x下代码过时bug

报错:Assets\IronSource\Editor\FacebookSettings.cs(18,48): error CS0619: ‘PBXProject.GetUnityTargetName()’ is obsolete: ‘This function is deprecated. There are two targets now, call GetUnityMainTargetG...

2020-04-02 18:28:01 2008

原创 Unity ScrollView左右拖拽翻页

ScrollView来实现左右拖拽的翻页。类似于微信,左右拖拽时候上下无法拖拽,上下拖拽的时候左右无法拖拽。并且左右拖拽的是时候 会有弹力进行对对齐using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.Event...

2020-04-01 17:00:31 957 1

原创 UGUI中UI朝向某一个物体

做一个上一剪头朝向下一箭头的效果代码: Vector3 dir = arrows[i + 1].transform.position - arrows[i].transform.position; dir.z = 0; dir.Normalize(); arrows[i].transform.up =...

2020-02-20 16:57:03 611

原创 UI特效应用Mask剪裁

公司的特效做UI特效的时候,总喜欢一些奇奇怪怪的shader。做滚动窗口的时候需要用Mask把多余位置遮住,如果里面有特效的话会像这样透出修改shader 的代码,使其支持支持stencil,可以实现mask遮盖加入下面的两段代码: _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", ...

2020-02-06 20:39:20 396

原创 MeshTextPro 自动换行和自动缩放问题

如果启用了autosize,MeshTextPro会优先显示完一个单词之后才会进行换行。当此时如果一个单词过于场的话,MeshTextPro会对其进行缩放,直至当前行可以显示完整单词之后,在进行换行处理。如果需要自动缩放,但是又想其填满一行之后直接自动换行,而不先自动缩放在进行换行。而是直接换行填满后再进行自动缩放,可以修改其代码可以找到TMPro_UGUI_Private这个脚本,并搜索...

2020-01-08 12:06:17 6619 1

原创 Unity UI拖拽模型选择

指定一块区域,玩家鼠标or手指拖拽这个区域,模型会进行偏移,并用于进行人物、道具的选择给模型定义一些属性using System.Collections;using System.Collections.Generic;using UnityEngine;public class UIModelUtil : MonoBehaviour{ public Animator ...

2020-01-06 11:15:11 540

Unity简单的无限列表

Unity无限列表

2023-04-10

Unity安卓生成设备唯一UUID

Unity生成设备唯一UUID,代码+样例

2022-02-26

Unity重启安卓程序Sample

Unity重启安卓程序Sample

2022-02-12

Mobile Fast Shadow 1.0.6

Mobile Fast Shadow 1.0.6

2021-01-15

Unity中Android的文件操作

原数据存放在StreamingAsset中,首次启动复制到persistentDataPath,以后进行更新和读取都在persistentDataPath中使用File进行文件操作。需要恢复书序的时候从StreamingAsset中获取即可。

2018-07-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除