问一下虚幻4引擎如果想自己做游戏是否很难,很耗时间?那个难学吗?我初中毕业后那一个暑假可以熟练掌

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问一下虚幻4引擎如果想自己做游戏是否很难,很耗时间?那个难学吗?我初中毕业后那一个暑假可以熟练掌相关的知识,希望对你有一定的参考价值。

问一下虚幻4引擎如果想自己做游戏是不是很难,很耗时间?那个难学吗?我初中毕业后那一个暑假可以熟练掌握吗?

这个问题其实很难回答,这取决于你的基础和决心,我学ue4,在入门到进阶,可以自己制作大型单机游戏的水平其实只花了一个暑假时间,完整动手自学了何伟的《ue4从入门到精通》以及网络教程。但是这个暑假是大二的暑假,在这之前我有过两年的c++学习,比赛,实践经历,实习经历,其实对于ue4我的感觉是入门难度不高,但是精通难度很高,教材的选择很重要,然后就是决心,我学习ue4之前有过996经验,所以学c++,ue4,包括现在考研都会有每日10个小时的学习时间,最后就是动手非常非常重要,整个ue4学习,必须是学到哪做到哪,不会动手等于白学。对于提问者,相比是跟我一样对于游戏开发有憧憬,但是请切记游戏开发学习是一件严肃的事,并且必须得有系统的学习阶段,所以我的建议是一步一步来,学习ue4之前最好就是去学习编程,最好学习c/c++,因为游戏是软件,编程技术才是其基础与原理,ue4的底层一样是通过大量的底层api调用与c++编写,先学习编程才能让你未来学习ue4更快走的更远。其实这也看提问者对自己未来的定位,如果是仅仅觉得好玩,学下来图一乐那另说,如果是想成为系统的游戏开发者,我比较推荐也是我曾经以及现在正走的路,就是从c/c++学起,较熟练掌握,最好能够有比赛经历,因为比赛会让你快速掌握算法基础,提升编程能力,然后去学习windows程序设计,也就是底层api的学习,这是所有windows 应用的基础,这部分可以不用精通,然后去学习DietctX 12,这部分可能会很难,主要利用比较高端的c++知识以及线性代数知识,学习DX,主要是让你了解计算机图形学,了解所有的游戏开发知识,以及原理,让你再之后学习UE4可以快速上手同时有原理知识的掌握可以让你得心应手,如果这部分有很大难度,也可以往后放放,但是一定要学,因为UE4虽然强大,但只是一个集成高层级所见即所得工具,用它只是快速实现,但是它的内部程序帮助你干了很多的事,了解引擎的原理我觉得十分重要,不能只会用还要知道其中如何实现,这才能让你走的更远,会用兵器还更得有内功。然后就是ue4的学习,为了实现开发,这部分才是开发的重头戏,因为如果光知道原理,啥都自己编写对于如今的大型游戏开发是不现实的,选取合适的工具至关重要,对于ue4我是非常推崇的,ue4实现的特效效果,光的处理,开发效率,各种方面我都是非常膜拜的,同时对于开发虚拟现实vr,ue4可以说是最佳工具(你会发现现在的vr游戏大部分都是ue4开发),学习ue4肯定是得从蓝图开始学习,然后是材质制作,同时去学一点3dsMax建模,贴图制作,选一本好教材,多在网上找教程,边学边动手,对于ue4的学习我的认知是,在有了一定程度的基础之后,以项目为学习单位,不断实现项目,不断解决问题,水平越来越高,实现的东西会越来越厉害,找不到项目?淘宝上十来块钱一个教程后面都会有数个大型项目。

写了这么多,全部手打,全当一个学长的唠叨好了,因为这一路我是走过来的,我现大四准备考研的。如果你问学了这么多得花多久,我是高中毕业暑假开始接触c++的,就是说这么多自学下来花了3年,不过都是课下学习的。不要想着急于求成,学习是没有止境的,技术水平的提升也是没有止境的,少说多做,一步一脚印,祝你成功!
参考技术A 一个暑假是别想

你要学习建模 模型的烘焙 材质的制作
更深层次的还有编程 包括后期的调整优化

这对于个人来说不能算是一个简单的项目

但是有这个时间问问题 不如立马试着做做看
参考技术B 首先,有个很白的道理,大家都明白,若是一个东西可以很短时间掌握到熟练精通,那必然是会加速烂大街的结果,那你觉得这个东西含金量还高?
但是我说的是通常不会这么简单,也未必你不是个天才,对吧。所以对于你问难不难,耗不耗时间,相信很多人都没法回答到你心里去,这事情因人而异,我曾经学习Houdini,也只用了2个月时间,便出了教程,但是也没问过这东西到底难不难,你明白吧。
所谓初生牛犊不怕虎,我觉得这种问题,其实你没必要征求别人的意见,当你征求意见的时候,证明你是模棱两可的,你就是决定学了,我觉得也有一半几率是失败。
也就说这么多,想做任何事,跟多大没关系,关键的是你跟着自己的心意走,就好。
道理都懂,就是别怕失败。
参考技术C 你可以先去【绘学霸】网站找“游戏设计/游戏制作”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=307&zdhhr-11y04r-1494144771031050979

想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。

自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。
王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】: www.huixueba.com.cn/school/3dmodel?type=2&zdhhr-11y04r-1494144771031050979

在“游戏设计/游戏制作”领域的培训机构里,【王氏教育】是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。

大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html
参考技术D 我也真的是服你。初中毕业一个暑假就想熟练掌握ue4开发,您可真的是个孩子。想了解先去看一下编程的逻辑语言到时你还有兴趣再去看那些面向对象指针内存再考虑学不学。

虚幻4蓝图快速入门

蓝图快速入门

序言

本文依据官方教程总结而来,只是带你对蓝图有一个快速的认识,如果想对蓝图有一个比较深入的了解,那么可以看官方的视频或者是做一些小项目练手,如果你有编程经验的话,上手还是很容易的。

蓝图快速入门

什么是蓝图

虚幻引擎中的蓝图可视化系统是一个完整的游戏脚本系统,其理念是使用基于节点的界面从虚幻编辑器中创建游戏可玩性元素,该系统非常灵活且非常强大,因为它为设计人员提供了一般仅供程序员使用的所有概念及工具。它是一种特殊类型的资源,为关卡设计师和游戏开发人员提供了一种在编辑器中快速创建及迭代游戏可玩性的工具。

通过使用蓝图,设计人员几乎可以创作任何游戏元素的原型,以及实现或修改这些元素。

  • Games(游戏)创建游戏规则,调整游戏条件等。
  • Players (玩家)使用不同的网格物体、材质或角色自定义来创建变种
  • Cameras (相机)创建新相机视角的原型或者在游戏运行过程中动态地改变相机。
  • Input(输入)修改玩家操作,或允许玩家向道具传入输入
  • Items (道具)武器、法术、掉落物、触发器等。
  • Environments (环境)创建随机的装置或者程序化地生成道具。

 

为了对蓝图有一个基本的印象,你可以查看:

  • 官方快速入门指南
  • 虚幻引擎快速入门视频教程

对于程序员来说,我们可以把它理解为一种可视化的高级语言(C#等),它有基本的变量、函数、类型转换,支持继承、多态等。

蓝图的工作原理

从蓝图的基本形式上讲,蓝图是针对您游戏添加的可视化脚本。通过使用连线把节点、事件、函数及变量连接到一起,这样就可以创建复杂的游戏性元素。蓝图通过各种用途的节点构成图来进行工作,这些节点包括针对蓝图每个实例的对象构建、独立的函数、一般的游戏性事件,从而实现各种行为及其它功能。

对比

UnrealScript vs Blueprints vs C++

UnrealScript (UE3):

  • 一种面向对象的脚本语言
  • 跟C,C++,Java的语法相似,但是也有些不同
  • 编译成虚拟机字节码
  • 添加了一些有趣的功能,比如状态(States),定时器(Timer)委托等(Delegates)

蓝图 (UE4):

  • 一种面向美术人员和设计师友好的可视化脚本系统
  • 跟UnrealScript使用的相同的虚拟机
  • 几乎跟UnrealScript一样强,在某些方面甚至更强

C++:

  • 一直是UE游戏编程中的一部分
  • 跟虚拟机相互紧密地结合在一起
  • 在UE4里面得到巨大的改进用来让编程人员替代UnrealScript

蓝图跟c++对比

  • 蓝图适合快速迭代
  • 蓝图比原生C++消耗更多的CPU性能
    • 运行在虚拟机上
    • 大约比原生C++代码慢8~10倍
    • 对于大多数简单的事件驱动的任务,你可能并不会发现性能有什么大的消耗
    • 许多发行的AAA游戏都在使用蓝图(包括Epic自己)
    • 每帧需要更新的(tick)应用使用原生C++(物理模拟)
  • 但是,蓝图仍然很合适做原型开发
    • 可以让设计师在蓝图快速得创建他们所需的原型,然后让程序员把它转换成代码
    • 这是Epic公司如何使用蓝图的

总结

  • 蓝图可以让设计师快速简单得实现想法
  • 图状结构可以让程序员快速简单得用C++代码实现并优化
  • 代码可以在编辑器中添加到任意工程中
  • 快速协作、畅通沟通,不会出现模糊不清的玩法设计。

个人理解,蓝图系统非常强大,可用于快速原型设计、简单事件驱动玩法的开发,但是如果玩法复杂需要耗费非常多的CPU性能,那么最好把设计师使用蓝图设计的玩法翻译成原生的C++代码,如果本身一些像物理模拟等需要每帧更新又特别耗时的那么需要使用C++来进行开发。

蓝图类型

关卡蓝图(Level Blueprint)

关卡蓝图是一种特殊类型的蓝图,是作用于整个关卡的全局事件图表。关卡事件或者关卡中的Actor的特定实例,用于激活以函数调用或者流程控制操作的形式呈现的动作序列。熟悉虚幻引擎3的人应该非常熟悉这个概念,因为这和虚幻引擎3中的Kismet的工作原理非常相似。

关卡蓝图提供了针对关卡动态载入、Matinee以及给放置到关卡中的Actor绑定事件的机制。

类蓝图 (Blueprint Class)

类蓝图是一种允许内容创建者轻松地基于现有游戏性类添加功能的资源。它是在编辑器中可视化地创建的,不需要书写代码,会被作为类保存在包中。实际上,这种类蓝图定义了一种新类别或类型的Actor,这些Actor可以作为实例放置到地图中,就和其它类型的Actor的行为一样。

父类

你可以创建多种不同类型的蓝图,当然在你做这些之前,你需要指定该蓝图的**Parent Class(父类)** 选择继承父类,允许你在自己的蓝图里面调用父类创建的属性。

下面是你创建蓝图是最常见的父类:

  • Actor    一个可以在世界中摆放,或者生成的Actor。
  • Pawn    Pawn是一个可以从控制器获得输入信息处理的Actor.
  • Character    角色是一个包含了行走,跑步,跳跃以及更多动作的Pawn.
  • PlayerController     角色控制器
  • Game Mode    一个Game Mode 定义了游戏是如何被执行的,游戏规则,如何的分以及其他方面的内容。

仅包含数据的蓝图(Data-Only Blueprint)

仅包含数据的蓝图是指仅包含代码(以节点图表的形式)、变量及从父类继承的组件的类的蓝图。仅包含数据的蓝图允许你调整及修改继承的属性,但是不能添加新元素。从本质上讲,这些蓝图是原型的替代物,设计人员可以使用它们来调整属性或者设置具有变种的项目。可以通过添加代码、变量或者组件来将它转换成完整的类蓝图。

蓝图接口(Blueprint Interface)

蓝图接口是一个函数或多个函数的集合,它相当于C++中的一个纯虚基类,仅有函数名称,没有实现,该接口可以添加到其它蓝图中。使用具有该接口的蓝图,都一定会具备这些函数。在每个添加了接口的蓝图中,都可以提供接口的这些函数功能。从本质上讲这各一般编程中的接口概念一样,允许通过一个公共接口来共享及访问多种不同类型的对象。简单地讲,蓝图接口允许不同的类蓝图间彼此共享及发送数据。

蓝图接口的创建和其他类似,可以通过编辑器中的内容创建器进行创建,但它们有一些局限性,因为它们不能:

  • 添加新变量
  • 编辑图表
  • 添加组件

蓝图宏库(Blueprint Macro Library)

蓝图宏库是一个存放了一组宏的容器,或者是可以像节点那样放置到其他蓝图中的自包含图表。这些蓝图宏库非常节约时间,因为它们存放了常用的节点序列、及针对执行和数据变换的输入和输出。

宏会在所有引用它们的图表间共享,但是如果它们在编译过程中是合并的节点,那么它们会自动地展开为图表。这意味着蓝图宏库不需要进行编译,但是对宏所做的修改,仅当重新编译了包含引用该图表的蓝图时,这些修改才会反应在图表中。

参考:

  1. https://docs.unrealengine.com/latest/CHN/Engine/Blueprints/QuickStart/index.html
  2. http://blog.csdn.net/neil3d/article/details/49070135
  3. http://www.slideshare.net/GerkeMaxPreussner/east-coast-devcon-2014-game-framework
  4. http://www.slideshare.net/GerkeMaxPreussner/gdce-2015-blueprint-components-to-c

以上是关于问一下虚幻4引擎如果想自己做游戏是否很难,很耗时间?那个难学吗?我初中毕业后那一个暑假可以熟练掌的主要内容,如果未能解决你的问题,请参考以下文章

虚幻引擎在游戏之外可以做什么呢?

虚幻引擎在游戏之外可以做什么呢?

怎么使用虚幻4开发游戏?

浅谈虚幻4以及学习的初衷

怎么用虚幻4制作游戏?

虚幻引擎4如何将我的游戏发布到网站?