⭐ Unreal Engine
[UE] 언리얼 C++ 설계 1 - 인터페이스
[UE] 언리얼 C++ 설계 1 - 인터페이스
2024.04.05언리얼 C++ 인터페이스 클래스를 사용해 보다 안정적으로 클래스를 설계하는 기법을 학습하자. 목차 언리얼 C++ - 인터페이스 언리얼 C++ 인터페이스 인터페이스란?객체가 반드시 구현해야 할 행동을 지정하는데 활용되는 타입다형성(Polymorphism)의 구현, 의존성이 분리(Decouple)된 설계에 유용하게 활용 언리얼 엔진에서 게임 콘텐츠를 구성하는 오브젝트의 설계 예시언리얼 엔진 월드에 배치되는 모든 오브젝트.월드에 배치되는 모든 오브젝트를 액터라고 한다. 액터(Actor)는 움직이는 물체와 안 움직않는 물체를 모두 통틀은 상위 개념이다. 움직이지 오브젝트 ( Pawn )길찾기 시스템을 반드시 사용하면서 움직이는 오브젝트 ( INavAgentInterface 인터페이스를 구현한 Paw..
[UE] 언리얼 리플렉션 Unreal Reflection II
[UE] 언리얼 리플렉션 Unreal Reflection II
2024.03.21언리얼 오브젝트 리플렉션 시스템의 활용하여 언리얼 오브젝트 리플렉션 시스템을 사용해 언리얼 오브젝트를 다루는 방법의 학습하자. 인프런 이득우님의 '언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해] 강의 들으러 가기! 목차 언리얼 리플렉션 Unreal Reflection II 예제 클래스 다이어그램 어떤 학교에서 학생과 교수가 함께 수업하는 상황을 구현하고 싶다. 학교 정보는 GameInstance에서 지정 인물 클래스 Person 학생 클래스 Student 선생 클래스 Teacher 예제 코드 Person.h 더보기 #pragma once #include "CoreMinimal.h" #include "UOb..
[UE] 언리얼 리플렉션 Unreal Reflection I
[UE] 언리얼 리플렉션 Unreal Reflection I
2024.03.18언리얼 오브젝트의 특징과 리플렉션 시스템의 동작원리를 이해하자. 언리얼 오브젝트의 처리 방식을 이해하고 사용예시를 분석하자. 인프런 이득우님의 '언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해] 강의 들으러 가기! 목차 언리얼 오브젝트 리플렉션 리플렉션(Reflection)은 프로그램이 실행시간에 자기 자신을 조사하는 기능이다. UPROPERTY()를 붙이는 기준 리플렉션 프로퍼티 변수는 언리얼 엔진의 시스템의 관리(=Garbage Collector)를 받는다. 반면에, 리플렉션 프로퍼티가 아닌 것은 해당 리플렉션에 의존하는 시스템 전부에 보이지 않는다.즉, 리플렉션 되지 않은 UObject ..
[UE] 언리얼 오브젝트 시스템
[UE] 언리얼 오브젝트 시스템
2024.03.18언리얼 오브젝트의 소개와 선언방법게임 프로그래밍이 가지는 특수성과 언리얼 오브젝트의 필요성의 이해언리얼 오브젝트의 선언과 엔진 내부 컴파일 과정의 학습 인프런 이득우님의 '언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해] 강의 들으러 가기! 목차 C++ 언어 게임 프로그래밍의 특수성 사용자: 쾌적한 경험을 위해 단일 컴퓨터에서 최대 성능을 뽑아내야 한다.개발자: 게임의 규모가 커질수록 방대하고 복잡한 기능을 안정적으로 관리해야 한다. C++ 언어의 단점 C++1970년대 개발하여 오래됨객체 지향 프로그래밍의 선두 주자현재까지 지속적으로 개선해왔지만, 익혀야 할 내용이 많음하드웨어에 직접 접근하..
[UE Net] Dedicated Server 시작하기
[UE Net] Dedicated Server 시작하기
2024.03.13글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자입니다 목차 Visual Studio에서 빌드하기 1. 언리얼 엔진 소스코드 빌드하기 Build from source code 2023.11.09 - [⭐ Unreal Engine/UE Debugging Log] - [UE5] 언리얼 엔진5.3 빌드하기 (UE build from source code) [UE5] 언리얼 엔진5.3 빌드하기 (UE build from source code)현업에서는 엔진을 순정 상태로 사용하지 않는다. 엔진..
[UE] 문자타입, 문자열 FString, FText, FString
[UE] 문자타입, 문자열 FString, FText, FString
2024.03.13언리얼 C++의 기본 타입과 문자열 다루는 방법 소개언리얼 환경에서 알아두어야 할 기본 타입과 고려할 점캐릭터 인코딩 시스템에 대한 이해언리얼 C++이 제공하는 다양한 문자열 처리 방법과 내부 구성의 이해 인프런 이득우님의 '언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해] 강의 들으러 가기! 목차 언리얼 C++ 기본 타입 언리얼은 C++의 기본 타입 1970년대에 개발된 C++언어는 기기들마다 C++ 언어를 구현하는 방법이 달라서 C++ 주요 함수가 특정 플랫폼에서 다르게 작동하는 플랫폼 파편화 (Platform Fragmentation) 문제가 발생했다. 게임 제작에서는데이터 정보가 명확해야 한..
[UE GAS] 캐릭터의 광역 스킬 구현
[UE GAS] 캐릭터의 광역 스킬 구현
2024.03.10캐릭터에 다양한 기능을 가진 광역 공격 스킬을 부여하기 플레이어 캐릭터에 새로운 스킬 GA를 부여하고, 범위 공격을 추가하도록 설계를 확장하기 새로운 어트리뷰트 세트를 추가해 확장하기 GA에 사용 비용과 쿨다운의 제약 사항 추가하기 게임플레이 이펙트 실행 계산 클래스를 사용해 거리에 따른 광역 데미지 감소 적용하기 인프런 이득우님의 '언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템] 강의 들으러 가기! 목차 기획 플레이어 캐릭터에 신규 광역 스킬 부여 무기를획득하면 마우스 우클릭으로 스킬을 사용할 수 있는 기능을 추가 스킬 반경과 데미지 계산은 새로운 어트리뷰트 값을 사용 ( SkillRange,..
[UE GAS] 아이템 상자 구현
[UE GAS] 아이템 상자 구현
2024.03.10장식이펙트와 아이템 상자의 구현 장식 이펙트를 담당하는 게임플레이 큐의 활용방법의 학습 기간형 게임플레이 이펙트를 활용한 다양한 아이템 상자의 구현 GAS의다양한 API를 활용한 무기에 관련된 게임플레이 이벤트와 어트리뷰트의 설정 목차 기획 게임플레이 이펙트를 활용한 아이템과 무기 기획 데미지, 회복상자의 구현 체력 레젠(Regeneration) 상자, DOT(Damage over time) 상자의 구현 캐릭터에 무기 추가 무기로 인한 공격 범위 증가: 75 무기로 인한 공격력 증가: 100 핵심 컴포넌트 Gameplay Cue를 활용한 캐릭터 피격 이펙트 구현 게임플레이 큐 Gameplay Cue Gameplay Cue 시각 이펙트나 사운드와 같은 게임 로직과 무관한 시각적, 청각적 기능을 담당함 Cl..
[UE GAS] 어트리뷰트와 UI 연동 Integration with Attribute and UI
[UE GAS] 어트리뷰트와 UI 연동 Integration with Attribute and UI
2024.03.09어트리뷰트와 연동되는 체력바 구현과 기간형 게임플레이 이펙트의 활용 GAS와 연동하는 UI 시스템 구현 방법의 학습 액터 컴포넌트에서 GAS에서 필요한 이벤트만 받아 처리하는 방법의 학습 일정 기간동안 유지되는 기간형 게임플레이 이펙트의 다양한 활용 인프런 이득우님의 '언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템] 강의 들으러 가기! 목차 기획 신규 기능 기획 현재 체력 퍼센티지를 표시해주는 체력바 UI의 추가 체력이 떨어지면 죽는 기능의 구현 발동 기간동안 들어오면 데미지를 모두 무효화하는 무적 버프의 구현 공격 명중 시 공격 반경이 넓어지는, 최대 4단계까지 중첩되는 버프의 구현 핵심 컴포..
[UE GAS] 게임플레이 이펙트의 활용 Applying Gameplay Effect
[UE GAS] 게임플레이 이펙트의 활용 Applying Gameplay Effect
2024.03.08게임플레이 이펙트를 활용한 대미지 전달 게임플레이 이펙트의 다양한 활용 방법에 대한 이해 데이터 태그의 설정과 활용 방법의 학습 메타 어트리뷰트의 설정과 활용 방법의 학습 레벨에 따른 커브 데이터의 설정과 활용 방법의 학습 인프런 이득우님의 '언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템] 강의 들으러 가기! 목차 게임플레이 이펙트를 활용한 대미지 전달 콤보 공격 히트시 뒤로 갈수록 전달하는 데미지가 증가하도록 설정 레벨에 따라 스폰된 캐릭터가 다른 체력값을 가지도록 설정 핵심 컴포넌트 & 게임플레이 어빌리티 시스템의 기본 흐름 게임플레이 이펙트 Gameplay Effect (GE) Gamepl..
[UE GAS] 캐릭터 어트리뷰트 설정
[UE GAS] 캐릭터 어트리뷰트 설정
2024.03.07다른 GAS 액터의 상황을 확인할 수 있는 디버그 시스템 설정 방법의 학습 기본 캐릭터 어트리뷰트 설정 방법의 학습 공격 대상의 어트리뷰트 값을 변경하는 방법의 학습 특정 어트리뷰트 변경 시 사전, 사후 점검하는 방법의 학습 인프런 이득우님의 '언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템] 강의 들으러 가기! 목차 캐릭터 어트리뷰트 설정 방향 캐릭터 어트리뷰트 설정 기획 캐릭터에 설정할 어트리뷰트 목록 기본 어트리뷰트 체력 Health 일반 공격 길이 AttackRange 일반 공격 변경 AttackRadius 일반 공격력 AttackRate 최대값 어트리뷰트 최대 체력 MaxHealth 최대..
[UE] 언리얼 C++ 코딩 표준
[UE] 언리얼 C++ 코딩 표준
2024.03.06public에서 private로 이어지는 클래스 체계를 준수명명 규칙파스칼 케이싱(Pascal Casing)을 사용한다.소문자를 가급적 사용하지 않고 공백 및 언더스코어(_)가 없음모든 클래스와구조체에는고유한 접두사가 있음코드의 명확성 파라미터에 가급적 In과 Out 접두사를 사용해 명시const 지시자의 적극적인 활용레퍼런스를 통한 복사 방지auto 키워드는 가급적 자제Find In Files의 활용 (int* a (O), int *a(X))헤더 파일및 #include 구문은 의존성을 최소화시켜주의 깊게 다룰 것 언리얼 C++ 코딩 표준 인프런 이득우님의 '언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의를 참고하였습니다. 😎 [이득우의 언리얼 프로그래밍 Part1 - 언리..