- 博客(154)
- 资源 (3)
- 收藏
- 关注
原创 Unity 接入抖音小游戏一
本文详细介绍了Unity小游戏接入抖音SDK的全流程。首先讲解了WebGL环境配置和存储接口适配,然后重点解析了抖音SDK六大核心功能:1) SDK初始化与系统信息获取;2) 用户登录授权流程;3) 分享功能实现;4) Android桌面快捷方式添加;5) 侧边栏场景跳转;6) 激励视频广告接入。文章提供了完整的代码实现,包括跨平台适配方案、回调处理逻辑和错误检测机制,特别强调了数据分析上报和iOS/Android平台差异处理。最后展示了测试用例,涵盖了登录、分享、广告等核心功能的验证方法。
2025-06-13 17:17:00
1588
原创 Unity 接入抖音小游戏二
本文介绍了抖音小游戏开发的关键步骤:1)使用ByteGame工具构建WebGL包,需注意Brotli压缩对包体大小的影响;2)在开发者工具中配置双端WebGL模式,并讲解了Wasm分包功能的作用;3)完成测试后通过抖音后台提交审核。文章提供了从打包到发布的全流程指南,重点说明了压缩选项和分包策略对性能的优化作用。(150字)
2025-06-13 17:07:41
558
原创 Unity Android 启动应用的时候黑屏问题
摘要:针对Unity安卓开发中遇到的图形API选择问题,对比了OpenGL ES 2、3和Vulkan三种选项。OpenGL ES 2(2007)兼容性最好但功能有限;OpenGL ES 3(2012)性能更优且支持现代特效;Vulkan作为新一代API性能最强但兼容性较差。建议:高性能项目优先选Vulkan→OpenGLES3,兼容性需求选OpenGLES3→Vulkan,轻量游戏可仅用OpenGLES2。注意仅配置Vulkan可能导致黑屏,需搭配其他API使用。(149字)
2025-06-11 15:04:29
699
原创 Unity Editor 扩展:查找缺失的 Image Sprite
通过编写这个自定义的 Unity 编辑器扩展,你可以高效地查找和修复缺失的Image组件的Sprite引用。它能够自动扫描选定的文件夹中的所有 Prefab,并定位其中的缺失引用,大大节省了手动检查的时间。如果你的项目中包含大量的 UI Prefab 和资源,这个工具将是你提高生产力的重要助手。希望这篇博客对你有所帮助,快去试试吧!
2025-05-06 11:59:52
743
原创 Unity 使用Editor工具查找 Prefab 中的指定脚本
本文介绍的 "Prefab Script Finder" 是一个实用的 Unity Editor 工具,能够帮助开发者快速在 Prefab 中查找附带特定脚本的对象。通过这种方式,我们可以减少开发过程中的重复劳动,快速定位问题所在,并提高整体开发效率。
2024-09-19 14:05:20
1576
原创 Unity 使用Spine动画切换时有残影
在Unity的Project下找到Spine动画的SkeletonData文件,选中该文件之后在Inspector面板上找到Animationgs下面有一个“Setup Pos”,这个按钮可以将骨骼(bones)、资源槽(slots)或两者重置为装配动作(setup pose)。// 强行执行一次Update, 因为执行上述代码时,可能skeleton自身的Update已经执行完毕,这样要到下一次Update才会刷新Spine。// 强行执行一次Update,就可以立马刷新Spine状态。
2024-09-13 14:04:12
1199
原创 Unity TextMeshPro 设置竖排
这个效果才是我们需要的效果 但是我们也不想每次设置文本时都要手动添加Tag所以我们可以使用TextMeshPro提供的TextStyle 我们添加一个自定义Style 找到TextMeshPro->Resource->StyleSheets->DefaultStyleSheet这个asset文件选中它。但是这个效果还是不是我们想要的效果我们可以使用TexeMeshPro提供的一个选项EnableRTLEditor 勾选上如下图。
2024-09-09 18:08:24
1195
原创 Unity UGUI Image Maskable
在Unity的UGUI系统中,Maskable属性用于控制UI元素是否受到父级遮罩组件的影响。
2024-07-15 17:32:06
1282
原创 Unity中实现ScrollRect 滚动定位到视口内
Unity版本:2020.1.x在Unity游戏开发中,滚动视图中元素的定位是一个常见需求。为了解决这个问题,我们可以编写一个名为 "ScrollLocate" 的脚本来实现这个功能。
2024-06-16 02:08:27
871
原创 Unity UGUI ScrollRect 滑动显示左右箭头
通过这两个脚本,我们扩展了Unity的ScrollRect组件,使其能够根据内容的滚动状态显示左右箭头,提示用户内容可以继续滚动。此外,我们还自定义了编辑器,可以在Inspector窗口中方便地设置左右箭头的引用。这种扩展方法既保留了原有组件的所有功能,又增强了用户体验,是一种推荐的组件扩展方式。
2024-06-13 15:42:56
1454
原创 Lua 时间工具函数:获取距离目标时间的秒数(支持每日和每周)
在游戏开发或后台系统中,经常会遇到需要计算当前时间距离某个目标时间的间隔。比如:玩家每日任务在早上 5 点刷新,如何获取当前距离刷新时间还有多久?每周一早上 5 点有周常任务刷新,怎么得知还要等待多少秒?今天分享一个使用 Lua 编写的实用时间工具方法,可以解决这些问题。我们要实现的目标是:输入一个目标小时(可选星期几)返回从当前时间到该目标时间的秒数例如:三、代码结构封装了一个 工具模块,包含两个核心方法:获取今天或明天的指定小时的时间差(单位:秒)获取指定星期几与小时的时间差(单位:秒)
2024-06-05 20:04:15
861
原创 Unity UGUI实现无限滚动列表
在游戏开发中,列表视图是一个常见的UI组件。实现一个高效的列表视图尤其重要,尤其是在需要展示大量数据时。本文将介绍如何在Unity中实现一个高效的无限滚动列表,包括两个关键脚本:InfiniteScroll 和 ListItem 两个脚本 话不多说直接上代码。Unity版本2022.3.X。
2024-05-27 15:19:15
1869
6
原创 Lua 数字格式化
这个函数接收一个数字和一个小数点位数,然后将数字格式化为指定小数位数的浮点数。它通过在小数点后四舍五入来实现精确度控制。endend这个函数用于将一个较大的数字转换为以万或亿为单位的字符串表示,同时保留指定的小数位数。它先判断数字是否大于一万,若大于则将其单位转换为万或亿,然后调用函数进行小数位数格式化,并拼接单位字符串返回。local units = {'', '万', '亿'}breakendendend这个函数是一个高级封装函数,用于根据需求格式化数字。
2024-05-10 20:24:55
788
原创 Unity 编辑器工具 - 资源引用查找器
资源引用查找器允许开发者选择一个目标资源,并在整个项目中查找引用了该资源的其他资源。在Unity编辑器菜单栏下添加一个名为"Resource Reference Finder"的菜单项。提供一个可调整大小的窗口,用于选择目标资源和显示引用结果。通过点击"Search"按钮来触发搜索过程,查找所有引用了目标资源的Prefab文件,并将结果展示在窗口中。
2024-05-04 18:34:36
2655
原创 Unity UGUI Image 点击事件忽略空白像素区域
我们会遇到图片不是方形的不规则图片。这个时候我们希望只有点击到图像内容本身才算点击,点击空白区域则不算点击。而UGUI对图片的处理是整个图片都会算作点击区域,这样不能满足于我们的使用需求了。设置为 0.5,那么只有点击不透明度(Alpha 值)大于或等于 0.5 的像素时,点击事件才会被触发。换句话说,只有点击图像上不透明度较高的部分时,点击事件才会被认为有效。这意味着对于透明度小于 0.5 的像素,点击事件将被忽略,而对于透明度大于等于 0.5 的像素,点击事件才会被处理。
2024-05-04 15:19:57
735
原创 Unity 通过权重做随机
遍历数组,并将随机数逐渐减去每个项目的权重值,直到找到最后一个权重导致随机数变为负数的项目。使用方法:将 此脚本附加到Unity游戏对象上,并在Unity编辑器中将权重和游戏对象分配给。首先,创建一个数组,其中包含你要选择的项目,并为每个项目分配一个权重值。方法根据总权重随机选择一个对象,并返回选定的游戏对象。方法结合权重来实现随机选择。方法中,计算了所有对象的总权重。生成一个介于0和总权重之间的随机数。类包含了游戏对象以及它们的权重。计算所有权重值的总和。
2024-04-11 10:25:21
1382
原创 Unity UGUI实现点击事件穿透
如果只传递一层的情况 Button的Text文本 或者Button下面有遮挡物 并且Raycast Target是true的情况它会传递给Text或者 其他遮挡物 而Button 不会收到点击消息 所以如果想要下层百分百生效 最好的情况是 把Button 下面的遮挡物 Raycast Target设置为false 因为如果一直往下传递的话 当前点击的位置无论叠加多少层Button 他都会响应 所以一直往下传递是不可控的情况。代码很简单如下 将此代码挂载到上层节点上即可。
2024-02-06 20:43:48
2535
原创 Lua 中的do...end和repeat...until
在代码块内部,可以访问到x和y,但在代码块外部,只能访问到x,无法访问到y,因为y的作用域仅限于代码块内部。创建一个作用域:do...end可以将其中的代码块封装在一个新的作用域中,使得在代码块内定义的局部变量只在该作用域内有效,避免与外部作用域中的变量冲突。需要注意的是,由于repeat...until循环保证循环体内的代码至少会被执行一次,因此在循环体内部要谨慎地编写代码,避免出现意料之外的行为。代码块是一组语句的集合,可以将多行代码组织在一起,形成一个独立的执行单元。大于10时,条件为真,循环结束。
2024-01-17 15:36:31
1639
原创 Unity UnityWebRequest 在Mac上使用报CommectionError
今天是想把前两天写的Demo拿到Mac上打个IPA的完事我发现 在运行时释放游戏资源的时候UnityWebRequest返回的结果不是Success 查看Log发现是 req.result 是CommectionError error是 Cannot connect to destination host。给你的Path加上"file://" 即可。
2023-12-30 00:50:05
1085
原创 CocosCreator 实现打字效果
清除定时器,并执行回调函数(如果有)。否则,将下一个字符添加到 Label 组件中,递增索引,以便在下一次回调中显示下一个字符。计算每个字符之间的时间间隔,以控制打字速度。函数设置定时器,每隔一段时间执行一次回调函数。如果已经显示完所有字符,就调用。在函数内部,我们首先获取 Label 组件的文本内容,并使用变量。CocosCreator 版本3.4.2。然后,我们定义了一个变量。表示每秒展示多少个字,可以通过计算。,用于表示当前显示的字符索引。这个函数用于清除定时器。
2023-07-21 15:15:33
694
原创 Unity UGUI 实现一个拖拽一个物体到另一个物体上 并返回两个物体是否相交或者是否在对方物体的中心点
将OnEndDrag函数修改为如下即可。判断两个物体是否相交可以写入如下方法。ColliderNode.cs脚本。接下来创建一个碰撞拖拽的具体实现。首先创建一个碰撞管理器。
2023-06-25 18:33:33
972
原创 CocosCreator Graphics实现跟随手指
cocosCreator版本 3.4.2。代码示例 代码都有注释 请自行查看。如下是节点路径 以及代码挂载。也可以指定颜色 代码如下。
2023-04-27 13:17:31
668
转载 cocoscreator按钮长按功能实现
产品需要游戏的开始按钮,单击:游戏开始;长按:显示托管场次面板。引擎:cocoscretor v2.1.2 语言:JavaScript。
2023-04-26 13:49:54
1288
2
原创 CocosCreator Lerp插值
本身我是做Unity的习惯了使用Mathf.Lerp完事在CococsCreator里面没有找到这个相关的函数 完事就自己写了一个 具体的公式如下。t的话代表 从a到b之间的一个差值率 t会被限制在0~1之间 t是=的情况下返回a t是1的情况下返回b。首先定义三个字段 t,a,b a表示初始值 b表示目标值。
2023-04-25 10:17:31
998
原创 Unity IOS 通过命令行导出IPA
新建一个文件没有后缀然后输入如下内容。该行命令是进入到Xcode工目录。该行命令是导出Ipa文件。该行命令清除掉Xcode的缓存。
2023-02-27 15:40:41
959
转载 xcode-select: error: tool ‘xcodebuild‘ requires Xcode, but active developer directory ‘/Library/D...
在运行脚本的时候遇到一个问题,报错。切换到当前Xcode路径下。解决方案:1.执行sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/切换到当前Xcode路径下2.执行xcodebuild -showsdks3.执行xcrun --sdk iphoneos --show-sdk-path4.重新运行脚本
2023-02-24 17:28:59
1123
转载 Lua 知识点
Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。协同是非常强大的功能,但是用起来也很复杂。
2023-02-23 17:23:35
542
转载 Unity3d windows平台基于3D WebView for Windows and macOS (Web Browser)插件打开内嵌网页支持AR/VR功能实现
之前Unity3d的程序在win pc上打开网页一般使用EmbeddedBrowser插件,也算是比较好用的,不过经过查找我发现3D WebView for Windows and macOS (Web Browser)插件也很不错。支持?Vuplex VR/AR 浏览器的相同代码,轻松地在 Windows 和 macOS 上以 3D 形式渲染 Web 内容并与之进行交互。支持Android、iOS、Windows、macOS?和?
2023-02-23 13:44:18
3554
9
原创 Unity 使用.bat自动化打包Apk
最后执行打开 G:\AndroidStudioProject\Test\launcher\build\outputs\apk\release\ 文件夹即可看到出的Apk。进入到AS项目根目录里面然后 执行Release出包 也可以执行。然后创建一个 build.bat文件 内容如下。首先创建一个start.bat脚本内容如下。
2023-02-23 11:11:11
1713
转载 AndroidStudio使用命令行出包(可封装成C#版打包工具)
说到这有一个你要注意的点,我这win10的系统,在IIS里开启的cmd,是6.2版本,而不在IIS里打开的cmd,是10.0版本,同时10.0版本的另一个名字叫做:Terminal。---------从这里到正文区之间的内容,都是正文写完之后,增加的升级补丁,若没有升级过Unity版本则跳过-----------------------------------------2022.09.02更新-------------------------
2023-02-20 14:07:37
1569
原创 Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0. 解决办法
说的很明白 jcenter()这个函数已经被弃用替换为mavenCentral()函数即可。今天编译一个之前在家里打包的项目 然后发现公司的电脑编译不过 问题如下。发现是Gradle版本的问题 导致出现的这个问题。根据上面的提示在Terminal里面输入如下指令。找到build.gradle文件 原本是。
2023-02-17 10:23:31
7983
转载 Using flatDir should be avoided because it doesn‘t support any meta-data formats.解决办法
在升级了Android Studio和Gradle后,运行的时候会出现这样的警告解决办法。
2023-02-17 10:14:40
14334
转载 使用命令行运行unity并执行某个静态函数(运用于命令行打包和批量打包)
这个bat批处理首先判断Unity是否运行中,如果运行中,则先杀掉Unity,然后启动Unity并执行某个Editor的静态函数py脚本例子:(把下面的python脚本保存为unity_call.py,放在工程目录中,即Assets的外层目录)在Unity中的Editor目录中新建一个MyEditorScript.cs脚本,如下。
2023-02-15 18:13:28
1012
转载 C# 多线程
被定义为程序的执行路径。每个线程都定义了一个独特的控制流。如果您的应用程序涉及到复杂的和耗时的操作,那么设置不同的线程执行路径往往是有益的,每个线程执行特定的工作。线程是。一个使用线程的常见实例是现代操作系统中并行编程的实现。使用线程节省了 CPU 周期的浪费,同时提高了应用程序的效率。到目前为止我们编写的程序是一个单线程作为应用程序的运行实例的单一的过程运行的。但是,这样子应用程序同时只能执行一个任务。为了同时执行多个任务,它可以被划分为更小的线程。
2022-11-14 11:11:27
135
Unity ScrollRect Item 定位
2024-06-17
EnhancedScrollRect
2024-06-13
UnityUGUI无限滚动列表
2024-05-27
Unity Obfuscator Pro插件
2022-07-21
Unity Obfuscator插件
2022-07-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人