Unity
Merlin-Ice
Write the best codes for the best game!
展开
-
YVU视频曝光解决
YVU曝光问题原创 2023-01-07 17:32:08 · 319 阅读 · 0 评论 -
Can‘t find LibVLC libraries, try to check the settings file in UMP ‘Resources‘ folder.
Unity UMP播放问题原创 2023-01-07 15:51:32 · 617 阅读 · 0 评论 -
如何查找Dll依赖
dll依赖查询原创 2022-12-02 10:33:43 · 3752 阅读 · 0 评论 -
Unity il2cpp LinuxInterop_dlopen Error
解决Unity il2cpp 编译Bug问题原创 2022-11-26 16:10:02 · 499 阅读 · 0 评论 -
Unity 单线程异步编程
CoroutineAsync(发音:ai shen ke)Function标识IEnumeratorasync开始执行StartCoroutine(Func())Func()等待yield return new WaitForSeconds(10)await Task.Delay(1500)等待执行yield return Func();await Func()批量执行需要自己构建IEnumerator i1 = Tesfst2();yiel...原创 2022-03-02 16:57:22 · 2574 阅读 · 0 评论 -
Unity 模块化编程
再Unity 2020版本中提供了创建Assembly definitions资源的功能模块化步骤:模块化只帧对当前文件夹目录下的代码1、在代码目录下创建Assembly definition资源,命名为T1对T1属性进行设置:在这里插入图片描述打开工程即可看到2、在子目录Behavior中再建立一个模块T2,再Behavior目录下再创建一个Assembly definition资源,命名为T2其属性和T1配置相同然后打开工程:...原创 2022-02-25 16:35:36 · 5497 阅读 · 0 评论 -
Unity 2D Computer Shader Water
https://download.csdn.net/download/weixinyi21cn/81313709原创 2022-02-18 16:42:41 · 811 阅读 · 0 评论 -
D3D11: failed to create render texture
方法1:在设置中关闭抗锯齿即可方法2:关闭抗锯齿msaaSamples = 1RenderTexture camTex = cam.activeTexture;if (camTex == null) return;RenderTextureDescriptor rtDes = camTex.descriptor;rtDes.depthBufferBits = 0;rtDes.useMipMap = false;rtDes.msaaSamples =1;rt = new RenderTex原创 2022-02-18 16:14:48 · 3206 阅读 · 1 评论 -
动静分离核心思想
场景动静分离,把静态不变的放到一个Camera中,把动态变动的放到另外一个Camera中,静态的渲染到一个RT上,静态发生变动时渲染一次到RT,如果没有变动就重复使用这个RT。当静态RT绘制时,动态RT可以先停一帧。只有当Camera Enable时才会产生绘制...原创 2021-12-31 09:59:36 · 146 阅读 · 0 评论 -
Flow Map
Flow map 每一个像素代表一个方向取得UV流动方向,把方向当作速度,没有流动方向的速度为0,速度*时间,即为UV偏移。Flow map 和法线贴图存储方式一致,2维向量,有正有负,需要映射到[0,1]区间FlowMap.rg = (FlowDirection +1.0f)/2.0f;由此可以知道r,g∈[0,0.5) 方向为负; r,g =0.5 方向为零; r,g∈(0.5,1) 方向为正;代码中取得速度:float2 FlowDirection = tex2D( FlowMap, te原创 2021-10-28 16:22:57 · 777 阅读 · 0 评论 -
Unity 在Editor模式下的脚本调用
//创建场景UnityEditor.EditorApplication.NewScene();//创建cubeUnityEditor.EditorApplication.ExecuteMenuItem(“GameObject/Create Other/Cube”);//保存场景UnityEditor.EditorApplication.SaveScene(“Assets/MyNewScene.unity”);//关闭编辑器UnityEditor.EditorApplication.Exit(0原创 2021-10-11 19:09:55 · 1313 阅读 · 0 评论 -
Unity Mono Editor 内网安装方法
https://unity3d.com/get-unity/download/archive下载对应版本Unity Installer然后下载MonoDeveloper/Unity Debuger选择Download to,不然下载后会被删掉然后把下载的UnityMonoDevelopSetup.exe拷贝到内网安装即可原创 2021-09-15 19:58:04 · 590 阅读 · 0 评论 -
C# 值类型修改
Struct AS{public int ss;}AS s1 = new AS();s1.ss = 1;//复制操作,对s2的修改不会导致s1的修改AS s2 = s1;s2.ss = 2;//引用操作,对s3的修改会导致s1的修改ref AS s3 = ref s1;s3.ss = 3;原创 2021-08-20 22:48:10 · 286 阅读 · 0 评论 -
Unity Cache Server 内网使用
适用于:Unity2019之前版本1、下载node.js版本:https://nodejs.org/dist/latest-v12.x/node-v12.22.5-x64.msi2、在有网的情况下安装Unity Cache Server:npm install unity-cache-server -g3、找到C:\User\xxx\AppData\Roaming\npm>unity-cache-server然后把这个拷贝到内网4、把CacheServerTransactionImpor原创 2021-08-16 19:09:53 · 1046 阅读 · 0 评论 -
Voronoi Noise 原理
Voronoi Noise1、随机数当作偏移量o = frac(sin§ *43758.5453);2、切割小圆圈0~1重复的数字变为0-1-0的圆圈for ( int j = -1; j <= 1; j++ ){for ( int i = -1; i <= 1; i++ ){float2 g = float2( i, j );float2 r = g - f + ofloat d = 0.5 * dot( r, r );if (d < F1)F1 = d;}}原创 2021-08-13 22:20:12 · 401 阅读 · 0 评论 -
Unity Shader Parse
菜单工具:Tools/MenuItem[MenuItem(“Tools/MenuItem”)]Editor目录下资源目录的工具:MenuItem[MenuItem(“Assets/MenuItem”)]public static void CreatMeshAsset(){GameObject go = GameObject.Instantiate(Selection.activeGameObject)Mesh mesh = go.GetComponent().mesh;AssetData原创 2021-08-04 21:49:57 · 395 阅读 · 0 评论 -
用2D图表示3D图 Lut图的映射关系
原创 2021-05-25 22:02:31 · 709 阅读 · 0 评论 -
2D向量旋转
//Pivotfloat2 pivot = float2(0.5,0.5);//定义旋转中心//Rotation Matrixfloat cosAngle = cos(angle);//取时间当角度float sinAngle = sin(angle);float2x2 rot = float2x2(cosAngle,-sinAngle,sinAngle,cosAngle);//构造2维旋转矩阵//Rotation consedering pivotfloat2 uv = v.texcoor原创 2021-04-20 22:26:23 · 329 阅读 · 0 评论 -
Texture Atlas 一图多用
资源:最终效果代码:Shader "Custom/TextureID" { Properties{ _MainTex("Base (RGB)", 2D) = "white" {} } SubShader{ Tags { "RenderType" = "Opaque" } LOD 300 Pass { Tags { "LightMode" = "Verte原创 2021-04-20 21:37:49 · 530 阅读 · 0 评论 -
C# GC
WeakReference 用在内存占用比较大的上面,short:当回收时引用为空,long,当回收时保留引用,不过其Target已经被清理Class Object 清理后必须赋null,只有这样才能释放,最后才会调用析构函数Dispoe需要继承IDispose,而且只用于有非托管数据时数据清理工作Dispose和析构不在同一时间序列中执行。GC触发:用户调用、堆内存过大、管理内存堆threshold不够在GC时,所有线程都会被suspend,直到GC完全执行完毕什么时候Threshold增加原创 2021-04-07 21:20:17 · 141 阅读 · 0 评论 -
Unity虚拟现实Home方案
1、Sketchup设置a、导出选择FBXb、第一种方法失败时,选择模型,然后反选,把其他的都隐藏后全局导出即为单个导出时FBX需要设置测Centimeter2、Blender中设置导出来的FBX无法在Blender3D软件中编辑:搜索并下载 Autodesk FBX Converter x64 2013,打FBX格式转化以下即可.3、Unity中设置Unity2019在安装Android插件时需要指定到Editor目录上一层Unity层,否则提升找不到Unity.exeUnity And原创 2021-04-03 15:12:24 · 505 阅读 · 1 评论 -
Unity Simple Car
1、需要在Rigid Body下构造轮子,否则在Editor窗口看不到wheel Collider的轮廓2、需要把车的mess设置大一点1000,否则很容易被轮子给弹出地面3、轮子的模型和Wheel Collider在Rotation都为0时方向一致,否则之后选择不对4、轮胎的高度位置必须一致,否则会参数阻力导致车无法走动5、只需要给两个轮子添加动力,其他的轮子会跟着旋转6、轮胎真实的模型旋转和位置需要从whell collider中获取7、没有设置动力的轮胎只需要设置旋转即可代码地址usi原创 2021-04-01 22:03:22 · 233 阅读 · 0 评论 -
聊聊渲染
渲染:渲染管线、渲染处理、渲染优化渲染处理:渲染材料、渲染算法渲染材料:网格、贴图、灯光网格:顶点、法线、切线、UV坐标贴图:场景图、网格贴图灯光:环境光、全局光、方向光、点光、聚光渲染算法:网格算法、贴图算法、光照算法网格算法:顶点变换、顶点动画贴图算法:贴图转化(法线图、高度图)、贴图融合、贴图处理(锐化、高斯模糊)算法因素:函数(计算函数[dot、cross、reflect、cross]、映射函数[pow、sin、exp、log]、取值函数[abs、round、Frac、satura原创 2021-02-24 21:59:44 · 138 阅读 · 0 评论 -
Unity GPU Profiler问题
GPU profiling is not supported by graphics card driver解决方法:PlayerSettings–>Other Settings 找到Graphics Jobs (Experimental) 选择打开即可原创 2021-02-19 10:34:29 · 1681 阅读 · 0 评论 -
Android Studio lib和Unity相关问题
Android Studio lib和Unity相关问题添加:需要把对应的jar包拷贝到app/libs,右键选择Add As library…删除:app/build.gradle 的dependencies中去掉该lib,然后再app/libs中deleteUnity打出来的apk出现class找不到问题:打开引用的class,右键 Find Path 选择jar包,然后把jar包拷贝到工程下即可...原创 2020-11-12 20:51:25 · 152 阅读 · 0 评论 -
Unity Android的库创建(二)
1.AndroidManifest.xml去掉application中的Activity<activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /&原创 2020-10-20 15:34:39 · 76 阅读 · 0 评论 -
Unity Android的库创建(一)
1.用AndroidStudio打开工程,选择Project显示方式注:gradle的版本号尽量和Unity的gradle版本号保持一致不知道gradle的版本时,可以先用Unity导出一个Android工程,方便查看2.拷贝unity-classes.jar 到lib目录下,右键点击lib,选择add as library3.清理OnCreate,编写functionpublic class MainActivity extends UnityPlayerActivity { @Ove原创 2020-10-20 15:29:51 · 357 阅读 · 0 评论 -
Task调用Unity方法
如何在线程中调用Unity的方法using System.Threading;using System.Threading.Tasks;using UnityEngine;public class TaskBehaviour : MonoBehaviour{ private SynchronizationContext MainContext = null; void Start() { MainContext = SynchronizationConte原创 2020-09-29 20:13:09 · 476 阅读 · 0 评论 -
Unity IL2CPP Crash by using Strip Engine Code
IL2CPP根据C#生成的Cpp代码行数巨大,达到百万行级别,进而引起iOS平台可执行文件超过60MB的问题。因此在适当的时候有必要对UnityEngine下的代码进行Strip。但是这样做容易带来如下的问题:ReportException: UnityLogError Could not produce class with ID XXX.This could be caused by a ...原创 2020-03-26 16:46:38 · 994 阅读 · 0 评论 -
小米手机调试UnityProfiler
1.打开USB调试打开手机设置-我的设备-全部参数-点击3次MIUI版本号,提示开发者选项打开;打开手机设置-更多设置-开发者选项-USB调试 打开2.Unity Profiler打开Unity,切换到Android平台确保adb可以使用3.手机连接Profileradb forward tcp:34999 localabstract:Unity-com.xx.yy34999可以在...原创 2020-03-09 20:24:01 · 649 阅读 · 0 评论 -
双面shader
默认情况下渲染引擎提出了背面(相对于摄像机的方向)的渲染图元,这样导致即使我们开启了透明(AlphaTest或者Alpha Blend)也无法看到背面的透明效果。若想要得到双面渲染效果,可以使用Cull指令来控制需要剔除的那个面。Cull Back | Front | Off若设置成Back,那么背对摄像机的面就不会被渲染。若设置成Front,那么朝向摄像机的面就不会被渲染。若设置成Of...转载 2020-02-25 20:59:21 · 370 阅读 · 0 评论 -
Application.persistentDataPath中文去除
Application.persistentDataPath 是在PlayerSetting中 Product Name改为中文原创 2020-01-02 16:59:45 · 384 阅读 · 0 评论 -
NDK unknow type name 'string' std::to_string support
Application.mkAPP_STL := stlport_static//to use strings #include <string> //to use vectors #include <vector> //and so on... /* add this line, to avoiding writing 'std...原创 2020-01-02 16:36:10 · 498 阅读 · 1 评论 -
Unity web 下载日志
//以获取其大小FileInfo fileInfo = new FileInfo(filePath);return fileInfo.Length;1.将http的request的keepAlive设置为false //如果不是必须的要keepalive的,那么就要设置KeepAlive为false:2.修改System.Net.ServicePointManager.DefaultC...原创 2019-12-30 14:02:03 · 201 阅读 · 0 评论 -
UnityPlugin构建
===========================================================================================目录说明:classes目录:所有平台不相关的移植源码目录proj.win:Windows平台工程目录及其平台测试代码工程proj.android: Android平台工程目录proj.mac: Mac平台工...原创 2019-12-22 10:42:35 · 965 阅读 · 0 评论