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

完善資料讓更多小伙伴認(rèn)識你,還能領(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,但如果沒有,請確保安裝它。

一旦安裝了虛幻引擎和VisualStudio或XCode,就可以啟動最新版本的Unreal和啟動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中,所有對象都被視為Actors,輸入被視為Pawn等等。由于我們正在制作自己的3D模型,因此我們需要有一個(gè)actor類。

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

導(dǎo)航到Visual Studio。 (如果您在Blueprint類中創(chuàng)建actor,它將自動打開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)。在底部但在大括號下添加以下代碼。

private:

UPROPERTY(VisibleAnywhere, Category = Materials)

class UProceduralMeshComponent* mesh;

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

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

#include “ProceduralMeshComponent.h”

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

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

現(xiàn)在,您可以想象對象中三角形的數(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)在,如果你在場景中拖動你的演員,它將編譯一個(gè)正方形!

您可以嘗試評論其他2個(gè)三角形并進(jìn)行編譯。一個(gè)廣場仍然會出現(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ī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 3D模型
    +關(guān)注

    關(guān)注

    1

    文章

    71

    瀏覽量

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

    關(guān)注

    0

    文章

    14

    瀏覽量

    4051
收藏 人收藏

    評論

    相關(guān)推薦

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

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

    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 ?375次閱讀

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

    探討這兩個(gè)過程,并分析它們3D制作流程的作用,二者之間的差異,以及效果上的區(qū)分。模型烘焙模型
    的頭像 發(fā)表于 05-12 08:27 ?292次閱讀
    烘焙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 ?472次閱讀

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

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

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

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

    Speos創(chuàng)建3D Texture的流程

    Speos 3D Texture功能提供了一種解決方案,可以繞過 CAD 系統(tǒng)限制來設(shè)計(jì)和模擬數(shù)百萬個(gè)小圖案:pattern圖案的分布類型和重復(fù)次數(shù)。
    的頭像 發(fā)表于 12-25 10:10 ?621次閱讀
    <b class='flag-5'>在</b>Speos<b class='flag-5'>中</b><b class='flag-5'>創(chuàng)建</b><b class='flag-5'>3D</b> Texture的流程

    3D人體生成模型HumanGaussian實(shí)現(xiàn)原理

    3D 生成領(lǐng)域,根據(jù)文本提示創(chuàng)建高質(zhì)量的 3D 人體外觀和幾何形狀對虛擬試穿、沉浸式遠(yuǎn)程呈現(xiàn)等應(yīng)用有深遠(yuǎn)的意義。傳統(tǒng)方法需要經(jīng)歷一系列人工制作的過程,如
    的頭像 發(fā)表于 12-20 16:37 ?1309次閱讀
    <b class='flag-5'>3D</b>人體生成<b class='flag-5'>模型</b>HumanGaussian實(shí)現(xiàn)原理

    CASAIM沙盤模型3D打印的優(yōu)勢和應(yīng)用

    隨著3D打印技術(shù)的不斷發(fā)展,沙盤模型3D打印已經(jīng)成為建筑行業(yè)的一項(xiàng)創(chuàng)新應(yīng)用。這種技術(shù)能夠?qū)⒃O(shè)計(jì)師的創(chuàng)意以實(shí)體形式呈現(xiàn),為建筑項(xiàng)目的溝通和展示提供了更加直觀和便捷的方式。本文將介紹CA
    的頭像 發(fā)表于 12-19 16:44 ?419次閱讀
    CASAIM沙盤<b class='flag-5'>模型</b><b class='flag-5'>3D</b>打印的優(yōu)勢和應(yīng)用

    阿迪達(dá)斯與 Covision Media 使用 AI 和 NVIDIA RTX 創(chuàng)建逼真的 3D 內(nèi)容

    Covision 的基于 AI 的 3D 技術(shù)可幫助企業(yè)掃描數(shù)千種產(chǎn)品,為網(wǎng)站和移動應(yīng)用創(chuàng)建逼真的 3D 圖像、視頻和 AR 體驗(yàn)。 將實(shí)體產(chǎn)品掃描成 3D
    的頭像 發(fā)表于 11-28 18:45 ?546次閱讀
    阿迪達(dá)斯與 Covision Media 使用 AI 和 NVIDIA RTX <b class='flag-5'>創(chuàng)建</b>逼真的 <b class='flag-5'>3D</b> 內(nèi)容

    PADS VX2.7 下載安裝及3D模型導(dǎo)入的注意事項(xiàng)

    :https://www.3ds.com/下載相關(guān)3D模型*.STP等格式 2.打開PCB 3D視圖; 3.選中元件,點(diǎn)擊菜單導(dǎo)入
    發(fā)表于 11-22 17:54

    HT for Web (Hightopo) 使用心得(4)- 3D 場景 Graph3dView 與 Obj 模型

    這里我們通過代碼建立一個(gè) 3D 場景并添加一個(gè) Obj 模型來介紹一下 HT for Web 3D 場景和模型加載方面的使用。
    的頭像 發(fā)表于 11-20 11:05 ?596次閱讀
    HT for Web (Hightopo) 使用心得(<b class='flag-5'>4</b>)- <b class='flag-5'>3D</b> 場景 Graph<b class='flag-5'>3</b>dView 與 Obj <b class='flag-5'>模型</b>

    88個(gè)電子元器件3D模型合集

    整合88個(gè)國外網(wǎng)站下載的電子元器件3D模型,省去逐一下載的麻煩。
    發(fā)表于 09-25 07:47