간단한 게임에 쓰인 기능(2)

Oak_Cassia·2022년 8월 4일

나중에 정리

eCharacter
Movement
Nav mesh movement

캐릭터 이동 함수
AddMovementInput()
AddControllerPitchInput()
AddControllerYawInput()
Jump()

framerates and axes
마우스는 프레임율이 높아지면 값이 작아지지만
게임 패드는 값이 그대로이다.(deltatime을 곱해줘야한다.)

GetWorld()->GetDeltaSeconds()

카메라 스프링암
폰 제어 회전 사용

스켈레톤으로 여러 메쉬를 같은 애니메이션을 취하게 할 수 있다.

메쉬 스켈레톤 애니메이션

애니메이션 블루프린트
블렌드
블렌드 스페이스

try get pawn owner

애니메이션은 캐릭터의 메시에서 변경
애니메이션은 ABP_ShooterCharacter 애니메이션 블루프린트 보고 나중에 확인

루트 컴포넌트를 지정하는 방법에
SetRootComponent(Root) 도 있다.

HideBoneByName

스켈레톤 소켓

SpawnEmitterattach

DrawDebugCamera

GetPlayerViewPoint

object channel : 오브젝트 타입의 다른 말, 액터, 폰 같은 기본 객체를 만들 수 있다.
trace channel

UWorld::LineTraceSingleByChannel

  • GetWorld()->LineTraceSingleByChannel

UGameplayStatics::SpawnEmitterAtLocation

virtual float TakeDamage(float DamageAmount, struct FDamageEvent const& DamageEvent, class AController EventInstigator, AActor DamageCauser);

FPointDamageEvent
TakeDamage

Blueprin Pure 노드는 실행 핀이 없다.

AIController

SetFocus(PlayerPawn);
PathFollowigComponent

MoveTo()
MoveToActor

nav mesh volume

LIneofSightto

EAIFocusPriority

clearfocus
stopmovemnt

ai behavior tree
blackboard 메모리 오브 AI? (BT에서 쓰는 변수 저장)

RunBehaviorTree

GetBlackboardComponent()->SetValueAsVector
ClearValue

시퀀스 데코 추가 블랙 보드

BT 안의 Task c++로 구현

bttask 블랙보드 키가 필요하면 블랙보드 베이스 사용해 클래스 생성
생성이 안될 시 게임제목.빌드.cs에서 "GameplayTasks" 추가

EBTNodeResult::Type UBTTask_ClearBlackboardValue::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory)

USoundBase
SpawnSoundAttached
play sound at location

사운드 큐 -웨이브 플레이어- 랜덤- 모듈레이터

Spatialization
attenuation

RemoveFromViewport

프로그레스 바 진척도 바인딩
GetOwningPlayerPawn

GetConrolRotation

state machine 그리고 조건

profile
https://velog.io/@oak_cassia/A-Game-Developers-Vision

0개의 댓글