- 博客(322)
- 资源 (18)
- 收藏
- 关注
原创 Unity基于EventSystem让SpriteRenderer支持点击事件
若2D场景中使用了UGUI的UI系统,则默认是有EventSystem的。否则可以创建个UGUI的物体,然后保留EventSystem,删除其它不需要的。同理3D项目中物体也可以使用类似的方式,使得3D物体可以使用我们熟悉的类似UGUI的点击事件。组件,并妥善设置其EventMask属性。为SpriteRenderer物体添加。后面的用法就和传统Button一样了!碰撞体组件,否则其接受不到射线检测。
2024-06-12 19:51:13 500
原创 Wifi环境下Unity开发iOS应用启动后HTTPS请求未弹出是否允许无线数据使用数据的弹窗
上述笔者这边都排除了,但是有个可能是笔者这边HTTPS请求是使用的是一个比较老的稳定性挺好,且用于多个线上项目的Best HTTP插件,有可能是Unity升级后插件适配的问题?笔者项目在首次启动,登录界面点击登录按钮会先HTTPS请求创建帐号,但是在WIFI网络下,请求后一直提示网络连接失败。遂写了个iOS插件,在进入登录界面时模拟一次网络请求。的权限是关闭的,而使用流量时又可以内部触发弹出权限选择界面。一般而言App首次启动,网络请求时都会弹出。的弹窗,选择允许后则可顺利进入。"无线数据"使用数据。
2024-03-18 19:38:02 411
原创 MAC机器Unity接入iOS SDK安装cocoapods全攻略
unity打包ios工程报错iOS framework addition failed due to a Cocoapods installation failure. This will will。这篇博文中错误原因应该就是之前在配置仓库时,未事先选择XCode导致的。
2024-03-14 16:09:18 1405
原创 AndroidStudio连不上adb报错ADB Connection Error
之前笔者一直通过AndroidStudio来看日志,也一直用的一套自己的SDK,用了好几年了。但是突然有一天,AndroidStudio启动后就弹出警告窗:ADB Connection Error,如下:在Event Log面板还持续性的输出:Unable to detect adb version检查了一下,我端口5037并没有被其它进程占用,是adb占用的。adb服务也是正常启动的。最终找到原因是:可能是更新了AndroidStudio,adb的版本不匹配。
2024-03-06 16:04:26 598
原创 Unity中PlayerPrefs在PC上存储位置总结
编辑器下和EXE存储位置是不同的,这也不难理解,是为了避免存储位置相同导致开发和测试冲突。只会清理掉编辑器下的储存信息,无法清除EXE对应的位置。因此针对清除EXE的需求,笔者这里使用bat命令传参删除目标注册表("工具/PlayerPrefs/删除本项目 PC包对应的所有PlayerPrefs信息"注意:在unity中还有个,一定要慎用其方法,会删除编辑器的一些设置!!!
2023-12-01 18:21:07 934
原创 Unity中使用WebP类型文件
WebP是一种由Google开发的图像格式,旨在提供更高的压缩效率和更好的图像质量,特别是针对Web上的图像传输。以下是一些关键特点:压缩效率: WebP通常能够提供比JPEG更好的压缩效率,尤其是对于包含大量颜色的图像。透明度支持: WebP支持有损和无损压缩,而且能够在有损压缩中保留透明度。这是与JPEG相比的一个优势,因为JPEG不支持透明度。动态图像: WebP格式还支持动态图像,类似于GIF。这使得它适用于展示简单的动画。颜色配置: WebP支持多种颜色配置,包括灰度、彩色和透明。
2023-10-26 17:26:49 1123
原创 Unity Navgation系统杂记
然而事实是这样的话也会使物体发生不可控的瞬移,原因就是NavMeshObstacle的禁用不是立即完成的,上述代码会导致在当前帧NavMeshObstacle、NavMeshAgent都处于开启状态。如果你想各个单位能够更好的到达终点则每个单位的终点并不应该设置为同一个点,你可能需要根据每个角色的寻路半径来预先随机设置每个角色会到达的对应的位置,这样在寻路时才不会互相推挤。若有大量的角色同时寻路,且伴随carve的重建,那么寻路会很耗时,表现出的结果就是角色很卡,可以通过设置。为一个很大的值来规避。
2023-04-28 17:00:33 1605
原创 git文件超过100MB上传到服务器报错this exceeds GitHub file size limit of 100MB
github向服务器commit时,若有大于100MB(好像现在超过50MB就会失败)的文件会commit失败,同时报错提示。若要将大文件顺利提交,可以通过以下步骤。如果版本库已经执行了commit、push操作,记录中已经有了大文件,那么需要先把大文件从版本库记录中删除1,删除错误缓存索引2,重新提交这样就把所有小文件都提交到远程仓库了使用Git Large File Storage进行大文件提交。
2023-03-14 20:17:27 319
原创 Unity使用IL2CPP方式打Windows包
1,确保安装了对应版本的扩展包:UnitySetup-Windows-IL2CPP-Support-for-Editor。建议使用Visual Studio Installer补充安装一些C++相关的工具包。可以考虑把如下脚本放到Assets目录下(来自。笔者Unity版本2021.3.8f1。
2023-02-06 17:56:12 6454 1
原创 Unity编辑器Inspector界面中cs脚本文件乱码问题
既往经验通常都会在模版文件夹下修改模版文件的编码格式为utf-8编码。但是使用vs编辑代码写入中文保存后,文件编码格式变成ANSI,导致在Unity编辑器中的中文是乱码显示。因此如何设置VS保存文件的格式才是最根本的解决方法。
2023-02-01 16:02:13 856
原创 WinPC搭建nginx服务器
下载Windows稳定版包,解压后,双击nginx.exe启动nginx。也可以命令行CD到nginx.exe所在目录后,执行:start nginx来启动服务器。运行tasklist可以查看当前会话信息,看到如下信息说明启动正常。这两个进程中一个是主进程,一个是工作进程,如果nginx没有启动,可以到logs/error.log下面找原因。此时在浏览器输入localhost可以看到nginx默认页面(默认启动页为 html/index.html)的展示。
2022-12-13 11:02:18 301
原创 git pull报错unexpected disconnect while reading sideband packet
git pull报错unexpected disconnect while reading sideband packet。
2022-12-13 10:58:35 914
原创 Unity接入Protobuf协议
1,Google出品2,他是一种与语言无关、与平台无关,是一种可扩展的用于序列化和结构化数据的方法,常用于用于通信协议,数据存储等。他是一种灵活,高效,自动化的机制,用于序列化结构化数据,结合 JSON 和 XML 来理解,你可以暂时将他们仨理解成同一种类型的事物,但是呢,Protobuf对比于他们两个,拥有着体量更小,解析速度更快的优势。XML、JSON 更注重 数据结构化,关注人类可读性和语义表达能力。Protobuf 更注重 数据序列化,关注效率、空间、速度,人类可读性差,语义表达能力不足。
2022-10-24 23:41:52 1429 1
原创 Unity Profiler Gfx.WaitForPresentOnGfxThread占用过高
当在Profiler CPU项中Gfx.WaitForPresentOnGfxThread 这个项占比过高时,往往代表Unity的主线程已经跑完了,但是在等待GPU的渲染完成,这样做是为了达到同一的帧数。至于为什么Render Thread会很慢,需要通过查看GPU Profile或者结合项目实际情况去分析。比如场景开启了事实光照和阴影,在出现密级阴影时会消耗大量GPU。
2022-10-24 00:07:15 2889
原创 [Python]If this call came from a _pb2.py file, your generated code is out of date and must be regene
经分析,代码中确实使用了python的protobuf库,根据提示可知需要降低protobuf的版本。
2022-10-07 23:22:21 4420 1
原创 git报错OpenSSL SSL_read Connection was reset errno 10054
git pull时报错:fatal: unable to access ‘xxxxxx’: OpenSSL SSL_read: Connection was reset, errno 10054。即可解除ssl验证。
2022-09-21 19:04:29 1352
原创 CSDN深读计划第一期之漫画算法书评
翻阅后发现起点较高,很多内容都是基于漫画算法1的延伸,于是决定从漫画算法1开始看起。而漫画算法系列则一改算法类书籍的严肃,通过风趣幽默又不失严谨的漫画故事驱动算法内容的讲解,让底子不深厚的同学更容易理解。对比其它相关书籍,漫画算法花了很大的篇幅在介绍基本数据结构,这是本书条理性很直观的一个重要表现。所有的算法都要建立在基本的数据结构上,因此让读者对数据结构有深刻的理解是能进一步学习好算法的基础。漫画算法两本书涵盖了算法学习当中涉及的很多内容,包括排序算法、树、图、查找算法。
2022-09-04 21:51:20 150
原创 Win10磁盘有很多磁盘0分区
8,输入:delete partition override,若该分区可被删除,则可顺利删除,否则会弹出提示不能删除。(右键 “我的电脑”,选择“管理”,选择“磁盘管理”可以查看当前磁盘分区状况。7,输入:select partition 编号,进入目标磁盘的目标分区下;4,扫描完硬盘配置后,再输入list disk,按回车(列出磁盘列表);3,进入磁盘管理后,输入rescan,回车(扫描硬盘配置命令);6,输入:list partition,列出目标磁盘下的分区;一般建议使用命令行提示符进行删除。...
2022-08-31 23:54:22 8132 1
原创 C# const readonly static 关键字区别
const是编译时常量,readonly是运行时常量;const较高效,readonly较灵活。在应用上以staticreadonly代替const,以平衡const在灵活上的不足,同时克服编译器优化const性能,所带来的程序集引用不一致问题。...
2022-07-28 16:30:05 135
原创 [图形学]ASTC纹理压缩格式
ASTC(AdaptiveScalableTextureCompression),由ARM和AMD联合开发,2012年发布。是一种基于块的有损压缩算法。它的压缩分块从4x4到12x12最终可以压缩每个像素占用1bit以下。ASTC格式支持RGBA,适用于POT和NPOT纹理。上图展示了不同BlockSize下每个像素占用的bits。易知,BlockSize越大,压缩的越厉害。以ASTC4*4BlockSize为例,可以看到每个像素占用8bits即1个字节。......
2022-07-19 11:56:29 4184
原创 浅谈Anroid设备的CPU类型以及so文件的放置目录
早期的Android系统几乎只支持ARMv5的CPU架构。现在发展为了七种ARMv5,ARMv7(从2010年起),x86(从2011年起),MIPS(从2012年起),ARMv8,MIPS64和x86_64(从2014年起),每一种CPU架构都关联一种ABI。ABI即,定义了二进制接口(比如so文件)交互规则,以适用于不同CPU。在Android系统上,每一个CPU架构对应一个ABI。...
2022-07-15 18:56:55 1065
原创 Unity打Android包报错Error building Player Exception OBSOLETE - Providing Android resources in AssetsPlug
对Unity工程进行了大版本升级,从2020.3.20f1升级到2021.3.3f1。打包报错如下Exception。
2022-07-15 12:08:59 3049
原创 Unity编辑器扩展
使用MenuItem标识可以为编辑器添加新的菜单,也可以为Inspector上下文添加菜单。点击后执行一些特定的逻辑,没有额外的操作界面。只有静态方法可以使用该标识,该标识可以把静态方法转换为菜单命令。另外可以为菜单创建快捷方式(hotkey),你可以使用如下特殊修饰字符:%(Windows系统上的ctrl,OS X系统上的cmd),#(shift),&(alt)。比如快捷方式“shift-alt-g”的写法为[MenuItem(“XX/XX/XXX #&g”)]。如果不需要为hotkey提供修饰符需要用
2022-07-07 18:34:01 5757
原创 [SDK]Unity接入Sign in with Apple
iOS13之后引入了,Sign In with Apple是跨平台的,可以支持iOS、macOS、watchOS、tvOS、JS。对iOS上的App而言,若引入第三方或社交登录(Facebook,支付宝等)那么则必须接入SIWA(Sign in with Apple)。满足以下条件可以不使用苹果账号登陆:1,应用仅使用开发者公司自己的账号设置和登录系统;2,应用归类为教育、企业或商业应用,要求用户使用现有的教育或企业账号登录;3,应用使用政府或行业支持的公民身份识别系统或电子D对用户进行身份验证;
2022-06-27 19:10:51 1986
原创 [SDK]Unity接入Facebook SDK获取用户头像
官方文档:Facebook Login For Gaming总结如下:1,你的FB账户内还有一个游戏账户,在Unity中使用FB的官方SDK提供的接口进行登录时,比如当使用gaming_profile权限登录,拉起的登录界面只有游戏账户选项;当使用gaming_user_picture权限登录,拉起的登录界面既有FB账户选项又有游戏账户选项。2,不同的登录选项会获得不同的头像和玩家名比如,当玩家通过游戏账户登录,那么后续通过FB.API获得的头像是游戏账户的头像,获得的name是游戏账户设置的昵称因
2022-06-21 18:51:43 1766 1
原创 Unity UGUI RawImage RenderTexture完美解决方案
前言UGUI中使用RawImage加载RenderTexture是一种很常用的3D转2D的方案,常被用于角色立绘显示、特效显示等需求中。流程一般而言会有一个专门的相机对目标物体进行渲染,并把结果存储到RT(RenderTexture)中,然后在最终的RawImage中显示RT。因此流程可以划分为两个阶段:Model →\rightarrow→ RT这阶段Model使用的Shader是不固定的,千奇百怪。RT →\rightarrow→ RawImage这阶段默认情况下RawImage使用的
2022-04-06 13:00:48 6767
原创 Unsupported OS Version In Xcode
通过XCode给同事iOS手机装包,报错Unsupported OS Version In Xcode。原因:同事iOS手机刚升级了iOS 15.4,Xcode未配置对应版本的设备支持文件解决方法:下载对应版本的设备支持文件iOS-DeviceSupport放到Xcode的对应目录下Open the DeviceSupport folder at Applications/xcode.app/contents/Developer/platform/iPhoneOS.platform/Device
2022-04-06 12:52:48 2422
原创 XCode11上传ipa到AppStoreConnect
XCode11已不再自带Application Loader了。可以通过以下方式进行ipa的上传。XCode构建ipa时直接上传在Archive出文件后,在Archive界面(Window->Organize)通过DistributeApp构建能上传AppStore的包时,在引导界面有一个选项是可以直接上传到Store的。这种方式在遇到卡顿,报错时不太好处理,又要重新打包构建,很耗时间使用Transporter可视化APP在mac中下载该免费可视化上传工具,通过XCode构建出ipa
2022-04-06 12:37:03 4580
原创 Unity接入谷歌推送FCM
前言自2014年Firebase被Google收购以来,其已成为Google移动平台的主要产品。FCM已完全替代谷歌自己的GCM作为安卓手机的首要推送服务(当然这只针对海外,国内厂商机器默认是没有安装谷歌服务的,且大部分手机完全不支持安装)。海外Push通道push整个推送环节中,push通道是决定整个发送率和到达率的关键一步,push通道的稳定会影响整个push推送的质量。海外push通道类型主要分为:FCM通道(由 Google 提供的推送服务)、厂商通道和长连接通道,三个通道各自有各自的特点
2022-03-17 20:15:00 5568
原创 Unity XCode打包报错 Undefined symbols for architecture arm64
这个报错一般是相关的库没有引入,笔者查看详细报错信息提示的是libxlua.a未引入返回XCode,确实未看到对libxlua.a的引用,如下图:但是项目工程里面确确实实是有的,且放在Plugins/iOS(或者Plugins/…/iOS)目录下的。最后发现原因是Unity内未为其勾选目标平台[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jq4kXFcL-1647515662257)(https://raw.githubusercontent.com/iningwe
2022-03-17 19:15:54 8667
原创 MAC新机Unity开发报错error installing cocoapods
MAC新机系统11.4,安装的XCode版本为13.2.1。打开一个Unity工程,切换到iOS平台后,后台进行了CocoaPods的安装,但是报错提示安装失败:ERROR: Error installing cocoapods: ERROR: Failed to build gem native extension. current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/ext/ffi_c/System/Librar
2022-03-17 19:01:37 8834
原创 MAC上安装软件报错Could not resolve host github.com且ping不通github.com
MAC上使用命令行安装软件经常会从git库中下载软件,可能会经常遇到安装失败,报错诸如 Could not resolve host:github.com这个时候打开终端, 执行 ping github.com, 大概率会提示Time Out解决方法往MAC机器中的hosts文件中添加如下代码:# github192.30.255.112 github.com git 185.31.16.184 github.global.ssl.fastly.net 如何添加法一SHIFT+C
2022-03-17 19:00:02 1000
原创 Unity TextMeshPro图文混排
笔者最近项目使用TextMeshPro完成图文混排的需求,以及图文超链接,总的来说功能很强大,没遇到什么坑。这里记录一下图文混排实现的基本流程流程。制作需要混排图片.asset文件方式一使用图集生成SpriteAsset,需要保证图集的Mode是Multiple类型,即已经裁分了精灵。右键图集文件选择Create->TextMeshPro->Sprite Asset,会自动生成和图集同名的.asset文件。.asset文件需要放置到TextMesh Pro/Resources/Spri
2022-03-09 11:40:35 4719
原创 Unity跳转App的应用市场
APP应用市场提供了专门的格式URL用于应用市场的跳转。安卓中的格式为:market://details?id=安卓应用包名IOS中的格式为:itms-apps://itunes.apple.com/app/id苹果应用APPID。一般情况下Unity中可以通过Application.OpenURL(url)的方式,直接调用上述专用格式URL即可打开。安卓平台但是对于安卓平台,由于碎片化,机器中可能会安装有多个应用市场,这样的话直接使用Unity的API会随机打开一个应用市场。可以通过下述方法打
2022-03-08 12:25:45 5236
原创 浅谈Unity中的文字显示
以UGUI系统为例,字体分为内置字体、外部导入字体、自定义字体。文字一般通过Text组件进行显示。目前Unity已经官方支持TextMeshPro,因此也有一些文字通过TextMeshPro-Text(UI)组件进行展示,可以支持比Text组件更强大的功能(更强大的富文本、图文混排)。同时我们也可以借用工具(比如bmfont)设计效果更复杂的所谓美术字,Text组件是默认支持美术字显示的。内置字体当创建Text组件后,默认的字体是Arial,这是个西文字体,是Unity自带的字体。之所以在编辑器和手机
2022-02-28 19:02:45 7075
原创 Unity TextMeshPro显示中文
TextMeshPro插件导入Unity后,其自带的默认字体只支持西文字符和一些标点符号,是不支持中文显示的。为了支持中文的显示通常有两种方案。静态字体方案Window->TextMeshPro->Font Asset Creator,打开如下界面:Source Font File选中一个中文字库Character Set选项选择Charactors from File这样就可以通过配置一个中文文档来生成中文字库。这种对于只有某些中文字符的项目是可行的,对于有聊天系统自然就行不通了
2022-02-28 19:01:56 8314
用于unity引擎的体素lowpoly风格的冬日飘雪圣诞节节日相关3D模型
2023-12-06
Unity Technologies开发的Sign in with Apple
2022-06-27
Unity安卓开发最全NDK版本下载
2022-06-27
Unity3D寻路插件AStarPathfindingProjectPro
2022-04-22
ShaderControl3.1.rar
2020-10-14
CPU虚拟化检测工具-绿色版
2019-02-12
tomcat服务器跨域需要的CorsFilter jar文件
2018-11-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人