自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 UE4资源————Pak

UE4Cook前的资源格式通常为.uasset,.umap,资源打包时,会默认把这些格式的文件打包进资源包,打包后的资源文件后缀为.pak。一、资源打包设置:1.设置打包参数:打开ProjectSettings->Project->Packaging来设置打包参数:这里有很多控制Cook和打包pak的参数,解释几个:UsePakFile:True表示资源打包为.pak,如果不...

2020-09-09 14:44:56 10722 1

原创 UE4 Chunk分块

一、通过AssetManager实现分块1. 基本操作首先,设置分块:方法一:打开Project Settings → Game → Asset Manager需要设置的参数:点击Primary Asset Types to Scan右边的加号,为数组添加新的元素设置Primary Asset Type名称选择Asset Base Class类型,如图选择了World类型...

2019-10-16 11:51:37 4623

原创 UE4小技巧

1.UE4代码调试:a. Build代码调试:UE4打包坑点比较多,如果卡在了C#阶段,我们可以直接在C#代码下断点,调试Programs下的AutomationTool,方法:右键AutomationTool -> Property ->Debug,在Command line arguments里填好打包参数,如果调试即可;但如果是卡在了C#调起的C++程序,不是同一个进程,...

2019-10-16 11:24:24 1749

转载 Http Header参数

Content-Type常见的媒体格式有:text/html : HTML格式text/plain :纯文本格式text/xml : XML格式image/gif :gif图片格式image/jpeg :jpg图片格式image/png:png图片格式以application开头的媒体格式类型:application/xhtml+xml :XHTML格式application/x...

2019-10-16 10:05:44 438

原创 Android Studio NDK的.so文件开发

本文环境:Android Studio 3.4.1NDK 20.0.55945701.环境配置下载并安装Android Studio2.下载NDK然后配置环境变量最后在Project Structure里确认一下Android NDK location:3.接下来开始创作,新建工程在com.crimson.lz4下新建LZ4.java文件,编写代码:packag...

2019-10-16 10:04:22 395

原创 UE4自定义日志输出——简化版+调用函数+调用行

UE4日志输出需要这样:UE_LOG(LogTemp, Log, TEXT(“Log Here %s”), *FString(“Other Msg”));或者在屏幕上输出需要这样:GEngine->AddOnScreenDebugMessage(-1, 5, FColor::Red, “Print Msg Here”);有的时候我们只想打个简单的日志,希望能这样:LogInfo(“Log...

2019-02-01 21:15:39 2098 6

原创 UE4填坑记之——Android打包报错

报错关键字:UATHelper: Packaging (Android…) ERROR: cmd.exe failed with args /c “[ProjectPath]\Intermediate/Android/APK\gradle\rungradle.bat” :app:assembleDebugUE打包前要先安装CodeWorks for Android 1R6u1,它的目录在引擎目录...

2019-01-23 20:43:01 8756 2

原创 Unity实用案例之——动静态批处理和GPU Instancin实测

对于场景物件的优化,常用到的手段有静态批处理、动态批处理,以及不太常见的GPU Instancing,今天我们在实测中感受一下它们的区别。Static Batching:Dynamic Batching:GPU Instancing:当物体顶点数量级别较大,重复度较低时,选择静态批处理;当物体顶点数较少且数量较少时,可以按需求选择动态批处理,当超过一定级别数时(参考:20个顶点的...

2018-10-09 21:07:03 2149

原创 Shader小常识之——游戏渲染理论篇

游戏世界里看到的物体,其实大多都是现实世界的模拟,尤其是随着硬件的发展,游戏厂商制作的品质越来越精良,现在游戏做的越来越“真实”,而这个“真实”是离不开现实物理的,所以本文来说一些关于游戏渲染与物理现象的那些事儿。、先说一个众所周知的物理知识,反射和折射:光由空气射入水面时,入射光线一部分会被反射,一部分会被折射。 OK,那么我们知道了光从一个介质进入另一介质的两个归处。这个规律适用于所...

2018-07-24 20:30:22 1634

原创 Unity实用案例之——动画压缩

关于动画文件的压缩,其实前辈们已经讲得非常详尽了: http://www.codershu.com/2017/06/14/UnityOptimizeAnimationClip/ http://gad.qq.com/article/detail/15869 写这篇文章一是为了弥补原文已失效的附件,二是为了更新已过时的API。 不多说,直接上代码:这里只介绍两种压缩方案:删减帧:...

2018-04-19 11:58:45 4881 1

原创 Unity实用案例之——喷漆效果

喷漆功能应用场景:如墙上的标语贴花,汽车上的喷漆等。选择方案: 1. 当然实现方法各式各异,最最最简单,也是最“不堪入目”的方法是直接给一个面片,然后获取喷漆位置,加上一个要喷漆表面法线方向的偏移,作为最终面片放置位置,当然,不要忘了设置面片的方向。这种方法虽然说简单,但是效果并不理想,会出经常现与其他物体穿插的情况,如果游戏中曲面太多,那么这个方案基本没法看。 2. 对于个别特殊的需...

2018-03-06 00:07:51 12095 6

原创 Unity老师傅填坑记之——System.ArgumentException: Destination array was not long enough

报错信息:ArgumentException: Destination array was not long enough. Check destIndex and length, and the array's lower bounds.Stack Trace:System.Array.Copy (System.Array sourceArray, Int32 source...

2018-03-05 20:32:59 8831

原创 Unity老师傅填坑记之——UGUI报NullReferenceException

最近线上Kibana收集到报错: UnityEngine.EventSystems.UIBehaviour.IsActive () UnityEngine.UI.Graphic.SetVerticesDirty () UnityEngine.UI.Text.set_text (System.String value)还有: UnityEngine.EventSystems.UIBeha...

2018-03-03 19:58:31 4222

原创 Unity Shader案例之——阴阳师画符效果

本来这边文章是在阴阳师刚出来的时候打算写的,结果一直丢在草稿箱里没有完善,今天得空从草稿箱里拿出来重新来过。还记得玩阴阳师的时候大家每次最激动的时候就是抽卡,每次都画各种各样的图案,总以为最特别的方案能更大概率的抽到"SSR",尽管结果可能不尽人意,但是这种抽卡方式的确有他的乐趣所在。今天就来实现:如何将屏幕上画的图案显示在其他物体上。首先来理一下思路,这个功能可以分为两部分。第一部:

2018-02-03 18:39:10 2928

原创 Unity实用案例之——屏幕画线和线框渲染

游戏里经常会遇到各种画线的需求,今天我们利用GL来实现其中的两个画线功能。一、屏幕画线屏幕画线是一种很好的用户交互方式,通过屏幕画线可以控制游戏中的各种元素,Unity提供了UnityEnige.GL库很方便的实现了这个功能。首先我们来看如何实现两点之间画线:void DrawLine(Vector3 start, Vector3 end) { if (!beginD...

2018-02-03 17:30:23 18602 10

原创 Unity老师傅填坑记之——关于Animator的坑

今天发现Unity的Animator组件比较耗cpu,打开Profiler,运行程序,当视野里有12个敌人的时候可以看到:OK,新建一个空场景来测试一下,1,.从网上Down一个绑定好的狗狗模型,因为项目中用的是Humanoid动画,所以先选择动画模式为Humanoid进行测试2.建一个AnimatorController,拖一个跑动动画上去3.把狗狗拖入场景,并赋予AnimatorControl...

2018-02-01 02:35:56 11085

原创 Unity实用案例之——“吃鸡”手雷弹道模拟

最近吃鸡游戏火啊,至今也吃了好几晚的鸡了,无奈手雷就是丢不准,从窗户丢雷丢几个弹出几个,各种误伤自己人……而别人家的手雷: 一般的游戏里手雷都是盲投,不过一般游戏也不会对弹道有这么精确的要求,尽管往敌人家里丢就好了,能不能炸到人全靠缘分。那么,如果把雷精确的从窗户丢进去呢,不不不,是如何在Unity里实现手雷的轨迹,从而预判手雷落点呢,今天我们就来讨论这个问题!一、轨迹绘制...

2018-02-01 02:10:53 11860 15

原创 Unity Shader案例之——模糊效果

狂拽屌炸天的游戏效果实现,都离不开模糊效果,而我们最常用的方法是后处理,今天介绍几种模糊效果的实现。首先上一张大原图: 以下为了对比各种方法的效果差异,所有参数都保持一致: 1. 均值模糊第一种介绍的是均值模糊,三种中最为简单的模糊效果,计算简单,效果也差强人意: Shader:Shader "Custom/SimpleBlur"{ Properties

2018-01-05 22:36:33 8524 2

原创 Shader小常识之——法线纹理在切线空间下的存储

上一篇文章简单的介绍了法线的作用原理,如果能完全理解,说明已经入门,今天继续深入。首先,来讲一下上一篇中的一个问题:一个面有两个与之垂直的向量,一个朝上一个朝下,那么哪一个才是它的法线?答案为四个字:“左手定律”。在回答这个问题前,我们有必要了解一下游戏中的模型生成。一个模型是由众多的三角形组成,而一个三角形有三条边,每条边由两个顶点控制。所以你看到的无论是男主人公还是女主人公,其实他都只是游...

2017-12-16 00:04:07 2537

原创 Shader小常识之——模型法线和法线纹理是如何工作的

写在前边:写这篇文章是因为我有一个爱学爱问的小学弟,他经常会问一些这样那样的问题,仔细想想,也许大多数人,包括我自己在内,在刚接触一门新的知识的时候,也会因不了解而产生各种“奇怪的”问题,也许过后觉得很是简单,但是隔行如隔山,不了解的时候感觉高大上的东西,其实并没有那么神秘,所以在这里纪录下来,帮助更多“后来者”,好让其早日“居上”。问题:为什么我们加了法线纹理后,模型就变得凹凸有致了,法线纹...

2017-12-14 23:19:37 5111 1

原创 Unity如何采用3dMax中的动画位移

1.Generic要TPose模型的Root node设置为骨骼Root:Bip01,Humanoid无需操作;2.设置Animator中的属性Apply Root Motion为true;3.然后就是动作文件的设置:注意点一:如果有跳跃动作(Y轴有位移),那么Y的Bake Into Pose要勾上;注意点二:如果发现在做动作时有旋转(一般为90度的旋转),

2016-10-10 14:08:39 7035 7

原创 Unity实用案例之——CameraController

  看到不少同学都想写一个CameraController,但是又各种转来转去出错的,今天就得空写一个例子,分享一下这其中需要了解的知识。  首先要了解向量的基本操作,向量旋转:四元素×向量。举个简单例子:定义一个初始值为(0,0,1)的向量:private Vector3 targetPos = Vector3.forward;  为了清楚的看清向量的旋转,我们将此向量画出来:Debug.Dra...

2016-05-26 11:47:03 4533

原创 .cs编译成dll文件

.cs编译成dll文件:csc /out: bin\index.dll /t:library index.cs如果有引用,则:csc /out: bin\index.dll /r: bin\comman.dll /t:library index.cs

2016-04-27 21:57:35 1945

空空如也

空空如也

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

TA关注的人

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