2016-11-21 23:30:27 u013131744 阅读数 4619
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2392 人正在学习 去看看 杨石兴

首先要说的是,游戏开发是一项高度复杂的代码开发工作,编程语言只是最基本的知识,它涉及的内容还有计算机图形学、3D数学、物理学等复杂的学科。但是若需要学完这么多知识才能开发游戏,恐怕许多人都已经断气了,更谈不上开发游戏了。所以前人就把各种复杂的代码封装起来,使得一般的游戏开发者可以更加接近游戏的逻辑和功能性方面的代码,而无需接触最底层的知识。

194023hhhqhbpcqpmpltad

所以说游戏引擎,可以是引擎开发者已经写好的一堆代码框架,使得我们可以去调用这些底层代码,也可以是像虚幻4还附带可视化关卡编辑器的工具(Unity3D也是可视化的游戏引擎,后面会谈当今主流游戏引擎的对比)。

为什么选用虚幻4引擎?

首先,现在流行而且出名的商业引擎主要有cocos2dx,Unity3D,UE4,CryEngine等。但是这里选择UE4,也有笔者认为的独特优势。

1) UE4是开源的。开源就是代码是完全开放的,为什么开源如此重要?一方面是因为只有我们看到源代码的实现细节,当出错了我们才能快速准确地判断出错的成因,节省被错误折腾的时间。(你想想像Unity3D这种闭源引擎,要是出错了,你是完全看不到为什么会发生错误的。除了不断盲目Debug,查文档和谷歌之外自己对于错误束手无策。)另一方面,开源可以使得我们深入学习引擎的原理,只知其然不知其所以然必然不能走得太远,而且会走得更痛苦。

2) UE4的画质是世界上数一数二的。游戏的画质往往由游戏引擎来决定的,一个好的游戏引擎它可以模拟出极度逼真或者极具美感的画面。读者可以自己去看看Unity3D制作的游戏和UE4制作的游戏,其精美程度是相差甚远的。(这里并不是完全指责Unity3D,毕竟它们面对的是不同的层次。)作为一名追求极致的游戏程序员,当然要想看看最好的效果是怎么实现的。

3) UE4免费!无需多言,还有比免费更好的事吗?

下图为UE4游戏引擎制作出来的极度逼真游戏画面,你分得清这是不是现实吗?

虚幻4游戏引擎有何强大之处?

第一代虚幻游戏引擎(英文名是Unreal Engine,简写UE)在1998年由Epic Games公司发行。当时Epic Games公司为了适应游戏编程的特殊性需要而专门为虚幻系列游戏引擎创建了一种名为UnrealScript的编程语言,该语言让这个游戏引擎变得非常容易方便,因而这个游戏引擎开始名声大振。

接着,2002年,Epic发布了下一代游戏引擎UE2。这时候,在虚幻引擎提供的关卡编辑工具UnrealEd中,能够对物体的属性进行实时修改。它也支持了当时的次世代游戏机,像PlayStation2,XBox等。

到了2006年,Epic发布了下一代游戏引擎UE3,这可能是最受欢迎和广泛使用的游戏引擎。这时候的UE3又发布了一个极其重要的特性,那就是Kismet可视化脚本工具,Kismet工作的方式就是以用各种各样的节点来连接成一个逻辑流程图。其最牛逼的地方在于,使用Kismet你甚至不需要掌握任何编程知识。你可以借助Kismet使得不需要写一行代码来开发一个完整的游戏。 

到了2014年5月19日,Epic发布了Unreal4,目前最新也是Unreal4。这次版本换代也是有了巨大的改变,它已经完全移除了UnrealScript语言,并且用C++语言来代替它。在之前的版本,如果你想修改这个引擎来开发你自己的游戏,你必须用UnrealScript,也就意味着你要学习一门新的语言。不过现在,如果你要修改这个引擎,你可以用C++来完成。这对于绝大部分习惯于C++的游戏引擎工程师来说,使用自己热爱的C++语言来工作,绝对是一件天大的喜事啊。 

不但如此,游戏引擎的源代码已经可以从Github开源社区下载。这意味着开发者对游戏引擎有着绝对的控制权,实质上你可以修改任何任何东西,包括物理引擎、渲染和图形用户界面。 

它也提供了一些叫热更新的功能。什么叫热更新呢?通常,如果你想对游戏的代码进行一些修改,你必须要停止游戏才能进行修改,然后再次运行看看修改后游戏的效果。然而,使用热更新功能,你可以修改游戏而不需要停止或暂停游戏。任何在游戏代码的改变会即时更新,并且你可以看见它会在游戏中实时反映出来。 

UE4是跨平台的,你可以用来制作Xbox One、PlayStation4(包括索尼的Project Morpheus虚拟现实设备),Windows PC,Linux,Mac OSX,HTML5,iOS和安卓,就连虚拟现实设备Oculus Rift也支持。 

另一个重大的改变是,在2015年初,虚幻4已经可以完全免费下载和使用了,之前的版本是需要支付一定费用的。现在,你可以用来开发游戏,并且发行,而且不需要为UE4游戏引擎支付一分钱。只有在你赚到了3000美元收益之后,你才需要支付5%的技术使用费。 

另一个UE4提供的特性是商城,你可以在商城中购买和上传游戏资源。这些游戏资源可以包括动画,3D建模,材质,声音效果,预制游戏等等。这也是一个令没有游戏资源或者没有人力来开发资源的开发者振奋的消息。它们可以商场购买并直接应用于自己的游戏中。开发者也可以上传自己的工作成果到商城来赚钱。 

这个虚幻4小白系列教程,是面向于没有使用过UE4的新手,但需要一点点C++的知识(但也无需太多,一般读过任何一本C++教材都能看懂本教程)。我们从非常基础的下载安装引擎开始,到更高级的上传作品到谷歌PlayStore,都会涉及。我们会使用UE4来一步一步地制作我们的游戏,Let’s Start From it,你的游戏开发之路!

下图为UE4游戏引擎制作出来的官方示例宣传视频画面:



2018-09-18 14:12:32 UWA4D 阅读数 356
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2392 人正在学习 去看看 杨石兴

随着游戏内容的日趋精品化和重度化,Unreal引擎逐渐走进国内开发商的视野并被使用,然而其高门槛的操作使用和项目本身的重度性也使得优化工作愈发复杂艰难。作为性能优化的服务商,UWA测评今天正式支持了Unreal 引擎开发的项目,帮助Unreal开发者高效定位并优化性能瓶颈,该服务目前免费提供给开发者使用

在目前UWA性能测评报告中,不仅有宏观的总体性能概览和细致的引擎模块检测,对于一些重要性能函数,报告提供了详细的堆栈分配信息,结合报告中的实时屏幕截图,研发团队能更直观地针对性能瓶颈进行定位和修复,下面就跟随小编的脚步一睹庐山面目吧!


总体性能走势概览、细分模块数据分析

在总体性能页面中,我们展示了测试项目在运行过程中的CPU耗时以及内存走势,研发人员能快速对项目的主要问题了然于胸。

2694(0).png
                                                                                   总体性能趋势—CPU性能占用

 

而对于微观的细节问题定位,我们提供了各个引擎模块的重要耗时参数信息。如下图,在渲染模块中,我们提供了DrawCall、Triangle、半透明/不透明渲染、相机裁剪、可见性计算单元数量等耗时走势。

请输入图片描述
                                                                           总体性能趋势—渲染模块性能

 

针对报告中每个引擎模块中的重要参数,我们以UWA Tips的形式进行了详细说明,用户可方便地从数据中找出游戏运行过程中不同模块各项指标的数据,如下图所示:

请输入图片描述

 

代码堆栈是定位性能瓶颈的鹰眼。在目前的性能报告中,我们支持了多线程耗时的详细查看:对于游戏逻辑具体耗时,研发团队可查看游戏线程的调用栈信息,对于渲染模块的具体耗时可查看渲染线程的调用栈信息。同时,我们将其他线程中耗时较高的Top 10函数列举在OtherThread中,方便用户查看。

请输入图片描述

 

点开上图中的某一函数,我们能查看该函数在运行过程中的具体代码堆栈信息,包括总耗时、自身耗时和调用次数等。通过总体堆栈和指定帧查看两个模式,结合项目的运行截图,可以对代码的运行效率了如指掌。

请输入图片描述
                                                                                 代码效率—代码堆栈

 

而对于内存和资源的使用,我们分别列出了CPU和GPU端的内存占用情况。

请输入图片描述

 

同时,报告中也列出了游戏运行中,不同类型资源的使用情况以及其所占用的内存。用户可以很方便地查看指定资源的内存占用走势,并对不规范的异常资源进行排查和优化。

请输入图片描述
                                                                                                具体资源信息

 

除了以上功能,UWA性能测评报告还提供硬件参数解析(PSS、温度、电量)、运行日志等数据检测,在此不多赘述,大家可参考这里的完整Unreal性能报告Demo,当然我们更欢迎大家来体验!


如何使用UWA测评服务

用户注册登录UWA官网后,在项目标签下“新建项目”,填写项目名称并根据测试的平台下载对应的SDK。

根据提示集成SDK后编译生成测试包,在提交页面中提交,并提供对应的测试流程。提交后,即可坐等报告生成。

目前,UWA支持Unreal游戏/应用在iOS、Android和PC三大平台的性能测评,同时随着对Unreal引擎更深入的测试和研究,我们将探索更多性能参数的规律。在后续的研发中,我们会不断更新UWA的测评机制,力求为Unreal开发者提供更有针对性的分析和参考。

2018-11-15 17:21:01 xiaoxiaolooi 阅读数 256
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2392 人正在学习 去看看 杨石兴

unreal GIS 模块

unreal4 源代码模块

自从unreal4 开源以来,osg ogre 渐渐不能用来吃饭,于是本着听人劝吃饱饭的思想,转头unreal门下,继续为混口饭事业,投身革命。可是unreal的c++编程基本没有什么例子可看,只好自己从头做起。

  1. 开发者驱动
  2. 编辑器
  3. 工程目录
  4. 基础框架代码
  5. 第三方库

在这里插入图片描述
这个是文档目录,代码量难以阅读,决定从以下三方向入手,第一次写文字,真心不容易。
1.案例编写使用unreal4 的普通界面搭建自定义三维场景 介绍 editor层的基础代码
2.添加GIS地图属性信息 介绍 驱动层的基础代码
3.程序化植物合成 介绍 与unreal基础平台结合
以后会陆续跟新到这里
推荐大家使用 阿里云 https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ic4sfgeu

2016-05-16 20:34:18 wuxiaoming1733 阅读数 1111
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2392 人正在学习 去看看 杨石兴

从Unity引擎过度到Unreal4引擎

 前言

   

http://www.mamicode.com/info-detail-495369.html

        打开电脑下载了UE引擎的一个类似管理的客户端,导航如下图:

  技术分享

       EPIC这是要逆天的节奏吗?不过不管他了,接下来,我们便一同学习一下EPIC提供给我们的这篇从Unity过渡到UE4的经验之谈吧。说明一下,下面我将对这篇文章中的重点内容做翻译和一些自己的见解,仅供参考,若需更详细的内容,请访问官方提供的文档手册。

      原文目录:https://docs.unrealengine.com/latest/INT/GettingStarted/FromUnity/index.html?utm_source=uelauncher&utm_medium=software&utm_campaign=learntab


那我们就开始吧

The Editor  编辑器

两个编辑器的布局如下:

技术分享


Editing Assets编辑资源


Detail面板就是负责编辑工程资源,类似于Unity里面的Inspector。

技术分享

Quick Glossary(Glossary:术语)

 两个引擎的部分术语对比:

Category Unity UE4
Gameplay Types Component Component

GameObject ActorPawn

Prefab Blueprint Class
Editor UI Hierarchy Panel World Outliner

Inspector Details Panel

Project Browser Content Browser

Scene View Viewport
Meshes Mesh Static Mesh

Skinned Mesh Skeletal Mesh
Materials Shader MaterialMaterial Editor

Material Material Instance
Effects Particle Effect Effect, Particle, Cascade

Shuriken Cascade
Game UI UI UMG (Unreal Motion Graphics)
Animation Animation Skeletal Animation System

Mecanim Persona , Animation Blueprint
2D Sprite Editor Paper2D
Programming C# C++

Script Blueprint
Physics Raycast Line Trace, Shape Trace

Rigid Body Collision, Physics
Runtime Platforms iOS Player, Web Player Platforms

Projects and files工程和文件

So what are all these directories and files?工程目录和文件的具体内容?

就像Untiy的工程一样,Unreal4的每一个工程都有他们单独的工程文件夹。可以通过双击.uproject 文件打开工程,或者通过右键查看更多选项。UE4的工程文件夹包含很多子文件夹和文件,里面最重要的是Content和Source 文件夹

Where do I put my assets?我应该把资源放在那里?

UE4的工程文件夹里面的Content文件夹和Unity的Asset文件夹类似,用来存放游戏资源。可以通过拖拽的方式,载入资源,对资源进行处理过后,UE4工程将会自动在Content文件夹和ContentBrowser面板中更新资源信息。

技术分享

What common file formats are supported?支持的文件格式

UE4所能支持的一些文件格式

Asset Type Supported Formats
3D .fbx, .obj
Texture .png, .jpeg, .bmp ,.tga, .dds, .exr, .psd, .hdr
Sound .wav
Fonts .ttf, .otf
Videos .mov, .mp4, .wmv

How is my Scene stored?场景文件是如何存储的呢?

Unity中我们把GameObject放置到场景里面,并以场景资源的形式存储。在UE4的工程中Map文件类似于Unity中的Scene文件。Map文件存储了关卡里面的物体,同样的包括光照信息,和关卡本身特定的属性。

How do I change my project‘s settings?如何更改工程设置

可以在Edit / Project Settings 工程设置中更改工程的名字啊,图标啊,设置输入的绑定信息啊,定义引擎如何在你的项目中运行,还可以选择平台。

Where do my source files go?源文件是如何运行的

在Unity中,我们习惯于把C#文件放置在资源文件夹Assets里面。

但是UE4却不是这样的。对于用C++创建的UE4,你将会在游戏工程文件夹下找到Source子目录,里面存放了包含.h,.cpp和各种文件。然而通过蓝图创建的工程没有Source文件夹。

UE4中开始使用C++最简单的方式是通过编辑器中的 Add Code to Project 命令。或者通过C++工程模板创建的工程只需要在ContentBrowser里面双击代码就可以用VS打开了。

From GameObjects to Actors 从GameObjects到Actors

Where Is My GameObject?Unit中GameObject在UE4中如何体现?

在Unity中,GameObject是一个可以放置在世界里面的东西。UE4中的Actor与之等价,在编辑器里面,我们可以拖放一个空的actor到世界里面。

技术分享

你可以使用一个空的Actor来创建自己的游戏,但是UE4内置了很多有特定功能的Actor类型,比如Pawn(是针对players和AI角色),Character(针对有动画的生物)。和普通的空Actor一样,我们可以拖拽这些Actors到场景师徒,并且定制他们的属性和组件。稍后我们将学到这部分内容,但是最重要的是记住,UE4有一个 Gameplay Framework 系统来使用这些Actors工作。

UE4中的Actors和Unity中的GameObject有很多不同。Gameob是C#的类,不可以直接扩展。而在UE4中,Actors是c++的类,你可以扩展并且拖过继承的方式自定义。稍后我们将继续学到这部分内容。

Where Are My Components?Unity中的组件在UE4中如何体现?

In Unity, you add components to a GameObject to give it functionality.在Unity中我们可以通过给一个物体组件来给他添加功能。

空物体--添加组件(mesh、light、particle )制作火把,看下图即可

1.拖放空Actor,为其添加StaticMesh组件

  技术分享

技术分享

2.在Mesh组件的层级上,添加点光源组件

技术分享

3.Mesh上添加例子Particle组件

技术分享

技术分享

Unity中一个GameObject的所有组件的关系是平行的,但是在UE4中,一个Actor的组件之间可以存在层次关系。如上面火把的例子中,Light和Particle组件就是依附在Mesh组件上。等下将会在Complex Actors and GameObjects这一节中讨论更多重要的概念。

From Unity prefabs to UE4 Blueprint Classes  Unity中的prefabs对应UE4中对应蓝图类

Unity的工作流程是基于prefabs的,我们创建一系列具有组件的GameObjects,然后通过他们创建预设,然后我们就可以拖放一个实例到世界中或者在运行的过程中动态生成实例。

UE4中相对应的工作流程是基于蓝图类的。在UE4中,你可以你可创建一个拥有组件的Actor,选中它,并且在Details面板中点击 "Blueprint / Add Script"按钮,然后选择一个位置存放蓝图类,最后点击保存。

我们新创建的蓝图类可以再Content Browser面板中找到,我们可以通过双击他们直接打开,并且我们可以把它们拖放到任意的关卡之中。

Where is Script Component and MonoBehaviour? Unity中的脚本组件和MonoBehaviour中在UE4中如何体现?

在Unity中,我们可以给GameObject添加C#脚本,这个脚本继承自MonoBehaviour 来定义组件的功能。

UE4中也有一些类似的东西。我们可以创建完全空的组件并且把它们赋给Actor(对比Unity中需继承MonoBehaviour )。我们可以通过C++或者蓝图的形式创建组件。在UE4中如何创建自己的独有的组件呢?答案是在Detail面板中的 Add Component 下拉选项中,我们可以创建新的组件或者选择已有的组件。

技术分享

在Unity中,当我们创建一个新的MonoBehaviour 时,会提供给我们一个包含Start()函数和Update()函数的类。

在UE4中,系统也将提供给我们两个函数,他们分别是 InitializeComponent() 函数和 TickComponent()函数,这两个函数和Unity中Start()函数和Update()函数类似。当我们创建一个蓝图脚本组件的时候,系统也将提供给我们两个具有类似功能的可视化节点。

技术分享

Scriptable Actor Blueprint Classes 可以编辑的Actor蓝图类

UE4中有一个非常酷的功能:你新建的 Actor蓝图类(此处不是组件蓝图类)可以使用蓝图来实现可视化编辑。这意味着你可以对整个物体添加逻辑,而不仅仅是这个物体中一个特定的组件。这将在你设计自己的游戏中提供更大的灵活性。

除了可以可视化编辑的蓝图脚本之外,UE4也支持通过代码实现功能的C++类。下面给出了三个的对应关系。

Unity c#

using UnityEngine;
using System.Collections;

public class MyComponent : MonoBehaviour
{
    int Count;

    // Use this for initialization.
    void Start ()
    {
        Count = 0;
    }

    // Update is called once per frame.
    void Update () 
    {

        Count = Count + 1;
        Debug.Log(Count);
    }
}
UE4 C++

#pragma once
#include "GameFramework/Actor.h"
#include "MyActor.generated.h"

UCLASS()
class AMyActor : public AActor
{
    GENERATED_BODY()
    int Count;

    // Sets default values for this actor's properties.
    AMyActor() 
    {
        // Allows Tick() to be called
        PrimaryActorTick.bCanEverTick = true;  
    }

    // Called when the game starts or when spawned.
    void BeginPlay()
    {
        Super::BeginPlay();
        Count = 0;
    }

    // Called every frame.
    void Tick(float DeltaSeconds)
    {
        Super::Tick(DeltaSeconds);
        Count = Count + 1;
        GLog->Log(FString::FromInt(Count));
    }
};
UE4蓝图

技术分享

UE4 Blueprint Classes can be extended。  UE4的蓝图类可以被扩展

Untiy的prefabs预设和UE4的蓝图类能够在你的游戏中相似的实例化出来。然而,Unity有一些并发机制,他们和预设与预设之间的嵌套相关,这些机制决定或者说限制了他们成为可以在构建时被扩展(这儿有点难理解,看下面的例子吧)。

例如,在UE4你可以创建一个命名为怪物的蓝图类实现基本功能, 比如追赶人类。然后您可以创建更多的蓝图类来扩展它,如龙怪物(对其添加喷火的功能),雪怪(一中可以再黑暗的时候吃掉你的怪物),和其他八种怪物等等。这些怪物的子类都是从一开始创建的有基本功能的怪物类继承而来,并在其基础上添加新功能。

在Unity中,你的世界通过创建不同的GameObject实例(比如一个作为龙怪,一个作为雪怪等等)来实现这一功能。现在,如果你想给所有的这些怪物添加一些新的功能,比如使用你新创建的Speak组件让他们有能力说话,在Unity中,你不得不对这十个实例单独的更新,来为它们添加功能。

在UE4中,你可以简单的修改最初的父类怪物蓝图脚本类添加新的说话功能,仅仅这么做就够了,无论是龙怪,雪怪或者其他八种Monster父类的子类都会自动的继承新的说话的功能,你都不用去单独的指定它们。

但是不止如此,我们在这里说的一切蓝图类也适用于c++类,包括组件和Actor类。这些系统是为了扩展而被设计的,包括开发大规模可扩展的功能,以及项目开发10人到100人的开发人员人数的扩展。(一字一字的翻译就是:“这些系统是为了用来支持大规模开发可扩展的功能,并且可以扩展项目10或100的开发人员所设计的”,反正就是这么一个意思,容易扩展)。

Should I use Blueprint Scripting, C++, or both?我应该使用C++,蓝图还是都使用呢?

蓝图这种可视化的编辑脚本对于简单的游戏逻辑和一些简单操作的排序是理想的。对于设计者,艺术家和一些以视觉为导向的程序员来说,蓝图脚本是一个非常棒的系统,因为我们可以非常方便通过可视化的方式实现和控制游戏物体。甚至,你可以仅仅使用蓝图来创建小的单独的游戏。可以参考Tappy Chicken例子来查看这部分的具体实现。

C++编码是用来做一些大规模的任务的,比如创建游戏的框架,复杂的AI和一些新的引擎的功能。如果你有一些C++的经验,可以之间去查看 Introduction to C++ Programming in UE4 这一页。

大多数的工程会混合使用蓝图脚本和C++脚本。许多开发者愿意使用蓝图脚本规范游戏的功能,因为它非常简单有趣,然后不就考虑到规范,和性能问题,会把其中的一部分甚至全部移植到C++程序。

Blueprint Classes can extend C++ Classes 蓝图类可以用C++类扩展

UE4游戏开发的魔力来自蓝图脚本和C++脚本的共同作用。程序员使用C++实现新功能,设计师和艺术家在蓝图脚本中使用它们,实现新的功能,在需要新功能时再向程序员提出。下面是一个实例,展示了一个团队如何同时使用C++构建一个射击游戏的框架,使用蓝图类用来实现具体行为和一些外观等功能。

技术分享

       接下来的内容就是有关代码部分了,今晚抽空继续更新~
2015-09-01 23:40:52 dongdongbusi 阅读数 888
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2392 人正在学习 去看看 杨石兴

Unreal 4 术语简介

标签: unreal4 游戏引擎 游戏开发

翻译自ue4官方文档

Objects

UE4中的objects和其他c++框架(QT、cocos2d-x)一样,具有垃圾收集、元数据等功能。
官方文档的描述:

The base building blocks in the Unreal Engine are called Objects and contain a lot of the essential “under the hood” functionality for your game assets. Just about everything in Unreal Engine 4 inherits (or gets some functionality) from an Object. In C++, UObject is the base class of all objects; it implements features such as garbage collections, metadata (UProperty) support for exposing variables to the Unreal Editor, and serialization for loading and saving.

Actors

在关卡摆放的游戏对象就是Actor。Actor可以可以作位置体积变换。在UE4中可以用蓝图或者c++来创建Actor。如果用c++,AActor是所有Actor的基类。
常用Actor:

- StaticMeshActor   环境
- CameraActor       相机
- PlayerStartActor  玩家起始

Components

组件component就是一个个可以附加到Actor上的功能点。人是Actor,会开车就是一个component。这个和和u3d里的概念类似的。ue4有很多组件,例如位置变换、audio等。

pawns

Actor的子类,用于表示人形角色或者其他具备avatar模型的角色。玩家以及NPC都是pawns。

Characters

pawn 的子类。用于表示玩家角色,具备输入控制、碰撞等属性。

PlayerController

玩家角色控制器?怎么翻译无所谓啦,反正就是用来接收玩家的输入并将这些输入信息关联到游戏中的角色。
在多人游戏中,每个客户端有且只有一个玩家控制器,客户端通过这个与服务端交互。

AIController

顾名思义,控制游戏中AI角色。

Brushes

用画刷画出来的游戏对象?不是很理解这个概念。反正画在游戏场景里的都是actor,可以用bursh画一些BSP(basic shape),例如圆柱体、立方体等等。

Levels

关卡,相当于游戏场景,里面有个中游戏对象。UE4中每个关卡都会被单独保存成.umap文件。

World

所有的level组成一个world。

GameModes

看了下文档,感觉似乎GameRule更适合它的意义。GameMode就是游戏的规则:玩家怎么加入游戏、游戏能否暂停、关卡的切换条件和方式等等。

GameStates

游戏状态,例如玩家的连接状态、比分等信息。

PlayerStates

玩家信息,例如姓名、职业、种族、等级、比分等等。

没有更多推荐了,返回首页