0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣在虛幻引擎4中創(chuàng)建3D模型

454398 ? 來源:工程師吳畏 ? 2019-07-31 17:16 ? 次閱讀

大家好!我寫了一個(gè)教程已經(jīng)有一段時(shí)間了。在本文中,我們將研究虛幻引擎4.您可以在此處了解有關(guān)Unreal以及如何安裝虛幻引擎4的更多信息。我非常喜歡Unreal的圖形質(zhì)量。它的圖形質(zhì)量無與倫比,可以免費(fèi)使用!那么,讓我們開始吧!

您還需要安裝VisualStudio(Windows)或XCode(Mac)。這些程序可能在安裝時(shí)帶有Unreal,但如果沒有,請(qǐng)確保安裝它。

一旦安裝了虛幻引擎和VisualStudio或XCode,就可以啟動(dòng)最新版本的Unreal和啟動(dòng)C ++項(xiàng)目。目前,我們不需要擔(dān)心Blueprint& C ++項(xiàng)目。選擇一個(gè)基本模板。

這個(gè)過程需要一些時(shí)間。完成后,它將如下所示。如果選擇了C ++項(xiàng)目,則可以在左下角的內(nèi)容瀏覽器中看到名為C ++類的文件夾。在左側(cè),您有模式窗口,您可以從中選擇不同的默認(rèn)3D模型和其他組件。玩它。您的VisualStudio或XCode也必須同時(shí)打開。

在Unreal中,所有對(duì)象都被視為Actors,輸入被視為Pawn等等。由于我們正在制作自己的3D模型,因此我們需要有一個(gè)actor類。

右鍵單擊內(nèi)容窗口,然后選擇一個(gè)新的C ++類。將其擴(kuò)展為演示類。

導(dǎo)航到Visual Studio。 (如果您在Blueprint類中創(chuàng)建actor,它將自動(dòng)打開Visual Studio。)您可以在Solution Explorer窗口中瀏覽您的類。

我們將使用 UProceduralMeshComponent 來構(gòu)建網(wǎng)格。網(wǎng)格是用于制作演示或?qū)ο蟮慕Y(jié)構(gòu)。導(dǎo)航到 Build.cs文件并添加以下行。

PublicDependencyModuleNames.AddRange(new string[] { “Core”, “CoreUObject”, “Engine”, “InputCore”, “ProceduralMeshComponent”, “ShaderCore”, “RenderCore” , “RHI”});

注意:如果在任何時(shí)候出現(xiàn)錯(cuò)誤,您可以隨時(shí)關(guān)閉VisualStudio并轉(zhuǎn)到文件資源管理器中的項(xiàng)目文件夾。右鍵單擊。 uproject 并選擇生成項(xiàng)目文件。如果編譯器發(fā)出錯(cuò)誤,我們需要這樣做。 (但如果錯(cuò)誤是因?yàn)椤?’),這無濟(jì)于事。

現(xiàn)在,再次打開VisualStudio。瀏覽actor類的頭文件(.h)。在底部但在大括號(hào)下添加以下代碼。

private:

UPROPERTY(VisibleAnywhere, Category = Materials)

class UProceduralMeshComponent* mesh;

可能會(huì)顯示錯(cuò)誤 - 您知道解決方案。

現(xiàn)在在你演示的 .cpp類。包括UProcedural頭類。

#include “ProceduralMeshComponent.h”

現(xiàn)在,使用三角形或面生成網(wǎng)格。你可以拿任何物件。在其他情況下,您會(huì)注意到它由許多三角形或面組成。

要?jiǎng)?chuàng)建網(wǎng)格,我們需要頂點(diǎn),三角形(或面),法線,紋理,顏色和切線。您可以在文檔中閱讀有關(guān)它們的所有信息。

現(xiàn)在,您可以想象對(duì)象中三角形的數(shù)量取決于頂點(diǎn)的數(shù)量。如果3有頂點(diǎn),則將有1個(gè)三角形。如果有4個(gè)頂點(diǎn),那么你將有2個(gè)三角形。我們也需要牢記這些。

這次我們正在制作一個(gè)廣場。您可以將此代碼添加到A ()函數(shù)中的。 cpp文件。

mesh = CreateDefaultSubobject(TEXT(“mesh”));

RootComponent = mesh;

TArray vertices;

vertices.Add(FVector(0, 0, 0)); // 0th vertice

vertices.Add(FVector(0, 100, 0)); // 1th vertice

vertices.Add(FVector(0, 0, 100)); // 2nd vertice

vertices.Add(FVector(0, 100, 100)); // 3rd vertice

TArray Traingle;

//I have created 4 triangle because we need to make sure it is rendered from behind as well. Otherwise, the object will be seen from front only and not from behind.

Traingle.Add(0);

Traingle.Add(1); // for front face - clockwise direction

Triangle.Add(2);

Triangle.Add(1);

Triangle.Add(2); // for front face - clockwise direction

Triangle.Add(3);

Triangle.Add(2);

Triangle.Add(1); // for back face - anti-clockwise direction

Triangle.Add(0);

Triangle.Add(3);

Triangle.Add(2); // for back face - anti-clockwise direction

Triangle.Add(1);

TArray normals;

normals.Add(FVector(1, 0, 0));

normals.Add(FVector(1, 0, 0));

normals.Add(FVector(1, 0, 0)); // you need to calculate the direction of normals, using 3d vectors.

normals.Add(FVector(1, 0, 0));

TArray UV0;

UV0.Add(FVector2D(1, 1));

UV0.Add(FVector2D(0, 1));

UV0.Add(FVector2D(1, 0));

UV0.Add(FVector2D(0, 0));

TArray vertexColors;

vertexColors.Add(FLinearColor(0.75, 0.00, 0.00, 1.0));

vertexColors.Add(FLinearColor(0.75, 0.00, 0.00, 1.0));

vertexColors.Add(FLinearColor(0.75, 0.00, 0.75, 1.0)); // the 4th argument determines alpha value (0,1)

vertexColors.Add(FLinearColor(0.75, 0.00, 0.75, 1.0));

TArray tangents;

tangents.Add(FProcMeshTangent(0, 1, 0));

tangents.Add(FProcMeshTangent(0, 1, 0));

tangents.Add(FProcMeshTangent(0, 1, 0));

tangents.Add(FProcMeshTangent(0, 1, 0));

mesh-》CreateMeshSection_LinearColor(1, vertices, Square, normals, UV0, vertexColors, tangents, false);

我們的網(wǎng)格創(chuàng)建到此結(jié)束!您可以保存并編譯它?,F(xiàn)在,如果你在場景中拖動(dòng)你的演員,它將編譯一個(gè)正方形!

您可以嘗試評(píng)論其他2個(gè)三角形并進(jìn)行編譯。一個(gè)廣場仍然會(huì)出現(xiàn),但試著從后面看到它。你將無法做到。

現(xiàn)在,如果您向其添加任何材質(zhì)(或圖像),如果它被顛倒或以其他方式渲染或光線較低。您需要在Triangle TArray和Normals中調(diào)整頂點(diǎn)位置。

您可以嘗試制作更復(fù)雜的模型或使用obj文件。你需要為obj模型創(chuàng)建一個(gè)解析器來獲取頂點(diǎn),法線等。你需要知道一件事,那就是Texures = UV。使用該解析器,您可以填充值并獲得這樣的模型。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 3D模型
    +關(guān)注

    關(guān)注

    1

    文章

    72

    瀏覽量

    15755
  • 虛幻引擎
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    4070
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TechWiz LCD 3D應(yīng)用:撓曲電效用仿真

    完成后TechWiz LCD 3D中加載并進(jìn)行相關(guān)參數(shù)設(shè)置 2.2TechWiz LCD 3D軟件開啟應(yīng)用撓曲電效應(yīng)的功能 2.3其
    發(fā)表于 12-10 13:43

    UV光固化技術(shù)3D打印的應(yīng)用

    UV光固化3D打印技術(shù)憑借高精度、快速打印環(huán)保優(yōu)勢,工業(yè)設(shè)計(jì)等領(lǐng)域廣泛應(yīng)用。SLA、DLP及CLIP技術(shù)各具特色,推動(dòng)3D打印向高速、高精度發(fā)展。
    的頭像 發(fā)表于 11-15 09:35 ?423次閱讀
    UV光固化技術(shù)<b class='flag-5'>在</b><b class='flag-5'>3D</b>打印<b class='flag-5'>中</b>的應(yīng)用

    使用NVIDIA Edify助力的服務(wù)創(chuàng)建3D資產(chǎn)和虛擬環(huán)境照明

    使用 NVIDIA Edify 助力的服務(wù)創(chuàng)建 3D 資產(chǎn)和虛擬環(huán)境照明,或是減半生成圖像時(shí)間。
    的頭像 發(fā)表于 08-02 15:22 ?529次閱讀

    歡創(chuàng)播報(bào) 騰訊元寶首發(fā)3D生成應(yīng)用

    App。 騰訊元寶APP發(fā)布時(shí),就圍繞工作效率場景、日常生活等場景提供了豐富的應(yīng)用,并有創(chuàng)建個(gè)人智能體等個(gè)性化體驗(yàn),“3D角色夢工廠”則將大模型生成技術(shù)和3D應(yīng)用結(jié)合,進(jìn)一步創(chuàng)新了元寶
    的頭像 發(fā)表于 07-18 11:39 ?760次閱讀
    歡創(chuàng)播報(bào) 騰訊元寶首發(fā)<b class='flag-5'>3D</b>生成應(yīng)用

    裸眼3D筆記本電腦——先進(jìn)的光場裸眼3D技術(shù)

    隨著科技的不斷進(jìn)步,裸眼3D技術(shù)已經(jīng)不再是科幻電影的幻想。如今,英倫科技裸眼3D筆記本電腦將這一前沿科技帶到了我們的日常生活。無論你是專業(yè)的3D
    的頭像 發(fā)表于 07-16 10:04 ?563次閱讀

    3D建模的重要內(nèi)容和應(yīng)用

    3D建模是一種技術(shù),通過計(jì)算機(jī)軟件創(chuàng)建虛擬三維模型,模擬現(xiàn)實(shí)世界的物體或場景。這項(xiàng)技術(shù)廣泛應(yīng)用于建筑設(shè)計(jì)、電影制作、游戲開發(fā)、工程仿真等領(lǐng)域。下面古河云科技將介紹一些與
    的頭像 發(fā)表于 06-21 14:48 ?655次閱讀

    3D建模的特點(diǎn)和優(yōu)勢都有哪些?

    的應(yīng)用。 特點(diǎn): 1.三維模型化:3D建模允許用戶虛擬空間內(nèi)創(chuàng)建具有長度、寬度和高度的物體,從而形成真實(shí)感十足的三維模型。 2.精確性:通
    的頭像 發(fā)表于 05-13 16:41 ?2478次閱讀

    烘焙vs渲染:3D模型制作的效率與質(zhì)量之爭

    探討這兩個(gè)過程,并分析它們3D制作流程的作用,二者之間的差異,以及效果上的區(qū)分。模型烘焙模型
    的頭像 發(fā)表于 05-12 08:27 ?469次閱讀
    烘焙vs渲染:<b class='flag-5'>3D</b><b class='flag-5'>模型</b>制作<b class='flag-5'>中</b>的效率與質(zhì)量之爭

    ad193d模型不顯示?

    封裝庫導(dǎo)入3d模型不顯示,但導(dǎo)入3d模型后的封裝庫生成pcb文件時(shí)顯示3d模型,這是什么原因?qū)е?/div>
    發(fā)表于 04-24 13:41

    包含具有多種類型信息的3D模型

    三維視圖。事實(shí)上,AE可以3D BIM模型元素與時(shí)間因素聯(lián)系起來后創(chuàng)建4D模型,從而更廣泛地
    發(fā)表于 03-28 17:18

    Meta發(fā)布SceneScript視覺模型,高效構(gòu)建室內(nèi)3D模型

    Meta 表示,此模型具備創(chuàng)建室內(nèi) 3D 模型的高效與輕便,僅需幾KB內(nèi)存便能生成完整清晰的幾何圖形,同時(shí),這些形狀數(shù)據(jù)具備可解釋性,便于用戶理解和編輯。
    的頭像 發(fā)表于 03-26 11:16 ?584次閱讀

    Stability AI推出全新Stable Video 3D模型

    近日,Stability AI 推出了全新的 Stable Video 3D 模型,該模型以其獨(dú)特的功能吸引了眾多關(guān)注。此模型具備從單張圖像中生成多視圖
    的頭像 發(fā)表于 03-22 10:30 ?868次閱讀

    Stability AI推出Stable Video 3D模型,可制作多視角3D視頻

    SV3D_u是Stable Video 3D的一個(gè)版本,僅需單幅圖片即可生成運(yùn)動(dòng)軌跡視頻,無須進(jìn)行相機(jī)調(diào)整。擴(kuò)充版本的SV3D_p加入了軌道視圖的特性,使其可以根據(jù)預(yù)設(shè)的相機(jī)路徑創(chuàng)建
    的頭像 發(fā)表于 03-21 14:57 ?1042次閱讀

    晶振3D打印技術(shù)的應(yīng)用都有哪些?

    3D打印過程,需要進(jìn)行大量的數(shù)據(jù)處理,包括模型的切片、打印路徑的規(guī)劃等。
    的頭像 發(fā)表于 03-17 11:29 ?609次閱讀

    高分工作!Uni3D3D基礎(chǔ)大模型,刷新多個(gè)SOTA!

    我們主要探索了3D視覺scale up模型參數(shù)量和統(tǒng)一模型架構(gòu)的可能性。NLP / 2D v
    的頭像 發(fā)表于 01-30 15:56 ?906次閱讀
    高分工作!Uni<b class='flag-5'>3D</b>:<b class='flag-5'>3D</b>基礎(chǔ)大<b class='flag-5'>模型</b>,刷新多個(gè)SOTA!