VanQussong
'Unreal/Inflearn' 카테고리의 글 목록

Unreal/Inflearn

Unreal/Inflearn

Part1.10 언리얼 컨테이너 라이브러리 Ⅰ - Set

[ 🌱TSet의 구조와 활용 ]set 과 TSet 의 활용 방법은 내부적으로 다르게 동작하기에 활용방법도 다르다. (unordered_set  과 유사하게 동작) 📍set 특징 :이진 트리로 구성되어 있가에 기본적으로 정렬을 지원함메모리 구성이 효율적이지 않다element 가 삭제될 때 균형 유지를 위해 재구축이 일어날 수 있음모든 자료를 순회하는데 적합하지 않음 📍TSet 특징 :해시테이블 형태로 키 데이터가 구축되어 있어 빠른 검색이 가능함동적 배열(vector)의 형태로 데이터가 모여있음자료 순회가 빠름element 를 삭제해도 재구축이 일어나지 않음동적 할당으로 인해 자료구조 내에 비어있는 데이터가 존재할 수 있음중복 없는 데이터 집합을 구축하는데 유용하게 사용할 수 있다. 📍TSet의 내..

Unreal/Inflearn

Part1.10 언리얼 컨테이너 라이브러리 Ⅰ - Array

[ 🌱 Unreal Container Library (UCL) ] 📍UCL 이란? :UE이 자체 제작해 제공하는 자료구조 라이브러리 Unreal C++은 다양한 자료구조 라이브러리를 직접 만들어 제공하고 있다. UCL은 Unreal Objet 를 안정적으로 자원하며 다수의 오브젝트 처리에 유용하게 사용된다. 📍STL 과 UCL 의 차이점 :STL은 범용적으로 설계되어 있기에 호환성이 높다.하지만, 많은 기능이 엮여 있기에 컴파일 시간이 오래 걸린다.UCL은 UE에 특화되어 있기에 Unreal Object를 안정적으로 지원하며 가볍다.이러한 이유로 STL 보다 UCL이 게임 제작에 적합하며 대체하여 사용해야한다. 📍STL 과 UCL 비교 :두 라이브러리의 용도는 유사하지만, 내부적으로 다르게 구현되..

Unreal/Inflearn

Part1.9 언리얼 C++ 설계 Ⅲ - 델리게이트(Delegate)⭕

강의 목표 : 모던 객체지향 설계에서 느슨한 결합의 장점 이해하기느슨한 결합을 편리하게 구현하도록 도와주는 델리게이트 이해하기발행/구독 디자인 패턴 이해하고 구현해보기강의 내용 :언리얼 델리게이트를 사용해 클래스 간의 느슨한 결합을 구현느슨한 결합이 가지는 장점 : 시스템 변경 사항에 대해 손쉽게 대처할 수 있음느슨한 결합으로 구현된 발행/구독 모델의 장점 언리얼 C++ 델리게이트의 선언 방법과 활용 [ ✔️강한 결합과 느슨한 결합 ]강한 결합 (Tight Coupling) : 클래스들이 서로 의존성을 가지는 경우를 의미함느슨한 결합 (Loose Coupling) : 실물에 의존하지 말고 추상적 설계에 의존하라 (DIP 원칙)ex)Person은 카드를 소유하고 카드를 통해서 출입한다.왼쪽의 경우 Pers..

Unreal/Inflearn

Part1.8 언리얼 C++ 설계 Ⅱ - 컴포지션⭕

강의 목표 : 언리얼 C++ 만의 컴포지션 기법을 사용해 복잡한 언리얼 오브젝트를 효과적으로 생성하는 방법 학습 "컴포지션 기법"을 사용해 오브젝트의 포함 관계를 설계하는 방법 학습 "확장 열거형 타입"의 선언과 활용 방법의 학습 강의 내용 : 컴포지션을 구현하는 독특한 패턴에 대해 학습 클래스 기본 객체를 생성하는 생성자 코드를 사용해 복잡한 언리얼 오브젝트를 생성 확장 열거형을 사용해 다양한 메타 정보를 넣고 활용할 수 있다. 컴포지션 기법은 게임의 복잡한 객체를 설계하고 생성할 때 유용하게 사용된다. [ ✔️컴포지션 Composition ] 📍컴포지션? : 객체 지향의 설계는 크게 "상속"과 "컴포지션"으로 요약할 수 있다. 상속은 성질이 같은 부모-자식 클래스의 관계를 의미하는 Is-A 관계 컴포..

Unreal/Inflearn

Part1.7 언리얼 C++ 설계 Ⅰ - 인터페이스⭕

강의 목표 : 언리얼 C+ 인터페이스 클래스를 사용해 보다 안정적으로 클래스를 설계하는 기법의 학습 강의 내용 : 클래스가 반드시 구현해야 하는 기능을 지정하는데 사용되는 인터페이스 언리얼 C++ 인터페이스는 두 개의 클래스를 생성한다. 언리얼 C++ 인터페이스는 추상 타입으로 강제되지 않고, 내부에 기본 함수를 구현할 수 있다. [ ✔️인터페이스 ] 📍인터페이스란? : 모던 객체지향 설계에 사용되는 타입 객체를 설계한 클래스가 반드시 구현해야 할 행동을 지정하는데 활용된다. "다형성(Polymorphism)" 의 구현, 의존성이 "분리(Decouple)" 된 설계에 유용하게 활용 C++은 기본적으로 다중상속을 지원하지만, 언리얼 C++의 인터페이스를 사용해 가급적 축소된 다중상속의 형태로 구현하는 것이..