美文网首页
UnrealEngine 源码编译

UnrealEngine 源码编译

作者: NightChord | 来源:发表于2019-01-16 02:34 被阅读0次

本篇文章的主要是为学习UE4的新同学做的指引,让大家知道如何去获取UE4源码和使用源码进行编译。

(一)、如何获取源码

1.获取源码前需要注册虚幻的Epic账户以及GitHub账户;

2.绑定两者,以便于在[git下载源码}();

3.编译环境的搭建:需提前安装 Visual Studio 2017(安装的VS版本号需对应下载UE4的源码需求版本)。

Epic账户绑定GitHub账户

https://www.unrealengine.com/zh-CN/ue4-on-github

image

下载虚幻引擎的源代码 官方参考

(二)、如何使用源码编译引擎以及使用(从github客户端下载)

a:直接从上面第3步从网页访问

b:下载Git桌面客户端

看这里:https://docs.unrealengine.com/latest/CHN/GettingStarted/DownloadingUnrealEngine/GitHub/index.html(右上角有language可切换中英文)

3、开始用源码编译

看这里:https://docs.unrealengine.com/latest/CHN/Programming/Development/BuildingUnrealEngine/index.html

另外在Epic主页面也可以快速进入源码位置和版本先知。

(三)、UE4 架构中类的关系

一个游戏由GameMode和GameState构成。加入游戏的人类玩家同PlayerController相关联。 这些PlayerController允许玩家在游戏中占有pawn,以便它们在游戏中有物理表示。PlayerController也为玩家提供了输入控制、平头显示信息或HUD、 及处理相机视图的PlayerCameraManager。
关系图

GameMode(游戏模式)

游戏这个概念划分为两个类。Game Mode 和 Game State 是游戏的定义,包括像游戏规则及获胜条件这样的内容。它仅存在于服务器上。它一般在游戏过程中不会有太多数据改变,并且它一定不应该具有客户端需要的临时数据。

GameState(游戏状态)

GameState 包含了游戏状态,这包括像关联玩家的列表、分数、象棋游戏中的象棋位置或者在开放世界游戏中已经完成的任务列表。GameState存在于服务器和所有客户端上,可以自由地进行复制来保持同步。

PlayerState(玩家状态)

PlayerState是游戏中的一个参与者的状态,比如人类玩家或者模拟人类玩家的机器人。作为游戏一部分存在的非人类玩家AI没有PlayerState。PlayerState中适合包含的示例数据有:玩家姓名、分数、像多人在线竞技场这样的比赛中的级别、或在夺旗模式游戏中玩家当前是否正占领旗帜。所有玩家的PlayerStates在所有机器上都存在(和PlayerControllers不同),并且可以自由地进行复制来保持同步。

Pawn

Pawn 是可以作为世界中的一个 “代理”的Actor。Pawn可以由控制器处理,它们可以轻松地接受输入,并且可以执行各种各样的类似于玩家的动作。

Character(角色)

角色 是类人的Pawn。它本身默认具有一个用于碰撞的CapsuleComponent(胶囊体组件)和CharacterMovementComponent (角色运动组件)。它可以进行基本的拟人运动,它可以平滑地在网络上复制运动,并且它具有一些动画相关的功能。

Controller(控制器)

控制器 是负责管理Pawn的Actor。一般有两种控制器:AIController 和PlayerController。控制器可以“具有”一个Pawn并控制他。
PlayerController(玩家控制器) PlayerController(玩家控制器)是Pawn和控制它的人类玩家间的接口。PlayerController本质上代表了人类玩家的意愿。

AIController (人工智能控制器)

AIController正如其名,是控制Pawn的一个仿真“意愿”。

HUD

HUD 是一种“平头显示信息”,或者说是二维的屏幕显示信息,在很多游戏中都很常见。想一下生命值、弹药量、枪支十字准线等。每个PlayerController一般都具有一些这样的信息。

Camera(相机)

PlayerCameraManager是玩家的眼睛,管理玩家如何表现。每个PlayerController一般也具有一个这样的类。关于更多信息,请参照相机工作流程 页面。

相关文章

  • UnrealEngine 源码编译

    本篇文章的主要是为学习UE4的新同学做的指引,让大家知道如何去获取UE4源码和使用源码进行编译。 (一)、如何获取...

  • 编译移植Android ARM源码

    [TOC] 编译移植Android ARM源码 android源码编译的四个流程:1. 源码下载; 2. 构建编译...

  • lua 源码编译

    lua 源码编译 本文介绍了使用 Visual Studio 编译 lua 源码的方法。 下载源码 源码下载在 这...

  • WebRTC研究 (一) 编译源码

    @[TOC](WebRTC研究 (一) 编译源码) 1. WebRTC 源码编译 1.1 IOS平台编译 1.1....

  • python深入系列(一):python源码运行流程

    源码编译 要看懂源码,肯定要学会编译源码。先去官网下载源码文件,然后解压编译安装。linux环境下进解压目录依次运...

  • JVM内存模型与数据结构

    JAVA代码执行过程 JAVA源码编译由三个过程组成:源码编译机制、类加载机制、类执行机制。代码编译由JAVA源码...

  • WebRTC for Android-源码编译篇

    目录 编译环境搭建 代码同步 编译参数配置 源码编译 踩过的问题 总结 一、编译环境搭建 首先,WebRTC源码编...

  • ijkplayer(一) 编译

    源码获取 源码拉取 错误 解决 查看分支 分支切换 2 android 编译 2.1 源码编译 2.1.1 根目录...

  • 002-【Spring】源码编译

    Spring源码编译 1、理解编译过程 1)Spring源码依赖gradle进行编译 2)不同版本的Spring依...

  • hadoop3.1.2/gdal3.0.0源码编译

    编译gdal3.0.0源码使支持gdal读写hdfs, 首先编译hadoop3.1.2源码,然后编译gdal3.0...

网友评论

      本文标题:UnrealEngine 源码编译

      本文链接:https://www.haomeiwen.com/subject/pdhpdqtx.html