史上最全的Unreal Engine 4學習資料整理


官方

官方文檔

虛幻學院(英文教程,未來可能有漢化)

https://academy.unrealengine.com/

官方B站

https://space.bilibili.com/138827797/#/

C++

  • 【侯捷】《C++系統工程師》課程
  • 【呂鑫】【VS2015】C/C++/數據結構教程(推薦有選擇的看)http://class.qq.com/class/22124.html
  • 書籍推薦
    《C++ Primer Plus》或《Essential C++》或《C++ Primer》
    《大話數據結構》或《C++數據結構與算法(目前第4版)》
    《Effective C++》
    《More Effective C++》
    《Effective STL》或《STL源碼剖析》
    《設計模式》、《游戲編程模式》
    《C++沉思錄》
    《深度探索C++對象模型》

UE4教程

基礎操作

藍圖編程基礎

藍圖編程簡介

藍圖的類型 注:此處的種類只說直接實現游戲邏輯的藍圖,動畫藍圖等暫不談

變量類型

UE4的組件

【官方文檔】

【獵夢虛幻研究社】

事件節點

事件調度器(事件分配器)

【官方文檔】事件調度器的使用

事件分配器

  • 【官方文檔】 UE4的藍圖編程中,所有游戲邏輯的函數都需要通過事件來驅動,而自定義事件可以當做函數來驅動,同時也可以通過事件調度器進行驅動,通過事件調度器,可以讓藍圖實現的游戲邏輯更加靈活

流程控制

藍圖的函數

枚舉類型

藍圖的數組

【官方文檔】

【大神博客】

藍圖的結構體

【官方文檔】

【大神博客】 結構體的使用(包含部分關於枚舉類型的操作)

【大神博客】結構體數組及多維數組

【獵夢虛幻研究社】

HitResult

藍圖的容器

Map

【官方文檔】

Set

【官方文檔】

藍圖宏

【官方文檔】

【大神博客】

Timeline(時間軸)

隨機流

數學表達式

藍圖的面向對象

構建腳本(藍圖相對於C++的構造函數)

面向對象特性

繼承
多態
  • 重寫父類函數:在MyBlueprint欄的Function組上方,有一個Override菜單,下拉並選擇要重寫的函數,派生類中重寫的函數會覆蓋基類的函數
  • 調用重寫后的父類函數:右鍵重寫后的函數節點,選擇“Add call to parent function”選項
抽象
  • 如果了解面向對象思想中的抽象概念,自主按照需求定制藍圖類即可
封裝
  • 藍圖類中的變量的細節面板中的“Instance Editable”如果打對號(或者MyBlueprint欄中讓變量對應的眼睛睜開,即暴露藍圖變量),則當藍圖在關卡中被實例化后,可以通過實例的細節面板進行修改相應變量的值
  • 藍圖類中的變量和函數在細節面板中都有Private選項,如果Private打鈎,則該變量或函數無法被藍圖類的派生類繼承

藍圖通信 注:藍圖通信可以理解為不同藍圖間的信息傳遞和共享

【官方文檔】 藍圖通信方法(沒有提GetAllActorOfClass)

【大神博客】 https://www.cnblogs.com/songiveideas/p/learnmore2.html

1、直接藍圖

2、事件調度器

  • 參考上方“事件節點”

3、藍圖投射(CastTo節點)

4、藍圖接口

實現藍圖接口 http://api.unrealengine.com/CHN/Engine/Blueprints/UserGuide/Types/Interface/UsingInterfaces/index.html
使用藍圖接口 http://api.unrealengine.com/CHN/Engine/Blueprints/BP_HowTo/Interfaces/index.html
藍圖接口遷移 http://api.unrealengine.com/CHN/Engine/Blueprints/UserGuide/BlueprintComms/InterfaceMigration/index.html

5、GetAllActorOfClass

  • 這種方式並不能算是嚴格意義上的藍圖通信,其作用是通過該節點直接操作某一個類在關卡中所有的實例對象

視頻教程

B站

人人素材

ABOUTCG在線課堂

SiKi學院


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM