본문으로 바로가기

나만의 연습장

현재위치 :: HOME BLOG CATEGORY SEARCH ARCHIVE TAGS MEDIA LOCATION GUESTBOOK

네비게이션

  • 홈
  • 태그
  • 방명록
관리자
  • 블로그 이미지
    엄준식사생팬

    엄준식이 좋아요.

    링크추가
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃

Unreal Build Tool (UBT)

언리얼 엔진4 부터는 개발 환경이 맥(Mac)과 윈도우(Window) 두가지 플랫폼을 지원하도록 설계되어 있습니다. 추상적인 소스 코드 구조를 만들고 이를 기반으로 플랫폼에 맞게 프로젝트를 재생성하는 기능이 필요하게 되었는데, 이를 위해서 제작한 프로그램이 언리얼 빌드 툴(Unreal Build Tool) 입니다. 언리얼 빌드 툴이 실행되면 일단 프로젝트의 Source 폴더를 찾습니다. Source 폴더 아래에 빌드 할 대상 정보를 지정한 Target.cs 파일을 조사하면서 하위에 모듈이 있는지 검사합니다. 해당 폴더의 조서가 끝나면 Intermediate 폴더 안의 ProjectFiles폴더에 자신이 조사한 언리얼 소스 구조를 정리해 프로젝트 파일을 생성함과 동시에 언리얼 엔진 설치 폴더로부터 소스 코..

UnrealEngine/Impl 2023. 9. 16. 18:35

언리얼 에디터를 빌드하기

여러 회사에서 언리얼 엔진을 사용해 게임을 개발하고 서비스한다. 그래서, 언리얼 엔진 게임을 디버깅하거나 성능 분석을 해야하는 경우 언리얼 엔진 개발 환경을 구축해야 하는 상황이 생긴다. 특히 언리얼 인사이트나 네트워크 프로파일러같은 툴을 사용하기 위해서는 언리얼 엔진 소스를 다운로드해 전체 빌드해야한다. 이 문서는 언리얼 엔진 에디터를 빌드하는 방법을 소개한다. 개발 환경 세팅은 해당 문서를 참고 부탁드린다. https://docs.unrealengine.com/5.3/en-US/ Unreal Engine 5.3 Documentation Complete resources for learning to use Unreal Engine 5 docs.unrealengine.com 언리얼 엔진 버전별 호환 가능..

UnrealEngine/Impl 2023. 9. 16. 13:38

삼각함수

직각 삼각형은 밑변, 빗변, 높이 세 가지 요소로 이루어져 있다. 이러한 직각 삼각형의 세 개의 변에서 두 개의 변을 골라 비의 값을 정한다고 하면 빗변/높이, 빗변/밑변 등 여러개의 비를 구할 수 있다. 이 중 주로 사용하는 세 가지의 삼각비는 다음과 같다. 이 삼각비를 함수의 개념으로 확장해서 해당 비의 각을 정의역으로 두고 비의 값을 취했을 때 이 값은 항상 [-1, 1] 사이에 대응된다. 정의역의 원소 x 와 공역의 원소 y 에 대한 대응 관계를 y = sin(x) 같은 함수로 나타낼 수 있게 된다. 데카르트 평면의 좌표계에서 만들어지는 평면의 모든 각(360도)을 일반화 시킨 것을 삼각함수라고 한다. 삼각함수를 사용할 때는 직각삼각형에 국한되어서 사용하기 보다는, 평면을 모두 포함하는 단위원을 ..

Graphics/이론 2023. 7. 20. 15:33

[Unreal Engine 5] 메모리 관리

C++은 저수준으로 메모리 주소에 직접 접근하는 포인터를 사용해 오브젝트를 관리한다. 그러다보니 프로그래머가 직접 할당 (new)과 해지 (delete) 짝 맞추기를 해야한다. 이를 잘 지키지 못하는 경우 다양한 문제가 발생할 수 있다. 잘못된 포인터를 사용하는 문제에는 다음과 같은것이 있다. 메모리 누수 ( Leak ) : new를 했는데, delete 짝을 맞추지 못함. 힙에 메모리가 그대로 남아있음 허상 ( Dangling ) 포인터 : (다른곳에서) 이미 해제해 무효화된 오브젝트의 주소를 가리키는 포인터 와일드 ( Wild ) 포인터 : 값이 초기화되지 않아 엉뚱한 주소를 가리키는 포인터 C++ 이후에 나온 언어 Java / C# 은 이런 고질적인 문제를 해결하기 위해 포인터를 버리고 대신 가비지..

UnrealEngine/Impl 2023. 6. 29. 12:19

[Unreal Engine 5] 기본타입과 문자열

왜 언리얼은 기본 타입을 따로 지정하는가? C++ 최신 규약에서 int는 최소 32bit를 보장하도록 규정되어있음 특정 플랫폼에서는 64bit로 해석될 수 있음 따라서 데이터를 저장할 때 int 타입의 크기를 확신할 수 없음 -> 게임 제작의 경우에는 단일 컴퓨터에서 퍼포먼스를 최대치로 뽑아내는것이 목표다. 그렇다면 캐시히트율 같은것들을 고려하여 제작해야하는데, 데이터 정보가 캐시 크기에 맞춰서 잘 정렬되어있어야 한다. 애매모호한 크기를 가진 것은 게임 제작에 영향을 미칠 수 있음 애매모호한 크기를 가진 데이터 타입은 게임 개발시 성능을 저하시키고 문제를 일으킬 수 있음 C#의 경우 int 타입이 있지만 4바이트인 int32로 명확히 정의되어 있음 언리얼 엔진에서는 다음과 같은 기본 타입을 사용한다. b..

UnrealEngine/Impl 2023. 6. 22. 12:08

[Unreal Engine 5] 향상된 입력 (Enhanced Input)

Enhanced Input은 이전의 'Action And Axis' 매핑과 완전히 역호환 됩니다. Unreal Engine5에서 기존의 Input은 Deprecated 조치되었으며, Enhanced Input을 사용하기를 권장합니다. 입력시스템의 동작 방식 플레이어의 입력은 컨트롤러를 통해 폰으로 전달됨 입력을 컨트롤러가 처리할 수도, 폰이 처리할 수도 있는데, 일반적으로는 폰이 처리하도록 설정 다양한 사물에 빙의하는 게임의 경우 폰이 유리 입력 매핑 컨텍스트 : 입력 매핑 컨텍스트를 이용하여, 런타임에 각 설정에 맞는 입력장치를 설정할 수 있습니다. (예 : 게임패드용 입력 매핑 컨텍스트, 키보드용 입력 매핑 컨텍스트) 입력값 변조(Modifier) : 우리가 AD / WS 입력값을 받아낼 때 이 값을..

UnrealEngine/기능 2023. 6. 4. 14:47

픽셀화 ( Rasterization )

무게중심좌표 이전 세 점의 아핀결합에서 사용된 세 스칼라 (s, t, 1 - s - t)는 모두 실수이므로, 이들을 묶어서 하나의 3차원 벡터를 생성할 수 있다. 이렇게 아핀 결합의 스칼라를 묶어 만든 좌표를 무게중심좌표 ( Barycentric Coordinate ) 라고한다. 무게중심좌표는 삼각형에 관련된 정보를 담고 있기에, 삼각형에 관련된 기능을 구현할 때 유용하게 활용된다 .세 점의 아핀 결합이 삼각형이 되려면 모든 스칼라의 값이 [0, 1] 범위 내에 있어야 했다. 무게중심좌표를 구성하는 스칼라 값이 하나라도 [0, 1] 범위를 벗어난다면 아핀 결합으로 생성된 점은 삼각형 외부에 있다고 판단할 수 있다. 이러한 성질을 활용하면 주어진 점이 삼각형 영역의 내부에 있는지 외부에 있는지 판단할 수 ..

Graphics/이론 2022. 12. 28. 20:56

아핀 결합 ( Affine Combination )

아핀 공간 ( Affine Space ) 기존의 벡터 공간은 이동하는 방향과 힘만 알 수 있었다. 즉, 벡터가 어디 위치에 있든 이동하는 방햑과 힘만 같으면 이 벡터들은 다 동일하다고 결정한다. 이 이동하는 방향과 힘에 '위치'라는 정보를 추가한 것이 아핀 공간이다. 아핀 공간에서의 위치 정보는 '점' 이라고 나타낸다. 아핀 공간은 점과 벡터를 구별하기 위해 마지막 요소에 1, 0 으로 구별을 하는데 이는 동차 공간에서 가져온 개념이다. 즉. 아핀 공간은 동차 공간의 완벽한 서브셋이다. 좌표 (x, y)에 위치하는 점 P는 다음과 같이 나타낸다. $$ P = (x, y, 1) $$ 원점에서 좌표 (a, b)를 방향으로 가지는 벡터 V는 다음과 같이 나타낸다. $$ V = (a, b, 0) $$ 이를 조금..

Graphics/이론 2022. 12. 21. 17:10
  • 이전
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ···
  • 17
  • 다음

사이드바

NOTICE

  • 전체 보기
MORE+

CATEGORY

  • 분류 전체보기 (129)
    • 알고리즘 (13)
      • 정렬 (1)
      • 동적계획법 (9)
      • 완전탐색 (2)
    • C++ (63)
      • Modern (40)
      • Before (2)
      • STL (11)
      • 여담 (8)
      • WinApi (1)
    • Graphics (17)
      • 이론 (8)
      • DirectX (3)
      • Vulkan (6)
    • Computer Science (0)
    • UnrealEngine (32)
      • 기능 (13)
      • Impl (14)
      • Issue (1)
      • Editor (4)
    • Unity3D (4)
      • 기능 (4)

RECENTLY

  • 최근 글
  • 최근 댓글

최근 글

최근댓글

Trackback

TAG

  • UnrealEngine
  • unity3D
  • stl
  • Modern
  • vulkan
  • 언리얼엔진5
  • UnrealEngine5
  • c++20
  • UnrealEngineIssue
  • UnrealEditor
  • Firebase
  • 언리얼엔진4
  • c++
  • Before
  • 여담
MORE+

ARCHIVE

CALENDAR

«   2025/09   »
일 월 화 수 목 금 토
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

LINK

VISITOR

오늘
어제
전체
  • 홈으로
  • 방명록
  • 로그인
  • 로그아웃
  • 맨위로
SKIN BY COPYCATZ COPYRIGHT 나만의 연습장, ALL RIGHT RESERVED.
나만의 연습장
블로그 이미지 엄준식사생팬 님의 블로그
MENU
  • 홈
  • 태그
  • 방명록
CATEGORY
  • 분류 전체보기 (129)
    • 알고리즘 (13)
      • 정렬 (1)
      • 동적계획법 (9)
      • 완전탐색 (2)
    • C++ (63)
      • Modern (40)
      • Before (2)
      • STL (11)
      • 여담 (8)
      • WinApi (1)
    • Graphics (17)
      • 이론 (8)
      • DirectX (3)
      • Vulkan (6)
    • Computer Science (0)
    • UnrealEngine (32)
      • 기능 (13)
      • Impl (14)
      • Issue (1)
      • Editor (4)
    • Unity3D (4)
      • 기능 (4)
VISITOR 오늘 / 전체
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃
  • 취소

검색

티스토리툴바