最近在做的项目遇到了一点点问题,出现了如下效果 视角对着湖面移动会出现一个显示不完整的轮廓(比较长的蓝色矩形),详细一点就是下图这样,以及近处物体的倒影(从光照的照射角度来看是不应该出现的) 一开始就以为是材质设置的原因,还去把《冥河之旅》的工程下载了下来研究(第二个场景湖面哪里不会出现这种轮廓效果 ...
分类:
其他好文 时间:
2016-10-08 16:46:14
阅读次数:
235
《Inside UE4》目录 InsideUE4 UE4无疑是非常优秀的世界上最顶尖的引擎之一,性能和效果都非常出众,编辑器工作流也非常的出色,更难得宝贵的是完全的开源让我们有机会去从中吸取营养,学习世界上第一流游戏引擎的架构思想。 本系列教程《Inside UE4》,希望从最最底层的C++源码剖析 ...
分类:
其他好文 时间:
2016-10-08 16:04:43
阅读次数:
342
有时候换了机器,工程文件没了,通常是在编辑器里有个菜单项可以生成 但是有时编辑器自身都编不过,没法运行 这时需要调试代码,可以用命令行生成相应的工程文件: ../UnrealEngine/GenerateProjectFiles.sh -game -project "/Users/abc/git-r ...
分类:
其他好文 时间:
2016-09-20 21:25:21
阅读次数:
333
插件Plugin: 本来应该是指一种纯以接口与外界打交道的程序模块,在同一接口背后可以有多种实现,更换实现完全不影响客户端代码(不用重编)。 但是在ue4的世界里,插件似乎不是这个意思,仅仅是一种可以在构建时选择是否启用的模块,在客户端代码里充斥着对插件内部函数的调用 只不过这些调用一般要被封装在简 ...
分类:
其他好文 时间:
2016-09-14 12:53:19
阅读次数:
590
GetWrappedLaunchDir() 启动时的工作目录,因为马上要把工作目录改为下面所说的exe所在目录,所以会先把当前的缓存起来 FPlatformProcess::BaseDir() 这个是最基本的,就是当前exe文件所在目录。 也是最早被计算的一个目录,因为是所有依赖项的根结点,凡是要把 ...
分类:
其他好文 时间:
2016-09-11 22:52:58
阅读次数:
585
在ue4中看到这么一段代码,注释有点意思 不同cpp文件里的全局static变量初始化顺序是不可控的 FString显然会依赖很多内存分配、字符串处理相关的更基础功能 如果把它放在文件域里,初始化顺序有可能会在那些模块的static变量之前 因此把它改到函数内部,它会在函数第一次被调用时才初始化,避 ...
分类:
其他好文 时间:
2016-09-11 01:33:03
阅读次数:
186
以前写了一个4.11版本全屏,高版本的没用所以也不清楚情况,最近出了4.13,刚好新项目要用上打包出来以后发现,控制台命令fullscreen没有用了, 被stereo on 替代,但是还是没有全屏,目测推导了一下把下面这段字符放到项目目录/config/DefaultEditorPerProjec ...
分类:
其他好文 时间:
2016-09-09 12:09:28
阅读次数:
883
ue4的代码是模块的形式来组织 在源码层面,一个包含*.build.cs的目录就是一个模块 这个目录里的文件在编译后都会被链接在一起,比如一个静态库lib,或者一个动态库dll。 不管是哪种形式,都需要提供一个给外部操作的接口,也就是一个IModuleInterface指针。 *注意这里并不是说调用 ...
分类:
其他好文 时间:
2016-09-04 06:47:11
阅读次数:
2271
点击加号后会出来如下截图 勾选上红色单选框处(因为这个我已经申请过了所以是灰色),然后continue到后面会出现下图 选择一个之前我提到申请证书会用的的那个.csr后缀文件夹,完成以后就可以下载证书了。 完了以后点击,Identifies 下All IDs 会出现如下截图 红色标记 1 处填写Ap ...
分类:
移动开发 时间:
2016-08-26 10:26:27
阅读次数:
284
UObject是一套很复杂的体系,之前读ue3代码时曾分析过其类型系统实现,主要是与UClass间的关系 现在转到ue4,发现那一块其实差不多,于是再重点备忘一下UObject本身的创建和初始化过程 1、首先,用NewObject<>来创建一个新对象: 除了一些条件检测,直接调了以前老版的对应物St ...
分类:
其他好文 时间:
2016-08-26 06:33:28
阅读次数:
428