[ Unreal Engine 5 / #3 특강 : 언리얼 ]

SeungWoo·2024년 8월 30일
0
post-thumbnail

Unreal Engine

목차

  • Unreal Engine을 공부하는 자세
    • Unreal Engine 세계관에 빠져라
    • Keyword 중심으로 외워라
    • 툴을 잘 알아야 한다
    • 말을 많이 해야 한다 ( 오지랖을 부려라 )
    • 비교 차이 점보단 해당 기능이 주는 장점을 이해하고 써먹어라 ( 매크로 vs 펑션 )
    • 마찬가지로, 원리와 원칙도 중요하지만 기능이 주는 장점과 응용하고 활용하라

How to study UE 5

  • Unreal Engine 세계관에 빠져라

  • Level
    • 언리얼 엔진의 하나의 월드
    • .umap 파일로 저장
    • Map이라고 불림
  • Actor
    • 공간 ( Level ) 안에서 움직이거나 나오게하는 껍데기
    • 레벨 안에서 존재하는 모든 객체를 의미
  • Component
    • Actor의 신체를 이루는 부품
    • Static Mesh Component : 기능적 역할만 하는 능력을 부여하는 컴포넌트
      • 걷는 기능, 뛰는 기능, Root 컴포넌트
    • Physics Component : 충돌 처리도 하고 시각적 물리적으로 기능을 하는 컴포넌트
SetActorLocation : 엑터의 위치를 움직인다 ( 월드 기준 )
SetRelativeLocation : 컴포넌트의 위치를 정립할때 ( 컴포넌트가 달린 Actor 기준 ) 
SetWorldLocation : 이 컴포넌트가 존재하는 세계를 기준으로 

  • Keyword 중심으로 외워라
  • 툴을 잘 알아야 한다
  • 말을 많이 해야한다 ( 오지랖을 부려라 )

  • 비교 차이 점보단 해당 기능이 주는 장점을 이해하고 써먹어라! ( 매크로 vs 펀션 )
    https://dev.epicgames.com/documentation/ko-kr/unreal-engine/blueprint-variables-in-unreal-engine

  • Name, String, Text

    • Name : 가볍다 -> 그렇기 때문에 게임내에 요소를 식별하는데 사용하면서 검색할때 쉽다
    • Text : 사용자에게 표시할 텍스트입니다. 현지화하고자 하는 텍스트의 경우 이 타입을 사용합니다.
    • String : 위에 두가지 이외엔 모두 String를 사용 -> 문자열이 제공하는 모든 기능을 문자열로 넣어 주었다
  • Vector, Rotator, Transform

    • 구조체
      • 쪼갤 수 있다 여러 데이터 타입을 모아둔 것이기에 해당 데이터 타입으로 접근이 가능하다
    • Vector : 3D좌표에 유용하다
    • Rotator : 회전을 정의하는 숫자 집합
    • Transform : 회전, 스케일을 결합한 데이터 세트
  • Object : 기본이 되는 단위 정말 다양한 기능을 가졌다 언리얼에서 관리를 받는 녀석 웬만하면 UObject를 상속받아 사용한다

  • class : 추상적인 개념 덩어리

  • Macro,Function

    • Macro : 실행또는 데이터핀을 몇개든 있을 수 있다
      • 흐름을 분활할때 사용한다
      • for, branch
    • Delegate : 해당 이벤트 바인딩 되어있을때, 이벤트 행위가 발생 했을때 같이 호출된다
    • Function
  • Asset

    • Content 브라우저 밑에 있는 파일들
      • 언리얼 엔진에서 사용해서 쓸 수 있도록 에셋 형태로 바꾼다

  • 마찬가지로, 원리와 원칙도 중요하지만 기능이 주는 장점과 응용하고 활용하라

Unreal Engine C++/ Blueprint 비교

  • Blueprint
    • 장점
      • 빠른 프로토 타이핑과 개발 소고
      • 코딩 경험이 적은 사람들도 쉽게 접근 가능
      • 실시간 디버깅과 시각적 스크립팅 가능
    • 한계
      • C++에 비해 성능이 떨어질 수 있음
      • 대규모 프로젝트에서 관리가 어려울 수 있음
  • C++
    • 장점
      • 더 나은 성능과 최적화 가능성
      • 더 큰 유연성과 제어력
      • 대규모 프로젝트와 팀 협업에 적합
    • 한계
      • 가파른 학습 곡선
      • 개발 속도가 상대적으로 느림
  • 선택시 고려상항
    • 프로젝트의 규모와 복잡성
    • 팀의 기술 수준
    • 성능 요구 사항
    • 개발 속도의 중요성
    • 크로스 플랫폼 목표
  • 하이브리드 접근법
    • Blueprint와 C++를 함께 사용하여 각각의 장점을 활용할 수 있음
  • 전환 고려사항
    • Blueprint에서 C++로의 전환은 가능하지만 신중히 고려해야 함
    • 전환 과정은 복잡하고 시간이 많이 소용될 수 있음
    • 결론적으로, 프로젝트의 특성과 팀의 역량에 따라 블루프린트, C++ 또는 두가지의 조합을 선택하는 것이 중요합니다

언리얼 네비메쉬

  • 언리얼 엔진 내비게이션 시스템 ( UE Navigation System )
    • 경로 찾기( PathFinding )

https://velog.io/@15ywt/UNSEEN프로젝트언리얼-수정된-A-알고리즘

Behavior Tree Node

  • AI 행동 트리 ( Behavior Tree )
    • 키워드 : 행동 트리, 서비스 노드, 테스크 노드

https://dev.epicgames.com/documentation/ko-kr/unreal-engine/behavior-tree-node-reference-in-unreal-engine

  • 컴포짓 노드 ( Composite Nodes )
    분기의 루트와 분기가 실행되는 방식의 기본 규칙을 정의 한다 [ 언리어 공식 문서 ]
    • Behavior Tree에 루트( root ) 노드에는 컴포짓 노드만 Attach 할 수있다 ( 시작점 )
    • Selector Node
      - 왼쪽에서 오른쪽 순서로 자손을 실행

Line Trace

profile
This is my study archive

0개의 댓글