unreal 删除关卡_unreal 关卡蓝图 - CSDN
  • 一. 标签栏标签栏就是最顶部看起来像这样的东西: 在最右方就是项目的名称,如这里的test1。...1) 文件:创建、打开、保存关卡/地图和创建或打开项目。游戏打包也是在这里。这里也有不同的设置

    195009m6d00glg007z461l

    一. 标签栏标签栏就是最顶部看起来像这样的东西:


    在最右方就是项目的名称,如这里的test1。前面的对话气泡是反馈按钮,你可以给Epic公司提供任何意见。而接着的帽子图标,是显示虚幻4内置的教程。

    二. 菜单栏

    在标签栏下方就是菜单栏,它提供了大部分应用程序常用的命令和工具:


    1) 文件:创建、打开、保存关卡/地图和创建或打开项目。游戏打包也是在这里。这里也有不同的设置和建立配置可以修改,后面会详细说明。

    2) 编辑:撤销、恢复、剪切、复制、粘贴或者重复任何选中的对象(或一组选中的对象)。也可以设置偏好,例如自动保存开关和自动保存的时间、改变快捷键、改变测量单位(厘米、米或千米)。项目设置则提供了描述项目的内容设置、项目ID或项目该如何打包,还有该项目支持什么样的平台。更多的设置读者可以自行探索,直到调整到适合自己工作的方式。

    3) 窗口:编辑器中的窗口布局是完全可以自定义的,这里可以选择增加或删除哪些窗口。你也可以通过鼠标点击窗口标签,然后拖动,再释放鼠标来手动调整窗口位置。注意,有时候窗口的标签默认是隐藏的,这时候点击左上角的黄色箭头,然后标签就会显示出来了。当你打乱了当前的窗口布局,又不知道如何恢复的时候,可以选择窗口菜单中的重置布局。

    4) 帮助:官方教程、文档、论坛、回答中心等常用的超链接都会显示在这里。

    三. 工具栏


    1) 保存:保存当前的工作进度,可以防止崩溃造成工作进度大量丢失。

    2) 版本管理:默认是关闭的。版本管理是协作开发方式,并且它会记录每一次的更改,当你修改了文件,团队中的其他人就会更新修改的文件,并且如果他们修改了文件,你也会被更新文件。通过点击版本控制按钮,选择自己团队的版本控制工具来激活版本管理。

    3) 内容:包含了所有资源、代码、关卡和其它游戏开发用到的内容。

    4) 商城:一个访问商城的快捷方式。

    5) 设置:修改编辑器的设置。例如允许选择半透膜物体、选择组合物体等。引擎的可视化设置,例如分辨率、贴图渲染质量、抗齿锯等都可以在此处设置。

    6) 蓝图:蓝图是一个UE4的很重要和很常用的特性。这里可以进入蓝图编辑器。

    7) 过场动画:你可以使用过场动画来创建电影艺术。

    8) 构建:当你构建你的关卡,引擎可以预计算灯光和可视化数据、产生导航网络和更新几何体。

    9) 播放:当你点击播放按钮,在视图中会测试你的关卡和观察是否功能正常。当你点击播放后,会出现暂停、停止、弹出按钮。
    • 暂停:当暂停后,你可以点击继续或逐帧播放。
    • 停止:停止游戏测试,回到编辑模式。

    10) 启动:当你的游戏已经完成并且准备发布,点击启动按钮会制作、打包和生成可执行的应用程序文件(这依赖于选择的平台)。

    四. 视口

    视口位于编辑器窗口中央,这里可以创建和调试你的游戏。将游戏对象都可以放置在这里来创建当前的场景。


    观察:按下鼠标左键或右键的同时,你可以使用W、S、A、D来移动到观察的视角。

    选择:鼠标点击左键。

    在视图上方的是视图工具栏,我们来逐一说明它们:
    1) 视口选项:这里可以切换到游戏模式,可以将场景像在游戏中那样展示出来,所以那些音量、隐藏的actors和actor图标都会被隐藏起来。还有沉浸模式,将会以全屏模式显示。还有其他设置选项可以被设置,所以最好自己亲自试试。

    2) 视口投影类型:这里有两种视口投影类型,一种是正交投影、一种是透视投影。透视投影符合人的视觉,所以看起来更像3D场景,而正交投影像是将某个轴去掉后的2D平面。

    3) 视口渲染模式:设置显示的渲染模式,默认的是带光照模式,将游戏中的灯光显示在视口中。你可以切换到不带灯光模式,就会没有任何灯光了。线框模式,只会显示模型的线框。

    4) 显示:设置哪些类型的actor可以显示出来,哪些类型被隐藏。

    5) 变换工具:这里有三种变换方式。第一个是平移,第二个是旋转,第三个是缩放。

    6) 坐标系统:切换全局坐标系和局部坐标系。如果选中的是全局坐标系,则变换会以世界坐标系的轴为准。如果选中的是局部坐标系,则变换会以物体自身旋转的方向的轴为准。

    7) 表面对齐、表面网格对齐、表面网格对齐值:接着的这三个工具涉及到平移的对齐操作。表面对齐的时候,只要两个actor的轴心在底部,当它们靠近的时候就会自动对齐了。网格对齐,是每次移动的时候都会移动网格对齐值大小的值

    8) 旋转网格对齐、旋转网格对齐值:类似于表面网格对齐,旋转网格对齐每次旋转都是旋转某个固定的旋转网格对齐值。

    9) 缩放网格对齐、缩放网格对齐值:类是于上面两个对齐,每次缩放的时候都是按某个固定的缩放网格对齐值来缩放。

    10) 摄像机速度:设置当按下箭头键的时候摄像机移动的速度。

    11) 最大化和恢复视口:当你点击右上角的这个按钮的时候,最会在透视视图和三视图+透视视图之间切换(见下图),三视图就是正视图、俯视图和左视图。每个视图都有自己的视图工具栏,你在某个视图中右上角点击一下,然后该视图就会被最大化。


    五. 模式



    在最左方的就是模式窗口,这里提供了几种不同的模式,根据不同的工作任务,我们可以自由地切换它们:

    1) 放置模式:这个是默认模式。这里可以将actor放置到场景中,所谓的actor就是诸如静态模型网格、灯光、触发器、体积等等(actor的概念在其它的游戏引擎常常称为对象或实体)。这里逐一介绍各种actor:
    • 基本:这里包含了非常基本的actor,而且是在游戏开发中非常频繁地使用到的。包括:触发器、摄像头、玩家起始等等。
    • 灯光:灯光面板包含了不同可用的灯光类型。例如点光源,它就像一个电灯泡朝各个方向发出的光。还有平行光,是从无限远的位置发出平行的光线,就像太阳发出的光。
    • 可视化:这个分类包含了影响游戏视觉的actor,例如后期处理体积、大气雾效、贴花等。
    • BSP:Binary Space Partitioning,中文名是二叉分割空间,BSP技术由于在多边形剪切方面表现出色,使得在碰撞检测的时候非常高效。这里包含了一些BSP画刷,例如盒子、锥体、旋转式梯子等等。
    • 体积:这个分类是包含了一些具有不同属性的actor,例如KillZ体积,当任何actor进入它的时候都会被摧毁(包括角色actor),所以用它来制作陷阱就非常方便了,如果你想查找某个特殊的actor,你可以在上方的搜索栏进行查找。

    2) 绘制模式:绘制模式允许你来绘制和调整颜色和贴图到一个静态网格里。你可以在这设置画刷大小、半径、强度等等。需要注意的是,当你绘制的时候需要选中actor来避免画到其它actor。

    3) 地形模式:你可以直接在引擎里创建一种地形,而非从外部导入地形。你可以选择自己想要的维度等等,然后按底部的创建按钮,接着你可以雕刻或绘制来完成你的地形。想要删除地形,先切换到放置模式,然后选中地形,按Delete键来删除它。

    4) 植被模式:你可以在地形或其它静态网格使用画刷或橡皮擦,画出很多像树、草、石头等东西。如果要一个个来放则是很繁琐的,通过使用画刷可以瞬间画出大量的植被。

    5) 几何体编辑模式:之前提到过BSP提供了一些基本的模型画刷,如果你想要自定义模型画刷,你可以在这里进行编辑。

    六. 世界大纲视图

    世界大纲视图有层次地展示了在场景中的所有actor。


    在世界大纲视图你可以进行这些操作:
    1) 新建文件夹:你可以通过文件夹管理使得actor整洁有序,也可以通过文件夹来选中一组actor(右键文件夹,选择-所有子项)。
    2) 隐藏actor:在actor和文件夹前面有一只眼睛,通过点击它来隐藏/显示该actor或文件夹下的所有actor。
    3) 附加actor:通过拖动一个actor到另一个actor,可以形成附加关系。如果你移动父关系的actor,所有的子actor都会跟着移动。如果移动子actor,父actor就不会跟着移动。需要注意的是,这只能通过世界大纲视图完成,在视口中移动父actor是不会影响子actor的。

    左下角显示的是有多少个actor,右下角显示的是设置视图过滤方式的选项。

    七. 内容浏览器

    所有游戏资源,包括材质、贴图、网格、蓝图、音频文件都会在这里显示出来。这里是导入、组织、观察甚至创建游戏资源的地方。


    在顶部有三个图标,下面逐一介绍它们:
    • 添加新项:创建新的资源,例如材质、粒子系统、蓝图等等。
    • 导入:导入内容到项目文件中。
    • 保存所有:如果在内容浏览器创建或修改资源,点击保存所有来保存这些工作。

    然后接着下面有个搜索条,可以输入要搜索的资源名字来快速查找它们。右上角的锁图标可以锁住所有“在内容浏览器查找”的请求。所谓“在内容浏览器查找”就是在视口中右键actor的时候,弹出菜单中选择“在内容浏览器查找”就会将查找到的对应资源显示在内容浏览器中。如果锁住了,则不会在内容浏览器中显示出来,而是打开一个新的窗口显示。

    在下方左侧有个源面板,源面板包含了你的项目中收集的所有文件夹。在下方右侧,是资源视图,显示了从源面板中选择的资源和子文件夹。在上方有个过滤器,可以指定你想要查看的资源类型。右方就是资源搜索栏。在底部左方你可以看见当前选择的文件夹有多少个资源,底部右方可以选择视图选项,选择你观察项目的方式,例如是平铺块、列表还是列显示方式。

    八. 细节

    在细节面板,你可以看见和修改当前选择的actor属性。


    在顶部,你可以看到选择的actor的名称(图中是Chair)。你可以设置自己喜欢的命名。在右方,就是一个锁按钮。默认是解锁状态,当锁住的时候,细节面板会锁定当前的属性和细节,如果你选择另一个actor也不会改变。

    下方的搜索栏可以搜索你想查看的属性,接着是属性矩阵按钮,这会打开一个属性矩阵窗口。再右方是显示过滤器,你可以选择折叠/展开所有的种类、只显示修改的属性或显示高级属性。

    在名字的下方,有两个按钮,添加组件和蓝图/添加脚本。添加组件,可以添加例如静态网格、形状基本几何体(正方体、球体、圆柱和圆锥体),灯光actor等。这跟世界大纲视图中的附加Actor类似。接着,你可以转换选择的actor到蓝图类。蓝图类是作为一个组件,伴随着代码(Unity等一些其它引擎中,称为Prefab预制件)。随后的章节会详细介绍它。

    最后,下方是属性区域,这里显示选择的actor属性,例如位置、旋转、缩放、当前的材质、添加和移走材质等等你可以修改的内容。


    转自:http://www.52vr.com/article-556-1.html

    展开全文
  • Unreal4 关卡编辑器

    2019-06-24 03:46:21
    一、关卡编辑器 二、Slate 1、游戏使用 Slate,模块依赖。 修改 [ProjectName].build.cs PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" }); 2、显示控件 传入一个...

    一、关卡编辑器

     

     

    二、Slate

    1、游戏使用 Slate,模块依赖。

    修改 [ProjectName].build.cs

    PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });

     

    2、显示控件

    传入一个存储在成员变量中的控件引用(作为 TSharedPtr ):

    GEngine->GameViewport->AddViewportWidgetContent(
    
        SNew(MyWidgetPtr.ToSharedRef())
    
    );

     

    当将控件传入到 GameViewportClient::AddViewportWidgetContent() 时使用 SNew() 创建该控件:

    GEngine->GameViewport->AddViewportWidgetContent(
    
        SNew(SWeakWidget)
    
        .PossiblyNullContent(MyWidgetClass)
    
    );

     

    或者使用 SAssignNew() 来创建控件,并将它分配给 TSharedPtr 成员,然后传入它:

    GEngine->GameViewport->AddViewportWidgetContent(
    
        SAssingNew(MyWidgetPtr, SWeakWidget)
    
        .PossiblyNullContent(MyWidgetClass)
    
    );

     

     

    3、从视口中删除控件

    通过向 GameViewportClient::RemoveViewportWidgetContent() 中传入到先前添加的控件的引用, 可以从视口中单独地删除Slate控件。

     

    GEngine->GameViewport->RemoveViewportWidgetContent(
    
        SNew(MyWidgetPtr.ToSharedRef())
    
    );

     

    另外,通过调用 GameViewportClient::RemoveAllViewportWidgets() 可以立即删除所有控件。

     

    三、底层方法

    1、template< class ObjectType, ESPMode Mode> class TSharedRef
    
    {
    
    };

     

    转载于:https://www.cnblogs.com/mirchd/p/7344436.html

    展开全文
  • Unreal Engine 4 初学者教程:开始 原文:Unreal Engine 4 Tutorial for Beginners: Getting Started 作者:Tommy Tran 译者:kmyhy Unreal Engine 4 是一个游戏开发工具集,能够开发从 2D 手机游戏到 3A ...

    原文:Unreal Engine 4 Tutorial for Beginners: Getting Started
    作者:Tommy Tran
    译者:kmyhy

    Unreal Engine 4 是一个游戏开发工具集,能够开发从 2D 手机游戏到 3A 级主机游戏的一切。“方舟:生存进化”、“泰克肯7”和“王国之心 III”这些游戏背后使用的引擎就是它。

    对于初学者来首,用 Unreal Engine 4 开发是很简单的。通过蓝图可视化脚本系统,你可以不写一行代码就创建出整个游戏。再加上一个易于使用的界面,你就可以获得一个可以运行的游戏原型。

    本教程主要是让初学者入门。它涉及以下几个知识点:

    • 安装引擎
    • 导入资源
    • 创建材质
    • 用蓝图(Blueprint)创建具有基本功能的对象

    为了学习这些知识,你会创建一个用于展示一只香蕉的旋转转盘。

    注:本教程属于 Unreal Engine 教程系列,这个系列共 10 个部分:

    安装 Unreal Engin 4

    Unreal Engine 4 使用 Epic Games Launcher 进行安装。进入 Unreal Engine 网站 并点击 Get Unreal 按钮(右上角)。

    下载这个安装器需要创建一个账号。创建账号之后,选择下载和你的操作系统对应的版本。

    下载并安装完安装器之后,运行安装器。会显示一个窗口:

    输入 email 和密码,点击 sign in。登录之后会显示这个窗口:

    在左上角,点击 Install Engine,安装器会让你选择要安装的组件:

    注:Epic Games 经常升级 Unreal Engine,因此你的引擎版本会与此不同。例如我写第一稿时,版本已经升级到 4.14.3! 只要你的版本不低于 4.14, 你就可以使用本教程。

    默认选中的是 Starter Content、Templates and Feature Packs 和 Engine Source。就保持这样的选择不变。它们分别是:

    • Starter Content: 这是你可以在自己项目中免费使用的资源集。它包含了一些模型和材质。你可以在你的游戏中临时使用它们。
    • Templates and Feature Packs: 模板可以根据你的选择来创建基本功能。例如,Side Scroller 模板会创建一个项目,项目中包含一个角色、基本动作和一个固定的水平相机。
    • Engine Source: Epic 提供了源码,这样任何人都可以修改这个引擎。例如,如果你想为编辑器添加自定义功能,你可以通过修改源码来实现。

    拖动这个列表,还有几种不同的平台。如果你不打算支持某个平台,请让它反选。

    选好组件之后,点击 Install。安装完成后,引擎会在 library 中显示。接下来我们创建项目。

    创建项目

    点击 Launch 按钮打开项目浏览器。在项目浏览器中,点击 New Project 标签页。

    点击 Blueprint 标签页。这里,你可以选择一个模板。但是,因为我们想从空白开始,所以选择了 Blank template。

    在下面,你会发现有更多的设置。

    分别有这几个选项:

    • Target Hardware: 选择 Mobile/Tablet 会关闭一些后期处理效果。还会用鼠标模拟触摸。设置为 Desktop/Console。
    • Graphical Target: 选择 Scalable 3D or 2D 会关闭一些后期处理特效。请设置为 Maximum Quality。
    • Starter Content: 使用这个选项可以包含一些开始内容。为了简单起见,这里将它设为 No Starter Content。

    最后一部分设置是指定项目文件夹地址和项目名称。

    点击 Folder 栏右边的 3 个小点,可以改变项目文件夹地址。

    项目名称不代表游戏名称,因此不用担心后期可以修改这个名称。选择 Name 栏的文本框,输入 BananaTurntable。

    最后,点击 Create Project.

    认识界面

    创建完项目,编辑器会打开。编辑器分成了几个区域:

    1. 内容浏览器: 这里显示所有项目文件。用它创建文件夹并组织文件。可以在搜索栏中查找文件或者过滤文件。
    2. Modes: 这里可以选用各种工具比如 Landscape 工具和 Foliage 工具。默认工具是 Place 工具。它允许将各种对象比如灯光和相机放到游戏关卡中。
    3. 世界大纲编辑器: 显示当前关卡中的所有对象。你可以通过将相关的对象放入文件夹中来组织整个列表。它也可以搜索或者通过类型来过滤。
    4. 详情: 你选中的对象会在这里显示出属性。这里可以编辑对象的设置。这里进行的修改只会影响这个对象的实例。例如,如果你有两个球体,如果你改变了其中一个的大小,那么只会对你选中的对象有效。
    5. 工具栏: 包含各种功能。你用得最多的一个就是 Play。
    6. 视口: 关卡视图。按下右键拖动鼠标可以查看四周。按下右键,用 WASD 键进行移动。

    导入 Assets

    光有一个圆桌却没有要陈列的东西有什么用?请下载香蕉模型。里面有两个文件 Banana_Model.fbx 和 Banana_Texture.jpg。当然,你可以用自己的模型。但你怎么来使用这个该死的香蕉呢?

    在 Unreal 能够使用一个文件之前,你必须导入它。在内容浏览器,点击 Import。

    通过文件浏览器,找到 Banana_Model.fbx 和 Banana_Texture.jpg。框选住两个文件,然后点击 Open。

    对于 .fbx 文件,Unreal 会提供几个导入选项。确保 Import Materials 未选中,因为你会创建自己的材质。其它设置保持不变。

    点击 Import。这两个文件就显示到内容浏览器中了。

    在导入文件时,实际上它是不会保存到项目中的,除非你明确地这样做。你可以用右键点击这个文件,选择 Save 就可以保存它们了。还可以选择 File\Save All 来一次性保存所有文件。确保经常使用保存功能。

    注意在 Unreal 中模型被称为网格。选择你已经有一个香蕉的网格了,可以将它放到关卡中了。

    添加网格到关卡

    选择关卡看起来空空的,让我们放点东西。
    要添加网格,左键将 Banana_Model 从内容浏览器中拖到视口。放开鼠标左键,就可以将网格放下。

    关卡中的对象是可以移动、旋转和缩放的。它们的快捷键分别是 W、E 和 R。然后使用操纵杆:

    材质

    如果你近距离查看香蕉,你会发现它根本不是黄的。事实上,它是灰色的。要给香蕉一些颜色和细节,你必须创建材质。

    材质是什么?

    材质决定了某件东西的表面外观。在一个基本的关卡中,材质定义了 4 个方面:

    • 基本色: 一个表面的颜色或纹理。常用于添加细节和色彩的变化。
    • 金属化:表面和金属的相似度。通常,纯粹的金属拥有的金属化值是最大的,而织物的金属化值为 0。
    • 高光:控制非金属表面的发光。例如,陶瓷拥有较高的高光值,而黏土则相反。
    • 粗糙度:粗糙度最大时,没有任何高光。用于岩石或木头的表面。

    下面是 3 种材质的例子。它们颜色相同但属性不同。每种材质都有在对应的属性上设置为较高值。另外的属性则设为 0。

    创建材质

    要创建材质,请进入内容浏览器,点击绿色的 Add New 按钮。会弹出一个菜单显示你可以创建的 assets。点击 Material。

    将材质取名为 Banana_Material 然后双击文件打开材质编辑器。

    材质编辑器

    材质编辑器由 5 部分组成:

    1. 图(graph): 这个区域包含所有节点和结果节点。按下鼠标右键并移动鼠标可以平移。滚动鼠标滚轮可以进行缩放。
    2. 详情: 这里显示选中节点的属性。如果没有选择任何节点,这里会显示材质的属性。
    3. 视口: 包含一个预览的网格,显示你的材质。要转动相机可以按住鼠标左键并移动鼠标。要缩放可以用鼠标滚轮。
    4. 调色板:一个列表,列出材质所有节点变量。

    什么是节点?

    在开始编辑材质前,你必须知道节点是什么。

    节点构成了材质的主体。有许多不同的节点,提供了不同的功能。

    节点可以有输入和输出,用一个圆圈+一个箭头来表示。输入位于左边,输出位于右边。

    材质有一个特殊的节点,就是结果节点,在 Banana_Material 中它是现成的。它是所有节点的终点。一旦你接通这个节点,就可以决定材质的最终显示。

    添加材质

    要为一个模型添加颜色和细节,你需要一个纹理。一个纹理就是一张 2D 图片。通常,它们会投射到 3D 模型上,让它具有颜色和细节。

    为了给香蕉贴图,你需要使用到 Banana_Texture.jpg。TextureSample 节点允许你在材质上使用贴图。

    找到调色板,找到 TextureSample。按下鼠标左键,将它拖到“graph”窗口。

    要选择纹理,首先需要选中这个 TextureSample 节点。找到详情面板,点击 Texture 右边的下拉按钮。

    列表中列出项目中所有纹理。选择 Banana_Texture.

    要在预览网格上查看贴图,需要将它插进结果节点中。左键点击 TextureSample 节点的白色输出按钮上,将它拖到结果节点的 Base Color 输入按钮上。

    回到视口,在预览网格上查看纹理。旋转它(按下鼠标左键并拖动)查看其它细节。

    点击工具栏上的 Apply 按钮,应用你的材质。然后关闭材质编辑器——这部分的工作结束了。

    使用材质

    要将材质应用到香蕉上,你需要指定它。回到内容浏览器,双击 Banana_Model 打开它。这会显示一个编辑器:

    找到详情面板 Materials 一节。点击 Element 0 右边的下拉按钮,选择Banana_Material.

    关闭网格编辑器,回到主编辑器,看一下视口。你将看到香蕉现在已经贴图了。恭喜,你已经成为了一个关卡设计师了!

    注:如果光线太暗,你可以在世界大纲编辑器中点击 Light Source 来改变它。在详情面板中,找到 Intensity,设置为更高的值。

    蓝图

    香蕉看起来很好,但如果将它放到圆桌上旋转就更好了。用蓝图来创建一个圆桌很轻松。

    简单讲,一个蓝图(Blueprint)表示一件”东西“。蓝图允许你为对象创建自定义行为。对象可以是某种物体(比如圆桌),也可以是某些抽象的东西比如生命系统。

    想制作一辆会动的车吗?构建一个蓝图。一只会飞的猪呢?使用蓝图。一只在碰撞中爆炸的小猫?还是蓝图。

    就像材质一样,蓝图使用了节点系统。这意味着你只需要创建节点然后将它们连接起来,不需要编写代码!

    注:如果你更喜欢写代码,你可以用 C++。蓝图易于使用,但它们无法做到和 c++ 代码一样快。如果你不得不用到大量计算的东西,比如复杂算法,你应当使用 c++。
    当然虽然你喜欢 c++,但很多时候用蓝图其实是个好主意。蓝图有这些优点:

    • 通常,蓝图比 c++ 的开发速度更快。
    • 易于组织。你可以将节点分成不同的模块,比如功能和图形。
    • 如果你和非编程人员一起工作,修改蓝图更容易,因为它的可视化和直观性。

    将对象用蓝图来创建是一种好办法。当需要提升性能时,将它们转换成 c++。

    创建蓝图

    在内容浏览器,点击 Add New。在列表中选择 Blueprint Class。

    弹出一个窗口,让你选择父类。你的蓝图会从父类继承所有的变量、函数和组件。花点时间了解每个类能做什么。

    注:Pawn 和 Character 也是 Actor 类,因为你可以放置和生成它们。

    因为圆桌只会待在一个地方不动,Actor 类最适合。选择 Actor 然后给文件命名为 Banana_Blueprint。

    最后,双击 Banana_Blueprint 打开它。当窗口弹出时,点击 Open Full Blueprint Editor :

    蓝图编辑器

    首先,在蓝图编辑器中,选择 Event Graph 标签页。

    蓝图编辑器有 5 个主要的窗口:

    1. 组件窗口:当前组件的列表。
    2. 我的蓝图:用于管理你的图形、功能和变量。
    3. 详情窗口:显示当前选中对象的属性。
    4. 图形窗口:这是关键。所有节点和逻辑都在这里。按下右键并拖动鼠标进行平移。滚动鼠标滚轮进行缩放。
    5. 视口:任何拥有可视化元素的组件都在这里显示。你可以用主编辑器一样的方式移动和旋转。

    创建圆桌

    要创建圆桌,需要两个东西:一个基座和一个陈列品。你可以通过组件来创建这两个东西。

    什么是组件?

    如果一个蓝图是一辆车,那么组件就是组成车辆的构件。例如,车门、轮胎、引擎都是组件。

    但是,组件不仅仅限于物理对象。

    例如,要让车动起来,你需要添加一个移动组件,你甚至可以为它添加一个飞行组件让它飞起来。

    添加组件

    在你看到任何组件之前,你需要切换到视口视图。点击 Viewport 标签页即可切换到它。它看起来像这个样子:

    注:DefaultSceneRoot 组件在玩游戏时不会显示。它只在编辑器中显示。

    这个圆桌用到了两个组件:

    • Cylinder: 一个简单的白色圆柱体。这是放置香蕉的底座。
    • Static Mesh: 这个组件用于显示香蕉网格。

    要添加底座,找到组件面板。点击 Add Component 并选择 Cylindar。

    最好让底座变得更短一点。按下 R 键,显示缩放操作杆,然后将它缩短(不要管真实大小,你可以在后面修改它)。

    然后来添加网格。回到组件面板,在空白地方点击左键,清除对圆柱体的选中状态。这能保证接下来的组件不会附加在圆柱体组件上。

    注:如果不这样做,接下来的组件会附加在圆柱体上。这意味着它会继承圆柱体的 scale 属性。因为你缩短了圆柱体,那么接下来的组件也会被缩短。

    然后。点击 Add Component,选择 Static Mesh。

    要显示香蕉,选择这个静态网格组件,然后点击 Details 标签页。点击 Static Mesh 右边的下拉按钮,选择 Banana_Model。

    如果它的位置不对,请移动香蕉。按 W 激活操作杆,移动它的位置。

    蓝图节点

    接下来让圆桌旋转。这就要用到蓝图节点了。

    和材质节点不同,蓝图节点拥有特殊的 pin 叫做 Execution pin。位于左边的 pin 是输入,位于右边的则是输出。所有节点至少有一个输入/输出。

    如果节点有一个输入 pin,它前边必定有一个连接才能执行。如果有一个节点没连接,那么后续的任何节点都不会执行。

    举一个例子:

    节点 A 和节点 B 会执行,因为他们的输入 pin 已经有连接。节点 C 和节点 D 不会执行,因为节点 C 的输入 pin 是断开的。

    转动圆桌

    在开始之前,看一眼组件面板。你会看到 Cylindar 和 Static Mesh 有缩进而 DefaultSceneRoot 没有缩进。这是因为前者是附加到 DefaultSceneRoot 上的。

    如果你移动、旋转或缩放 root 组件,那么它包含的组件也会有同样动作。通过这种方式,你可以让 Cylinder 和 Static Mesh 一起旋转,而不是分别旋转。

    创建节点

    要开始编写脚本,需要进入 Event Graph 标签页。

    让某个对象旋转非常简单,只需要创建一个节点。在 graph 视图空白地方右键,打开有效的节点菜单。搜索 AddLocalRotation。因为你需要旋转底座和香蕉,你只需要旋转 root 组件即可。选择 AddLocalRotation(DefaultSceneRoot)。

    注:如果没有列出这个节点,请反选菜单右上角的 Context Sensitive 选项。

    在 graph 窗口中会多出一个 AddLocalRotation 节点。Target 输入会自动连接到你选择的组件。

    要设置旋转角度,找到 Delta Rotation 输入,然后修改 Z 值为 1.0。这将导致蓝图沿 Z 轴旋转。值越大,转速越快。

    要不断地旋转,你必须逐帧调用 AddLocalRotation。要逐帧调用,需要使用 Event Tick 节点。它已经在你的 graph 视图中了。如果没有,用前面一样的方法创建一个。

    将 Event Tick 节点的输出 pin 拖到 AddLocalRotation 节点的输入 pin。

    注:用这种方法,旋转速度取决于帧率。这意味着机器越慢圆桌的转速越慢,反之亦然。这对于本教程来说是可以的,因为我让事情简单化了,但在后面的教程中我会介绍如何解决这个问题。

    最后,点击工具栏上的 Compile 按钮,更新你的蓝图,然后关闭蓝图编辑器。

    将蓝图添加到关卡

    在添加蓝图之前,在主编辑器的视口中,删除香蕉的模型。选择该模型,点击 Edit\Delete 菜单或者按 Delete 键。

    添加蓝图和添加网格一样。在文件上按住左键,将它拖到视口中。

    点击工具栏上 的 Play 按钮,看看效果!

    注:如果你没有删除原有的香蕉模型,你可能会被警告”灯光需要重建“。如果删掉模型,则错误不再显示。

    接下来去哪里?

    在这里下载完成后的项目。

    你已经学完这篇教程,但那只是 Unreal 中极小的一部分。如果你想继续学习,请阅读本系列的下一篇教程,我将介绍 Unreal 引擎更多关于蓝图的内容。

    展开全文
  • UE4关卡蓝图内的消息及事件交互


    笔记为【风之神韵】蓝图进阶教学视频中讲解的内容。整理笔记是为了便于学习和查询。
    UE4版本 4.8.1


    一、事件调用函数的方式


    1> 第一步:打开关卡蓝图(菜单Blueprints->Open Level Blueprint)
    如图:



    2> 打开关卡蓝图的图表,默认的情况都是通过 [Event Begin Play] 事件开始的.


    通过单击鼠标右键创建 [Event Begin Play] 事件
    [Event Begin Play]事件是,游戏中所有物体加载完成后触发此事件。


    3> 在来创建一个节点[Print String]
    [Print String]函数用来在屏幕左上方打印一条语句。

    4> 将[Event Begin Play]与[Print String]进行连接
    如图:





    5> 将在屏幕的左上角打印出 [helle] 字符串
    如图:



    通过[Event Begin Play] 事件去调用[Print String]函数
    由于[Print String]函数是C++底层实现的,不能双击查看实现内容。



    二、创建自定义函数间接交互


    1> 创建自定义函数
    在关卡蓝图左边找到[MyBlueprint]->[Functions]选项。
    单击[+]创建一个函数并修改函数名称为[PrintStringCustom]
    创建一个自定义的打印函数并封装UE中的[Print String]函数
    图4


    图5


    2> 当新建自定义函数后,关卡蓝图中会自动出现一个[Print String Custom]图表
    1)在[Print String Custom]图表中,新建[Print String]函数并打[Hello]字符串
    2)在新建[Print String]函数并打[There!]字符串
    3)将[Print String Custom]与[Print String]进行连接
    4)这样就完成了[Print String Custom]自定义函数的实现。
    [Print String Custom]函数功能就是连续打印两个字符串。
    如图6




    3>回到[Event Graph]图表中来调用刚刚创建的[Print String Custom]函数


    1)在左边的函数列表中找到[Print String Custom]函数并拖拽到[Event Graph]图表中
    由于是自定义的[Print String Custom]函数,双击此函数就可以查看函数的内容。
    如图7



    2)然后,将[Event Begin Play] 事件连接到[Print String Custom]函数
    然后屏幕左上角打印了[Print String Custom]函数输出的字符串
    如图8


    如图9


    这就是通过自定义[Print String Custom]函数去间接的去调用[PringString]函数.





    三、创建自定义事件交互


    事件:没有输入只有输出的,主动执行的这样的结点,都是事件。如[Event Begin Play]
    其实本质上还是有输入的,只过这些调用是在C++底层去处理。在蓝图层面上,我可以理解为自动触发。


    1>在[Event Graph]图表中,空白处右键在搜索框中输入[custom]
    选择[Add Event]->[Add Custom Event]
    图:10


    2>修改新生成的自定义名称为[CE_PrintString]
    图:11


    3>自定义的事件[CE_PrintString]如何让它去触发呢?
    可以在其它的位置去驱动调用它,不会像函数从左边连入从右边连出的形式。


    4>新建[PringString]函数,当自定义事件触发后会打印字符串.字符串为[CE_PrintString  Event Fire]
    图:12


    先删除其它不需要的输出信息,然后编译并运行.
    但是屏幕上没有输出会任何信息。原因是没有任何地方调用自定义[CE_PrintString]事件。




    5>在[Event Graph]图表的其它位置,按右键输入[CE_PrintString]
    选择[Call Function]->[CE Print String] 事件。 那什么进候调用呢?


    6> 新添加键盘上的[F]事件,当用户按下键盘上的F键时,就会触发[CE_PrintString]事件。
    图:13


    触发顺序是,当按下F键时,上面F键是先触发的[CE_PrintString]事件,然后[CE_PrintString]事件在调用[Pring String]函数
    图:14


    这是通过第三种方式,自定义事件来做消息交互。




    四、示例在自定义的函数中调用自定义事件


    1>在自定义的[Print String Custom]函数中调用[CE_PrintString]自定义事件


    这样就实现了在函数里面去调用函数外面全局的事件
    图:15


    2>在[Event Graph]图表中用[Event Begin Play] 事件连接到[Print String Custom]函数
    当点击[Play]后,屏幕上打印了三条输出语句。
    这样就实现了在函数内部调用自定义事件的方式。
    图:16





    需要说明的是:
    1>在函数内部是无法自定义事件的。在函数内部右键是没有[Add Event]->[Add Custom Event]。
    函数是局部的不能建立全局自定义事件的。
    自定义事件生命周期为游戏的开始到结束。
    函数的生命周期为调用开始时到执行结束后。


    展开全文
  • 今天在做白天和夜晚场景切换工作,白天有几种,晚上有几种,为了偷懒,我做了一个CustomEvent,for循环UnloadStreamLevel,然后在对应的LoadStreamLevel,结果出问题了,左上角红色显示,没有构建。...
  • 打不开ue4工程时或者运行UEEditor崩溃,删除临时文件,只需保留以下文件夹 Conifg, Content & Source 以及 .uproject
  • 在UE4中创建关卡很容易,并且周围都有不错的UI可以为您提供便利。 在本小节中,我们将概述基本的编辑器用法,并描述在启动第一个项目后如何构建第一... 如果您不想从中进行构建,则可以将其删除或创建新关卡。 要创...
  • unreal引擎编译c++代码的时候,如果代码中有错误,引擎非常容易崩溃,崩溃后,经常无法再次成功打开。这时候需要以下操作才可以重新打开: 1.将vs中的错误代码注释掉。 2.打开项目文件夹的目录,将vs、binary、...
  • Unreal网络架构

    2017-03-11 16:44:19
    最初的多玩家游戏是双玩家的调制解调器游戏,以DOOM为代表,而现在多玩家游戏已经进化成为大型的、持久的、交互形式更加自由的游戏,如Quake2,Unreal和Ultima Online,共享现实背后的技术已经有了巨大的进步。...
  • Unreal Engine 4 书籍翻译 Building an RPG with Unreal 三 第3章 探索和战斗 创建角色 接口 PlayerController The Pawn 游戏模式类 Unreal Engine 4 书籍翻译 Building an RPG with Unreal (三)好记性不如...
  • UnrealEngine4目前有两个版本:一个是下载版,生成工程不会附带引擎源码,取而代之的是外部依赖库。另一个是源码版,需要在GitHub上下载源码2个资源包1个补充包,编译后创建工程可以同时附加引擎工程源码。对于团队...
  • Unreal发展史

    2019-07-08 21:04:28
    Unreal发展史 引子四年前的一个深夜,或者说是一个早晨,Unreal的传奇开始了。它发生在马里兰州一个不起眼的市镇Rockvill,在一套公寓大楼里回响起一支墨西哥流浪乐队的曲子,那里住着Epic MegaGames的...
  • Unreal 入门-性能分析

    2017-03-23 00:00:10
    命令:stat unit 游戏的实际单帧时间由这三者之一限制:Game(CPU ... 游戏线程),Draw(CPU 渲染线程)或者 GPU(GPU)。... 图中我们可以看到 GPU是限制主因(三者最大的一个)。为了取得更少的 单帧 时间...
  • 这篇博客主要是深入理解蓝图整个流程的的底层机制,包括节点编辑、编译、字节码解释执行。理解了这些,对前面几篇所讲的蓝图扩展,可以有一个更清晰的认识。
  • UE4开发中,很多对象在切换关卡中,伴随定义在Actor的各种对象伴随着Actor的消亡也被GC掉了。比如在我们AMyCharacter里定义各种UObject变量,等切换关卡时,我们的Character销毁了,于是里面的各种UObject也跟着消亡...
  • 毫无疑问,这些天是痛苦的,ToolChain的使用与真正的项目工程,是有很大区别的, 手机里都拷贝一份UDN的CHM,公交,走路也在看...无意中看到的Unreal发展史,不敢独享,谨记,世间除了专注,没有偶然的成功! Wha...
  • 说到unreal的内存管理和垃圾回收,自然要先了解什么对象需要被管理,怎样管理?对象用完后如何回收?   1.什么样的对象可以被unreal engine管理和回收: unreal engine定义的类中,只有UObject或者是UObject的...
  • 本节书摘来异步社区《精通Unreal游戏引擎》一书中的第6步,作者: 【英】Ryan Shah(沙哈)译者: 王晓慧 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。 第6步 修补地板 精通Unreal游戏...
1 2 3 4 5 ... 14
收藏数 261
精华内容 104
关键字:

unreal 删除关卡