Unity
文章平均质量分 65
Aertims
分享即学习
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Image透明度点击简述以及Unity2019之后存在无法点击的BUG修复
自Unity2019之后Unity将UGUI模块从内置库修改成了通过PackageManger引入的方式。Image就来源于com.unity.modules.imgui模块。其实代码大体代码跟2018是一致的,但是还是有些细微差别,Image透明度点击不命中就是2019之后才有的问题,2018版本是没有这个问题的,我都怀疑是开发人员抄代码没抄全。首先这个点击不命中是在你使用图集的方式打包UI图片时出现,Unity使用SpriteAtlas自动打包图集。原创 2023-11-11 21:25:04 · 849 阅读 · 0 评论 -
ShaderGraph Vertex Position节点无法连接
作为Shadergraph新手在制作顶点动画的时候遇到了顶点着色器中Position节点没法连接的问题,在仔细阅读文档的时候,发了问题,这里特此记录。这个时候需要去检查顶点着色器中是否存在纹理采样,如果存在纹理采样是不是使用的。,如果不是就没法进行连接。原创 2023-05-10 10:35:10 · 1157 阅读 · 1 评论 -
UnityShaderBook中消融dissolve详解
消融这个效果算得上游戏开发中用的比较多的一个效果,表现游戏对象消失的时候经常用到,这个效果实现也非常简单,因此在《UnityShader入门精要》中也就短短几句话讲完了,这里我想针对书中的效果详细讲解一下。,我这里就不贴出源代码了,可以照着看。消融效果的核心是使用函数,将的像素裁剪掉首先Disslove中包含两个Pass,一个前向渲染、一个阴影渲染,我们下面挨个解析。原创 2023-05-05 22:36:53 · 967 阅读 · 0 评论 -
Unity-iOS工程导出Xcode自动构建方法
Unity-iOS发布基本流程首先在Unity中导出Xcode工程,然后在Xcode工程中设置IOS打包的一些流程,诸如引入lib、framework或其他资源、设置签名及其他编译设置、加入编译脚本等等操作。这些操作如果每次都是在导出Xcode后手动操作,一来浪费时间,二来容易出错。自动设置好Xcode工程后我们就可以使用xcodebuild命令自动构建Xcode工程,使用ExportOptions.plist配置自动发布ipa或者正式包的流程。原创 2022-12-10 15:17:50 · 2956 阅读 · 0 评论 -
解决Mac下使用emmyLua调试遇到“dynamic libraries not enabled; check your Lua installation”
这个上官方的解答,这里说下具体做法。下面我导出的上lua53的mac os库,其他版本同理。添加“ADD_DEFINITIONS(-DLUA_USE_DLOPEN)“2.删除“plugin_lua53”目录(确保待会儿导出你看得到修改)遇到这个问题上因为XLua不开启dynamic libraries。这个时候你就可以看到导出了“plugin_lua53“这个文件夹。4.执行“make_osx_lua53.sh“3.修改CMakeLists.txt。6.重启unity即可。原创 2022-11-14 20:05:44 · 1629 阅读 · 0 评论 -
Unity寻路报错“SetDestination“ can only be called on an active agent that has been placed on a NavMesh.
至于为什么会出现这种情况,我猜想是首次添加Detour Crowd的时候没有成功,失败的原因也很多,因为无法去debug,只能有这种猜想。这个报错我在Editor与测试APK总都没有遇到过(如果遇到肯定早想办法解决了~),等项目上线了,发现bugly上报非常多这个报错。让我非常费解,幸运的是我找了NavMeshAgent的源码,才找到了一个稍微安全一点避免错误的方式。如果是,那就好办,将transform.position来修改坐标的方式替代为使用agent.Warp来修改。恭喜你,跟我遇到了相同的问题~原创 2022-09-05 19:07:16 · 4152 阅读 · 0 评论 -
修复Unity编译时“AAPT2 aapt2-4.1.2-6503028-osx Daemon #0 Failed to shutdown within timeout”错误
要解决这个报错首先我们要了解是什么东西。aapt 全称为 Android Asset Packaging Tool,即为Android资源打包工具。作为unity开发人员,一般跟Android打交道比较少,感兴趣的同学可以先去官网学习学习。原创 2022-08-07 10:29:03 · 5244 阅读 · 2 评论 -
xlua增加扩展c/c++库方法
xlua增加扩展c/c++库方法xlua官方提供了一个扩展库文档,如果你看了还是遇到些问题,可以参考这篇文档。xlua官方扩展文档:https://github.com/Tencent/xLua/blob/master/Assets/XLua/Doc/XLua%E5%A2%9E%E5%8A%A0%E5%88%A0%E9%99%A4%E7%AC%AC%E4%B8%89%E6%96%B9lua%E5%BA%93.md本篇文章主要说明下在使用编译过程中需要注意的问题。注意:下面示例都是以lua原创 2022-01-29 13:52:36 · 3408 阅读 · 0 评论 -
【Bug记录】UnityEngine.Object与System.Object判空混用引起的问题记录
上面之所以会出问题,就是在于我在资源卸载后会调用Resources.UnloadUnusedAssets对没用的资源进行卸载,这个过程是unity内部过程,而WeakReference是托管堆对象,需要gc后这个引用才会为空,而unity资源实际都是派生于UnityEngine.Object,这些实际上对应了c++对象,都是存在于非托管堆上。因此我推测(如有问题请指正),出现这个bug的时候是在,unity已经释放资源,通过UntiyEngine.Object == null已经为true,但是c#还没有触原创 2022-01-20 23:11:13 · 3095 阅读 · 1 评论 -
Unity加载优化-将基于LZMA的ab压缩方案修改为LZ4压缩的过程
# 观前提示本文适合需要了解LZMA以及LZ4进行ab打包方案同学,以及会将一些资源管理的方案。如果恰好你也用xlua-framework,那就更适合你了。# 优化起因最近新游戏在Iphone6上出现了闪退的情况,出现闪退是在加载完成后的一瞬间,用脚指头想都知道内存超过上限了,查了下Iphone6内存为1GB,可使用最大内存上限为645M,理应是一个很高的内存值,由于新游戏是一款3d大地图城建游戏,模型建筑特别多,内存也出现溢出。这让我不得不想办法优化内存以及加载速度,一般的内存优化是从纹理,模原创 2021-11-10 23:14:32 · 7795 阅读 · 3 评论 -
Unity在Canvas上画线(Draw Line)实现
# 前言目前Unity官方提供的UI扩展包中包含了UILineRenderer组件,本篇实现与UILineRenderer实现一致,主要讲解其基本使用与实现过程。不想看的同学可以直接下载官方扩展包。代码库:unity-ui-extensionshttps://bitbucket.org/UnityUIExtensions/unity-ui-extensions/wiki/browse/# 正文canvas上的渲染均通过CanvasRenderer,unity-ui扩展包实现了一套ui基础类U原创 2021-09-26 23:59:41 · 6944 阅读 · 0 评论 -
计算点到任意两点之间连线上的最近点【Unity数学】
我们已知P1,P2,P3点,要计算P3到P1->P2上的最近点,在上面这幅图中最近点则是P2这个点。计算步骤如下:1.首先我们计算P3点到P1->P2线段上的正交投影点C点2.根据P1->C比上P1->P2的长度得出比率3.将比率限制到[0,1]区间内4.获得比率之后就跟上篇计算两点之间的任意点计算一致,起点向量P1加上P1->P2乘以比值得到P3到P1->P2上的最近点计算代码如下:public Vector2 GetClosestPoi...原创 2021-09-22 16:23:25 · 1014 阅读 · 0 评论 -
Unity摄像机居中聚焦场景中对象的方法
# 前言在游戏场景中,经常需要平移摄像机然后聚焦对象,今天就来讲讲这部分是如何实现。# 正文# 思路我们可以让摄像机从屏幕中心点发射一个射线到场景平面(Plane)中,得到当前屏幕中心点在场景中的位置,然后对于目标点的差值就是我们需要移动摄像机的距离。# 代码实现//聚焦对象 private void CameraFocusAt(Transform target) { var cp = CalcScreenCenterPosOnPanel();原创 2021-06-23 23:45:58 · 3774 阅读 · 3 评论 -
【Bug修复记录】Unity Fog真机不生效相关问题
# 前言最近在场景中使用了unity自带的globalfog时出现了真机上不生效的问题。这篇博客主要是记录这个问题的解决过程。#正文##问题描述在Editor模式下模型能够与雾效融合实现雾效效果,但是到了真机出现了模型不能跟雾效融合,导致模型感觉在雾效上面。##问题原因先说下原因,是因为之前使用的模型shader使用的surfaceshader,在shader中设置了Emission自发光参数导致,但是我看到编译后的shader(如下图)也使用了UNITY_APPLY_FO...原创 2021-05-26 16:01:31 · 1670 阅读 · 0 评论 -
Unity开发UGUI模块开发经验之ScrollView的使用及优化
-前言-已经好久没有写博客了。最近开始了Unity的开发工作,一开始都是做做UI写写逻辑,目前主要任务就是摸透Unity UI的模块开发。本章就来了解下最近用得笔记多的ScrollView功能。在Unity中ScrollView功能是单一的滚动区域,但是我们日常游戏开发中,使用ScrollView所需要的功能更像是使用List一样,View中是重复的prefabs组成的,根据数据不同而展示不同内容的item。其实如果不考虑性能及个性的优化的话,自己认为Unity的ScrollView功能非常强大,并原创 2020-05-18 23:16:43 · 2158 阅读 · 2 评论 -
Unity坐标转换UI与屏幕坐标之间的转换
-前言-在我们的日常开发中经常会遇到各种坐标的转换,其中可以大致分为两类。1.将3D世界坐标转换到UI坐标中2.UI坐标之间的转换这一切的坐标都转换都是通过RectTransform、Camera及Unity坐标转换工具类RectTransformUtility的结合使用。-正文-UI坐标之间的转换首先我们来讲讲UI坐标之间的转换,UI坐标之间的转换涉及层级,首先我们需...原创 2020-04-13 22:57:05 · 10827 阅读 · 3 评论
分享