UE4學習總結

2021-09-27 08:43:10 字數 2436 閱讀 2206

標頭檔案

#include "components\staticmeshcomponent.h"   任意類

#include"camera/cameracomponent.h"攝像機

#include "components/inputcomponent.h"按鈕控制獲取

#include "gameframework\springarmcomponent.h"角色控制

#include "uobject/constructorhelpers.h"//幫助類,建立東西

//宣告

busecontrollerrotationyaw = true;//開啟controller控制

mystaticmesh = createdefaultsubobject(text("mystaticmesh"));

rootcomponent = mystaticmesh;//讓小球不能穿過牆

mystaticmesh->setcollisionprofilename(text("pawn"));//設定預設名稱

/*   rootcomponent = createdefaultsubobject(text("rootcomponent"));//場景

mystaticmesh = createdefaultsubobject(text("mystaticmesh"));

mystaticmesh->setupattachment(getstaticmeshcomponent());*、

myspringarm = createdefaultsubobject(text("myspringarm"));

myspringarm->setupattachment(mystaticmesh);

myspringarm->relativerotation = frotator(-45.0f, 0.0f, 0.0f);//角度

myspringarm->targetarmlength = 400.0f;//長度

myspringarm->benablecameralag = true;//是否顯示

myspringarm->cameralagspeed = 3.0f;//攝像機速度

static constructorhelpers::fobjectfinderstaticmeshasset(text("staticmesh'/engine/basicshapes/sphere.sphere'"));//自動生成該類

static constructorhelpers::fobjectfindermaterialasset(text("material'/game/startercontent/materials/m_metal_burnished_steel.m_metal_burnished_steel'"));

if (staticmeshasset.succeeded()&& materialasset.succeeded())//判斷是否成功

mycamera = createdefaultsubobject(text("mycamera"));

mycamera->setupattachment(getspringarmcomponent());

mycamera->setrelativelocation(fvector(-300.0f, 0.0f, 300.0f));

mycamera->setrelativerotation(frotator(-45.0f, 0.0f, 0.0f));

autopossessplayer = eautoreceiveinput::player0;//設定預設玩家

//x,y,z row pitch yaw

frotator newspringarmrotation = myspringarm->getcomponentrotation();//賦值當前旋轉

newspringarmrotation.pitch = fmath::clamp(newspringarmrotation.pitch += mouseinpuit.y, -80.0f, 0.0f);//設定角度

myspringarm->setworldrotation(newspringarmrotation);//設定成新的角度

addcontrolleryawinput(mouseinpuit.x);//設定成x;

playerinputcomponent->bindaxis(text("moveforward"), this, &amypawn::moveforward);

playerinputcomponent->bindaxis(text("moveright"), this, &amypawn::moveright);//按鍵引入

forceinline ustaticmeshcomponent* getstaticmeshcomponent()

forceinline uspringarmcomponent* getspringarmcomponent() 自己建立返回函式

UE4學習平台

自虛幻開源以來,ue4在中國都沒有存粹技術交流的社群 滿眼望去各種令人眼花繚亂的廣告以及套路深厚的商業模式 為了營造國內良好的技術氛圍 我們打算認真的把這個論壇做起來 改善中國 ue4的交流方式,互相解答各自的疑惑 精力有限,已經關閉了 精力有限,已經關閉了 精力有限,已經關閉了 精力有限,已經關閉...

ue4玻璃材質 UE4 材質

本文中,我們將首先討論基於物理的渲染,什麼是材質域,什麼是材質,什麼是材質例項,什麼是主材質,我們將討論材質的一些建議和禁忌。最後,我們將了解一些材質概念,你可以將其用於各類專案中的材質。pbr 表示基於物理的渲染,基於物理的渲染意味著我們根據現實模擬光線,而不是根據主觀想法模擬光線。光線的最終效果...

UE4 碰撞條件總結

1.overlap 檢測到的條件 首先 兩個物體都要選中 generate overlap events 其次 最少有乙個物體的碰撞設定為overlap 另乙個物體需要為overlap 或者 block 都可以觸發 不滿足上面兩個條件是無法觸發overlap事件的 2.hit條件設定 首先 需要響應...