Quick #UE4 Tip (第4周 2020.5.2)

2024-05-03 20:58
文章标签 ue4 tip quick 2020.5

本文主要是介绍Quick #UE4 Tip (第4周 2020.5.2),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[UE4]Stat是否显示可以保存(省的每次进入游戏都要cmd重新设置)

https://historia.co.jp/archives/18334/

image.png

image

 

 

[UE4]在“ UDeveloperSettings”中的项目设置中添加Item

image

image

 

 

 

 

QUICK DEV TIP#23 UE4-切换半透明选择

建立一个关卡时,您希望使该过程尽可能简单,而今天的提示无疑可以帮助您解决这一问题。

您是否知道可以使用键盘快捷键切换半透明选择

如果您想观看视频版本,请在此处查看

建立关卡时一个很常见的问题是,半透明的材质(玻璃,水,效果等)可能会阻碍您选择场景中对象的能力。这方面的一个很好的例子是,如果您有一架水上飞机,其下方放置了许多资产。您将不得不移动/隐藏平面或找到一个尴尬的角度来选择所需的资产。

image

您可能已经知道,但是可以通过以下方法解决此问题:转到编辑器顶部的“设置”,然后关闭“允许半透明选择”。禁用此选项后,将无法单击带有半透明材质的对象,而是可以单击它们后面的对象,这非常有用。

image

开发人员最快速的技巧是,您可以使用键盘快捷键来更快地完成此操作。按下键盘上的T,您将快速轻松地打开和关闭“允许半透明选择”设置。

image

在自己的游戏中建立关卡时,我经常使用它,因此非常方便。如果您需要更多快速的提示和技巧,请在TWITTER上关注我@cbGameDev

 

 

QUICK DEV TIP #22 UE4-快速查找资产

因此,今天为您提供了一个额外的快速UE4快速开发技巧!

您是否知道可以使用键盘快捷键来帮助您在内容浏览器中从场景中快速找到资产

如果您想观看视频版本,请在此处查看

通常,如果您要查找资产,则可以使用以下两种方法之一。首先,使用内容浏览器搜索功能,然后右键单击场景中的资产,然后单击浏览到资产

image

 

但是,您还可以使用键盘快捷键来加快操作速度。如果单击场景中的资产,然后使用Ctrl + B,它将直接将您带到内容浏览器中。

image

前几天我发现了这件事,从那以后一直在使用它!

如果您需要更多快速的提示和技巧,请在TWITTER上关注我@cbGameDev

 

QUICK DEV TIP #21 UE4 - 高级内容浏览器搜索

能够快速找到引擎所需的内容非常有用。有很多技巧可以帮助您解决此问题,但是高级内容浏览器搜索是我看不到的很多人在谈论的内容,也是我今天想写的主题。

是否知道可以使用运算符逻辑和某些语法在内容浏览器中进行高级搜索?

如果您想观看视频版本,请在此处查看

我将通过一堆实际示例向您展示我们可以实现的一些不同的更高级的搜索行为。对于所有这些,我都选择了根目录文件夹,因此我可以在整个项目中搜索资产。

首先,我确定您知道如果键入一个单词,它将弹出一个包含该单词的内容列表。在下面,我正在搜索语音,它将显示资产名称中任何位置包含单词的所有内容。

image

 

我们可以做相反的事情,并使用感叹号和单词 !voice 来搜索所有语音内容

image

 

接下来,通过使用组合多个关键字,我们可以使搜索更加具体。因此,在下面的示例中,我们正在搜索 voice & player

image

 

我们也可以使用OR组合搜索,这可以通过|来完成 因此,在以下情况下 player | zomb

image

 

我们可以对上述内容进行多种组合,例如,在下面的示例中,我们寻找的是热门内容,但我们希望从这些搜索中排除基于player 的资产。我们通过  hit & !player  做到这一点

image

 

通常,如果您搜索一个单词,则它在资产名称中出现的位置无关紧要。例如,在上一张图像中,我们寻找hit ,在搜索结果中出现了Mat_White,因为从技术上讲,Mat_White中包含单词hit。但是,可以通过查找特定的前缀和后缀来使用搜索语法来解决此问题。对于前缀搜索,我们可以使用要搜索的单词,然后使用三个句号,例如  hit

image

 

与此类似,我们可以使用三个句号搜索后缀,然后输入要搜索的单词。在下面的示例中,我想找到以1结尾的任何内容,因此我搜索了   …1

image

 

到目前为止,我们谈论的是更通用的搜索。实际上,我们可以更高级,并使用特定的元数据类型进行搜索。如果将鼠标悬停在内容浏览器中的资产上,则会在弹出窗口中看到一堆信息。较深的灰色文本Vertices, Materials, Triangles 等是我们可以在更高级的搜索中使用的标签。

image

 

            这是开始变得有趣的地方,例如,我们可以使用此信息来查找三角形的数量少于X的任何资产。在下面的图像中,我们正在寻找三角形少于10个,triangles < 10   三角形少于10个的任何资产 。您可以看到我们在整个项目中只有2个满足这些条件的资产。您可以将结尾的数字更改为100、500,等等,也可以将其更改为大于> X 数量的三角形  triangles > X,这对于捕获滑入项目中的三元数太大的资产非常有用。

image

 

           我们也可以专门寻找资产类型。在下面的示例中,我正在寻找静态网格物体类型的资产。这里要注意的一个有趣的事情是,当您键入Unreal时,将向您显示“类型” “Types”,列表,试图预测您的需求。您可以单击此列表中的条目以快速填写要查找的内容。

image

 

          接下来,我想为您提供一些示例,这些示例可以主动地为您的项目使用这种高级搜索。首先,我们可以检查所有资产的冲突。在下面的示例中,我正在使用CollisionPrims <= 0。基本上,我只显示没有collision的资产。这是一个很好的检查,因为它可以使我们发现潜在的问题。例如,我们可能会看到应该发生碰撞的墙壁或地板砖在此没有碰撞的资产列表中。

image

 

          您还可以使用此高级搜索来帮助优化项目。下面我们使用UVChannels> 2。我们正在寻找使用两个以上uv通道的任何资产。通常,2是一个很好的数字,第一个用于纹理绘制,第二个用作光照贴图,额外的通道会占用更多的内存,因此,如果我们不需要它们,可以将它们抛弃以帮助保持最佳状态。如我们所见,出现了三个物体。然后,我将逐一介绍一下,看看他们是否真的需要额外的渠道,或者我们是否可以摆脱它们,并拥有一个更优化的项目!

image

         您可以使用这种高级内容浏览器进行搜索的方式有很多,可以发挥自己的优势。从简单地帮助快速找到资产,帮助发现问题,到帮助寻找可以在您的项目中优化的资产!

如果您需要更多快速的提示和技巧,请在TWITTER上关注我@cbGameDev

 

QUICK DEV TIP #20 UE4 - 优化: DUMPTICKS

              优化是在整个游戏开发过程中要关注的事情,而不仅仅是在开发的最后阶段。但是,即使使用了勤奋的管道,事情也可能会漏掉,而今天的快速开发人员技巧可以为您提供帮助。

您是否知道可以使用控制台命令来生成关卡中所勾选的所有对象的列表?

如果您想观看视频版本,请在此处查看

          当我们尝试优化自己的一款游戏时,我遇到了这个问题。这是非常简单的,您只需在玩游戏时输入控制台命令并输入dumpticks

image

 

         完成该操作后,您将看不到任何内容,但是如果您关闭播放会话并转到“Output Log”,则可以通过进入“Window -> Developer Tools -> Output log”来找到该日志。您可以向下滚动以查看当时在当前级别中打勾的所有事物的列表。

image

 

我们在这里要寻找的重要内容是 组件类型 type of component (某些事物本来就比其他事物更贪婪),actor name,然后如果对象勾选号为Enabled

image

 

           我个人发现所有这些信息都很难从输出日志中读取和分解,因此我想将其分解为更易于使用的信息。首先,我在项目文件中找到日志,该文件应位于您的项目名称下,然后是“Saved”文件夹,然后是“Logs”

image

 

          我突出显示并复制所需的信息。例如从我执行dumpticks命令时开始。您可以通过突出显示第一行然后按住Shift和Page Down来快速选择下面的位。

image

 

然后,我可以将其粘贴Open Office Calc中,这基本上是一个类似于Excel的免费程序。粘贴时,将弹出以下选项框。您要确保已选中“制表符Tab”和“逗号Comma”

image

 

              这样做会将信息分成单独的列。我更喜欢在这里查看数据,因为您可以对它们进行排序,删除等。我会查看那些我不希望出现在此列表中的actors 或重复很多次的actors 。然后,我将回到编辑器处,并调查有问题的资产。

image

 

         我想快速向您展示小事情的总和。下面以我的actors 为例,它几乎没有附加任何功能。(如果我们确实需要此功能,则更好的方法是使用timer 功能)。

image

 

例如,如果您想象自己正在制作一个开放世界的游戏,看起来可能似乎不多,这个actor 可能最终分散在世界各地,而小额成本很容易累加。

image

 

如果使用控制台命令StatUnit来查看帧速率,则可以轻松看到效果。通过关闭我们本来不需要真正勾选的东西,我们已经节省了大约11 FPS和大约4m / s的游戏线程,这是一个很好的胜利。

这篇关于Quick #UE4 Tip (第4周 2020.5.2)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/957629

相关文章

【UE4源代码观察】观察Core模块

话题 Core模块是整个引擎中最核心的模块,在之前的博客【UE4源代码观察】可视化所有模块的依赖情况中有统计,它被983个模块引用,恐怕除了第三方的模块外基本所有模块都有引用。我想首先观察其中的内容,然后再做测试:将Core模块拷贝到之前【UE4源代码观察】手动建立一个使用UBT进行编译的空白工程建立的空白工程中,看能否将它成功编译,理论上讲,“核心”不应再依赖太多其他的东西,所以我应该不会再需

【UE4源代码观察】在空白工程中测试跨模块调用函数

目的 在之前的博客【UE4源代码观察】手动建立一个使用UBT进行编译的空白工程中,成功让UBT工作起来了。现在我想要测试编译出的多个模块之间是否能互相调用,我记录下测试的过程。最终工程见 工程GIT链接。 实践 第一部分 首先仿照TestA模块建立TestB模块。 在TestB.h文件中声明了一个函数 int TestBFunc(int x, int y); 并在TestB.cpp中

【UE4源代码观察】观察FEngineLoop中各函数的调用顺序

当启动编辑器时,Launch模块是启动模块,在Windows平台中 LaunchWindows.cpp 的 WinMain函数是入口,而 FEngineLoop 管理了程序的初始化与主循环。他的成员函数如下: public:/*** Pre-Initialize the main loop, and generates the commandline from standard ArgC/Arg

【UE4源代码观察】手动建立一个使用UBT进行编译的空白工程

我想观察UE4是怎么编译的,于是查阅官方文档,了解到UE4有一套自己的编译工具:UnrealBuildTool,简称UBT。关于UBT的官方文档参阅:虚幻编译工具。我想尝试自己手动建立一个使用UBT进行编译的空白工程。不过首先,先了解下UBT的编译流程中一些文件所扮演的角色 UBT的编译流程中一些文件所扮演的角色 模块 每个模块都由一个 .build.cs 文件声明,它存储在 Source

【UE4源代码观察】可视化所有模块的依赖情况

思路 UE4引擎的模块非常多,我想要观察他们的依赖情况。于是我写了程序读取所有模块的.Build.cs文件,记录每个模块依赖的模块(当前是看PublicDependencyModuleNames和PrivateDependencyModuleNames。但后来经评论提醒我发现AddEngineThirdPartyPrivateStaticDependencies也应该视作是“依赖”但没统计,后续

简单梳理UE4的Houdini官方插件代码

前言 Houdini官方插件名字叫 “Houdini Engine”,它搭建了Houdini数据与UE4数据间的桥梁。我接触这个插件已经有段时间了,我想是时候梳理一下插件的结构了。(当前我用的UE4版本是4.24.2,Houdini版本18.0.348) 需要说明的是,这篇博客主要是从代码出发的。我准备先分析插件整体的代码结构,再逐个翻阅每个文件试图搞明白他角色。但如果不准备研究代码结构和实现

【UE4源代码观察】观察TargetPlatform模块

前情提要与本次目标 在之前的博客《【UE4源代码观察】观察 RHI、D3D11RHI、RenderCore 这三个模块的依赖关系》中,我将RHI、D3D11RHI、RenderCore这三个模块加入了我的空白工程中并确保可以成功编译。然而当时RenderCore模块有一个比较大的缺失:没有让shader相关的功能正常编译,因为它需要TargetPlatform模块中的内容。 因此,这次我想观察

【UE4源代码观察】尝试调试UBT

前言 在之前的博客《【UE4源代码观察】手动建立一个使用UBT进行编译的空白工程》中我尝试动手搭建了一个用UBT进行编译的空白的工程。但是对UBT其中的逻辑并不理解。 后来在学习UE4源代码的过程中,又了解了它的一些行为。目前,对我影响较大的是:1.他会有一些逻辑去添加一些宏。2.他会有一些逻辑去给修改ModuleRules(和.build.cs中内容的角色一样)。这时候我发现一些和预期不太一

试用UE4的纹理数组(UTexture2DArray)

UTexture2DArray 我发现在我目前使用的版本(4.25)中,官方已经实现了纹理数组(可能在4.24或更早版本就已经实现了)。 纹理数组,其含义不言而喻。一个重要作用是可以使用更多的纹理而不受制于sampler数目限制。 这一篇里我想对官方的纹理数组进行一下简单的试用。 试用 0. 启用纹理数组 虽然我看到了代码中有UTexture2DArray这个类,不过一开始并没有在编辑器

UE4性能观察的基础

目标 关于性能分析,官方给出了些文档: 《性能及分析 | Unreal Engine Documentation》是一个目录,收集了相关的文档。 《性能与概要分析概述 | Unreal Engine Documentation》是一个整体的指南。 不过,我想从自己的思路出发讨论这个问题,收集相关资料并尝试其中的工具。所讨论的内容不限于官方文档。 讨论“游戏性能观察” 粗略来讲,我觉得“性能