UE4教程:虚幻4引擎(Unreal Engine 4)学习指南_虚幻4引擎教程-程序员宅基地

技术标签: 笔记  ue4  

UE4 是 Unreal Engine 4 的缩写,中文译为“虚幻引擎4”。UE4 是一款代码开源、商业收费、学习免费的游戏引擎,支持 PC、手机、掌机等各种平台,能够充分发挥硬件的性能。
UE4 虽然也有自己的脚本语言,但是性能堪忧,所以在大型游戏开发中人们一般使用 C++。这套 UE4 教程针对有 C++ 基础的读者,将教给大家如何使用虚幻4引擎进行游戏开发。

优质资源推荐:

虚拟4引擎官网
UE4贴吧

UE4是什么?虚幻4引擎是什么?

UE4 的全名是 Unreal Engine 4,中文译为“虚幻引擎4”。UE4 是一款由 Epic Games 公司开发的开源、商业收费、学习免费的游戏引擎。
从 1998 年发行至今,UE4 一共经历了 UE、UE2、UE2.5、UE3、UDK、UE4 多个版本,它的迭代速度极快,现在已经到了 4.22 预览版。基于 UE4 开发的大作无数,除《虚幻竞技场3》外,还包括《战争机器》《质量效应》《生化奇兵》等等。在美国和欧洲,虚幻引擎主要用来制作主机游戏,风靡全球的吃鸡游戏 “绝地求生” 也是由UE4 引擎开发。UE4 采用了目前最新的即时光迹追踪、HDR 光照、虚拟位移等新技术,而且能够每秒钟实时运算两亿个多边形运算,效能是目前“Unreal Engine”的 100 倍,而通过 NVIDIA 的 GeForce 6800 显示卡与“Unreal Engine 3”3D 引擎的搭配,可以实时运算出电影 CG 等级的画面,效能非常非常恐怖。2019 年的春晚,惊艳人们的 AR 就是用 UE4 引擎制作出来的,为 2019 年春晚带来耳目一新、为之一振的视听体验。由于 UE4 引擎在近几年才进入人们的视线,所以 UE4 方面的人才目前在行业非常紧缺,在各大招聘平台上都可以找到各种 UE4 的招聘信息,并且资薪非常可观。

关于C++

UE4 的底层由 C++ 实现,我们编写的代码也是 C++,但是 UE C++ 经过 Epic 的封装,难度没有那么大,甚至会变得有趣,不过也需要你有 C++ 的基础知识,因为底层还是由 C++ 实现。

关于本教程

本教程使用的 UE4 版本是 4.21.2 Visual Studio 的版本是 2017,请确保引擎版本保持一致。本教程的目标主要是带领大家从零开始安装 UE4 到用 C++ 配合蓝图编写出一款单机游戏。

UE4使用什么编译器?

UE4 的底层虽然是用 C++ 实现的,但它又不仅仅是一个 C++ 库,它还实现了自己的编译机制。换句话说,UE4 对现有的 C++ 语法进行了改进,以适应游戏开发的场景。

当然,UE4 也不会疯狂到自己去开发一个 C++ 编译器,它还是需要依赖传统的 C++ 编译器以及相关的编程套件。

熟悉 Qt 的读者应该知道,Qt 虽然也使用 C++,但是它还提供了信号和槽的机制,这是原生 C++ 里面没有的,是 Qt 在原生 C++ 的基础上进行的语法扩展。

官方对编译器是有要求的,我们不能随意选择编译器:

  • 在 Windows 平台下,必须使用 Visual Studio 2017 v15.6 及其以上的版本。目前,VS2019 也已经发布了,读者也可以使用。
  • Mac OS 平台下使用 Xcode 作为编译器。
  • Linux 平台下使用 GCC 作为编辑器。

所以,要想搭建 UE4 开发环境,除了要安装 UE4,还要安装规定的编译器。

本教程基于 Windows 平台编写,所以使用 VS2107 编译器。安装好 UE4 和 VS2017 后,它们会自动匹配成功,不用我们进行额外的设置。我们只需要在 UE4 中新建 C++ 项目,UE4 就会自动生成解决方案和一些基本的代码。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_52723461/article/details/120217051

智能推荐

教你如何用代码告白--简单实用_mt管理器表白代码-程序员宅基地

文章浏览阅读4.9w次,点赞23次,收藏64次。虽然说520已经过去好几天了,但是并不能影响我们学习的心,今天也是心血来潮写一个html5的表白小程序。一颗砰砰跳动的表白之心! !话不多说,直接来看效果图吧是不是看起来很酷呢,下面也是给出代码。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-..._mt管理器表白代码

亚马逊之赛盒API文档对接-程序员宅基地

文章浏览阅读1.7k次。1.http://sgt.irobotbox.com/Api/API_Irobotbox_Orders.asmx 赛盒api文档的的详细说明2.你需要发送post请求(添加相应的参数),文档使用功能的是xml。这里我使用的Python对接。以下内容来至于对大佬的借鉴:https://www.cnblogs.com/insane-Mr-Li/p/9145152.html进入正题,我想获取相..._赛盒api

导航栏遮挡webview问题(适配华为,小米方案)_小米手机底部导航条适配-程序员宅基地

文章浏览阅读1.8k次。目前发生这种情况的主要有两种手机1.华为,2.小米1.华为适配 /** * 判断底部navigator是否已经显示 适配华为 * @param windowManager * @return */ @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) private boolean has..._小米手机底部导航条适配

Hadoop面试题---Yarn的作用以及工作机制_yarn的主要功能是什么-程序员宅基地

文章浏览阅读6.1k次,点赞4次,收藏28次。一、Yarn的作用在大数据生态环境中,yarn主要有两个作用:资源管理和程序调度。二、Yarn的组成主要由ResourceManager、NodeManager、ApplicationMaster 和 Container 等组件构成。三、Yarn的基础架构(1)ResourceManager作用:1)处理客户端请求;2)监控NodeManager,对各个NodeManager上的资源进行统一管理和调度;3)给ApplicationMaster分配空闲的Container运行并监控其运行状态; _yarn的主要功能是什么

Maven的配置_的清风设置 他-程序员宅基地

文章浏览阅读511次。之前就记录了在自己电脑上怎么安装Maven仓库的,以及安装后的仓库配置,(Maven的下载、安装),本章节主要记录的是Maven的几种种类以及如何将jar包文件夹(里面有着各种jar文件)配置到Maven仓库中,只有将jar包文件夹在Maven中配置后才能被项目所使用;详细如下:Maven的分类及其本地仓库配置到Macen中1、Maven的分类2、本地仓库在Maven中的配置《END》1、..._的清风设置 他

众数问题(分治法解决)_设 a 是 n 个数构成的数组, 其中出现次数最多的数称为众数. 设计一个算法求 a 的-程序员宅基地

文章浏览阅读5.9k次,点赞2次,收藏29次。一:题目给定含有n个元素的多重集合s,每个元素在s中出现的次数称为该元素的重数,多重集s中重数最大的元素称为众数,给定多重集合s,求s中的众数集重数。二:思路首先,我们最容易想到的就是统计每个数的出现次数,然后比较得出结果。这个思路可以利用容器来实现。仔细思考,这道题目还可以用分治法来解决。解决步骤:①给数组排序;②找出中位数v并且确定中位数的个数num和左右边界;..._设 a 是 n 个数构成的数组, 其中出现次数最多的数称为众数. 设计一个算法求 a 的

随便推点

Datawhale-数据分析-泰坦尼克-第一单元-程序员宅基地

文章浏览阅读1.8k次。1 第一章:数据载入及初步观察1.1 载入数据数据集下载 https://www.kaggle.com/c/titanic/overview1.1.1 任务一:导入numpy和pandas#写入代码import numpy as npimport pandas as pdimport os【提示】如果加载失败,学会如何在你的python环境下安装numpy和pandas这两个库1.1.2 任务二:载入数据(1) 使用相对路径载入数据(2) 使用绝对路径载入数据#写入代码test

Android: Activity class {com.example.helloword/com.example.helloworld.MainActivity} does not exist._activity class {com.example.helloworld/com.example-程序员宅基地

文章浏览阅读1k次。Error: Activity class {com.example.project/com.example.projectggjk.MainActivity} does not exist.这个错误是因为我在同一文件夹曾有同名称的project,在文件夹内删掉了,但是模拟器内没有删掉,所以导致程序找不到新project的MainActivity。解决办法:Build-Clean Project重启Android Studio再次运行程序参考:https://blog.csdn.net/q_activity class {com.example.helloworld/com.example.helloworld.mainactivity}

高可用下DFSZKFailoverController没有启动-程序员宅基地

文章浏览阅读5.1k次。出现connection refused异常 , zoo.cfg 文件配置问题server.1=0.0.0.0:2888:3888server.2=hxb02:2888:3888server.3=hxb03:2888:3888本机地址要写成 0.0.0.0高可用集群,zookeeper 启动成功,zkfc 显示启动成功。namenode节点DFSZKFailoverController...

idea一键构建docker镜像启动容器_idea env docker-程序员宅基地

文章浏览阅读485次。1、idea插件连接dockersyctemctl启动docker的脚本(vim /usr/lib/systemd/system/docker.service )添加-H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock ,默认docker没有监听任何端口的,另外要selinux关了,防火墙开放该端口一般都连接得上。参考:https:/..._idea env docker

为什么说华为智慧屏 V75 Super是软硬结合的新典范?_v75二代是什么型号-程序员宅基地

文章浏览阅读412次。7月29日,华为宣布推出新一代智慧屏V75 Super。该产品凭借高质量的软硬结合,为用户带来了顶级的影音享受,以及领先行业的全场景智慧体验。一、 华为智慧屏V75 Super发布,顶级“画音”体验惊艳消费者V75 Super是华为V系列智慧屏的第二代产品,与第一代的V75 2021相比,V75 Super在延续了细窄边框和高屏占比优势的同时,还在硬件性能有新的突破。它使用了75英寸的mini LED屏幕。该屏幕通过搭载华为自研的鸿鹄SuperMiniLED精密矩阵背光解决方案,在画质、色彩表现力、_v75二代是什么型号

华为mate30计算机怎么不能用乘法,手机计算器全线阵亡?10%+10%到底等于多少?...-程序员宅基地

文章浏览阅读939次。原标题:手机计算器全线阵亡?10%+10%到底等于多少?9月3日,话题“手机计算器全线阵亡”登上热搜榜,消息称苹果、华为、小米、OPPO等各厂商手机计算器都出现了神奇的bug,不少手机计算机计算“10%+10%”时,得出的结果是0.11,而不是正确答案0.2。业内人士随后展开科普,表示这看起来是个Bug,但最终结果其实是计算器处理运算符号的逻辑所导致。iPhone X max、OPPO、华为荣耀、..._手机10%加10%