본문 바로가기

언리얼36

[언리얼5] CPP 프로젝트에서 자주 사용되는 컴포넌트 정리 언리얼5엔진과 CPP언어를 사용하여 프로젝트를 진행하며 자주 사용하였던 컴포넌트들에대한 정리 입니다.자주 사용되는 컴포넌트1 UActorComponent 필요한 헤더: #include "Components/ActorComponent.h" 설명: 모든 컴포넌트의 기본 클래스입니다. 다른 모든 컴포넌트는 이 클래스를 상속받아 확장됩니다.2 USceneComponent 필요한 헤더: #include "Components/SceneComponent.h" 설명: 트랜스폼 정보(위치, 회전, 스케일)를 가지는 모든 컴포넌트의 기본 클래스입니다.3 UPrimitiveComponent 필요한 헤더: #include "Components/PrimitiveComponent.h" 설명: 렌더링 및 물리 시뮬레이션이 가능한 .. 2024. 6. 10.
[언리얼5] 리플렉션 시스템에 사용되는 매크로 정리 언리얼 엔진의 리플렉션 시스템에서 사용되는 주요 매크로 클래스(Class) 매크로UCLASS() / 매크로는 클래스를 언리얼 객체 시스템에 등록 합니다.MyActor.h#pragma once#include "CoreMinimal.h"#include "GameFramework/Actor.h"#include "MyActor.generated.h"UCLASS()class MYPROJECT_API AMyActor : public AActor{ GENERATED_BODY()public: AMyActor();}; 구조체(Struct) 매크로USTRUCT() / 매크로는 구조체를 언리얼 객체 시스템에 등록합니다.MyStruct.h#pragma once#include "CoreMinimal.h"#includ.. 2024. 6. 6.
[언리얼5] 언리얼 CPP 연산자 오버로딩 언리얼 CPP에서 연산자 오버로딩을 활용하면 클래스를 더 직관적으로 사용 할 수 있습니다.연산자 오버로딩은 클래스나 구조체에서 특정 연산자를 정의하여 객체 간의 연산이 가능합니다.기본 연산자 오버로딩의 종류대입 연산자 (=)산술 연산자 (+, -, *, /, %)비교 연산자 (==, !=, , =)논리 연산자 (&&, ||, !)비트 연산자 (&, |, ^, ~, >)증감 연산자 (++, --)배열 인덱스 연산자 ([])함수 호출 연산자 (())포인터 연산자 (*, ->)사용 예시1. 대입 연산자 (=) 대입 연산자는 객체를 다른 객체에 복사할 때 사용됩니다.class MyClass {public: int Value; MyClass& operator=(const MyClass& Other) {.. 2024. 6. 5.
[언리얼5] .generated.h 에 대하여 #include "classname.generated.h" 란?언리얼 엔진에서 사용되는 코드 생성 메커니즘과 관련이 있는 헤더입니다.Unreal Header Tool(UHT)이라는 도구를 사용하여 코드 생성과 관련된 작업을 처리하는데,이 도구를 통하여 클래스, 구조체, 열거형 등의 메ㅏ데이터를 처리하며 자동으로 코드를 생성합니다.여기서 .generated.h 파일은 이러한 자동 생성에 사용되는 코드를 포함한느 헤더 입니다. 주요 역할1. 리플렉션(reflection) 시스템의 지원언리얼 엔진의 리플렉션 시스템은 런타임에 클래스와 데이터 멤버에 대한 메타데이터에 접근할 수 있도록 합니다.블루프린트(BP)스크립팅, 네트워킹, 시리얼라이제이션 등의 다양한 시스템에서 사용됩니다. 2. UCLASS / USTRU.. 2024. 6. 4.
[언리얼5] 체인만들기(동적 물리 적용) 런타임중 물리가 적용된 체인 만들기위처럼 런타임중 중력과 충돌 작용이 적용된 체인을 만들어보고 내용을 정리 합니다. C++을 사용하지않고 단순히 언리얼엔진 에디터만으로 작업이 가능합니다. 1. 체인에 사용할 모델(Static Mesh) 구하기체인의 부품이될 모델은 손쉽게 퀵셀브리지에서 다운로드 하도록 합니다. 퀵셀 브리지는 빠르게추가하기 아이콘을 통하여 접속이 가능합니다. 이때 에픽게임즈 아이디로 로그인이 필요합니다. 이후 Chain을 검색하여 CHAIN LINK 모델을 사용하였습니다. 퀵셀브리지에는 모델과 다양한 머티리얼도 무료로 사용이 가능하니 머티리얼도 다운받아 사용해 보도록 합니다. 2. 콜리전 추가다운로드한 모델에 물리적용을 하기위한 콜리전을 컨벡스 콜리전을 통하여 생성해 주도록합니다. 3. 액.. 2024. 6. 2.
[언리얼5] 위젯에서 인터넷주소(URL)열기 위젯에서 특정 인터넷주소(URL)을 연결하는 방법입니다.C++에서 연결하는 방법과 BluePrint에서 연결하는 방법을 모두 정리 합니다.BP에서 실행하기우선 위젯 블루프린트에서 버튼을 생성하는 부분은 생략하도록 하겠습니다.위젯 블루프린트에 클릭할 수 있는 Button을 통하여 클릭시 이벤트를 생성 합니다.생성된 버튼을 클릭하고 디테일 메뉴에서 이벤트 > 클릭시 이벤트 추가이후 우측상단의 그래프 모드로 변경후 생성된 클릭시 이벤트의 노드와 Launch URL 함수를 연결합니다.블루프린트만으로 구현할경우 매우 간단하게 연결이 가능 합니다. CPP에서 실행하기CPP에서 URL을 설정하고 버튼을 클릭시 연결되는 방법은 블루프린트에서 연결하는 방법보다는 조금 까다롭습니다.우선 UserWidget 클래스를 상속받.. 2024. 5. 30.