언리얼9 언리얼 엔진 5 C++ (무기 장착 및 교체) 무기 장착 1. 무기 헤더 파일 및 cpp 파일 생성 1. Tools -> New C++ Class 선택 2. Actor -> Class type은 Public -> Create Class 선택 2. 무기 장착 코드 // 무기(액터) 클래스의 헤더파일 #pragma once #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "Weapon.generated.h" UCLASS(Abstract) class TRUEFPSTUTORIAL_API AWeapon : public AActor { GENERATED_BODY() public: AWeapon(); protected: virtual void BeginPlay() override; publi.. 2023. 1. 31. 언리얼 엔진 5 C++ (1인칭 시점 카메라 및 입력을 통한 캐릭터 움직임) 1인칭 시점 카메라 1. 캐릭터 클래스 생성 1. Tools -> New C++ Class 선택 2. Character -> Class type은 Public -> Create Class 선택 2. 카메라 생성 //캐릭터 클래스의 헤더파일 #pragma once #include "CoreMinimal.h" #include "GameFramework/Character.h" #include "TrueFPSCharacter.generated.h" UCLASS() class TRUEFPSTUTORIAL_API ATrueFPSCharacter : public ACharacter { GENERATED_BODY() public: ATrueFPSCharacter(); protected: virtual void Begi.. 2023. 1. 29. 언리얼 엔진 4 C++ (TSharedPtr, TWeakPtr, TUniquePtr) 관리되지 않는 메모리 malloc() / free() malloc() : 프로그램에서 메모리를 할당하기 위해 컴퓨터 시스템의 메모리 블록을 지정한다. free() : 메모리를 시스템에 되돌려줘야 하기 때문에 메모리 해체 호출한다. new / delete new : 메모리가 할당된 직후에 생성된 객체에서 생성자 호출한다. delete : new 연산자로 할당된 객체는 delete 연산자로 할당 해체돼야 한다. 관리되는 메모리 NewObject NewObject : UE4에서는 메모리 관리가 자동적으로 수행하는데 엔진 내에서 사용할 객체의 할당은 NewObject를 사용하여 수행한다. ※ SpawnActor 경우에는 객체가 Actor나 Actor를 상속받는 객체여야만 한다. ConditionalBeginDe.. 2023. 1. 26. 언리얼 엔진 4 C++ (UCLASS, UPROPERTY, USTRUCT, UENUM, UFUNCTION) UCLASS UCLASS 정의 UCLASS : 스마트 포인터 규칙에 따라 UE4의 스마트 포인터 및 할당과 해제를 위한 메모리 관리 루틴을 사용하고 UE4 에디터에서 로드되고 읽을 수 있으며 블루프린트에서 마음대로 접근할 수 있다. UCLASS 생성 1. 파일 -> 새로운 C++ 클래스... 선택 2. 파생되고 싶은 클래스를 선택하여 다음을 선택 2-1. 모든 클래스 표시 선택 2-2. Object 부모 클래스 선택 (UObject는 UE4 계층 구조의 최상위이다.) 3. 이름과 저장하고 싶은 경로를 결정하여 클래스 생성 선택 ※ 이름.generated.h 를 #include 해야만 컴파일 할 수 있으며 UPROPERTY, UFUNCTION, UCLASS 같은 UE4 매크로가 사용된 결과를 만들 수 있다.. 2023. 1. 25. 이전 1 2 3 다음