2021년 8월 11일 수요일

언리얼 Cpp 초급

Visual Project 관련

    에러 떠서 Editor 못키는 경우

        1. Saved/Logs 에 들어가서 에러 확인

        2. Sin 도 없는경우 프로젝트 파일 좌클릭->Generate Visual Studio Project Files

    기본으로 파일 생성하면 Intermediate 폴더에 생성이 되니 주의

    주의사항

        Editor 의 Compile 을 해도 되지만 Visual Studio 에서 하는게 더 빠름(Hot Reload)

        Sin 과 다르게 Project 파일은 Intermediate 에 있고 Source 폴더랑 다름에 주의

        기본적으로 절대경로로 읽으므로 주의

            처음하는 경우 그 파일의 경로를 기준으로 한 상대경로를 쓸 수 있음.

    Unreal Macro Generator (Extension)

        Alt + W (생성)

        Alt + E (수정)

    상대경로 추가

        Build.cs 에 PublicIncludePaths.Add(ModuleDirectory); 를 추가

        

    

Class

    UObject 이하의 클래스만 에디터에 나타나고 나머지는 나타나지 않음.

        그런경우 블루프린트로 만들 수 있음.

        이는 "CoreMinimal.h" 에 있는 매크로가 이를 가능하게 함.

            UCLASS() 로 이 클래스는 Blueprint 화 가능하다고 명시됨

            GENERATED_BODY() 로 구현코드가 적용됨 (매크로라 그 위에 아무것도 없어야함)

        클래스 앞에 붙는 매크로는 Dll 상의 Namespace 와 비슷한 역할

    Reflection

        자료형이 객체화로 접근 가능

    Editor 공개

        private 라도 상관없음

        매크로

            EditDefaultOnly -> 기본값을 바꾸기 위해서 사용 ( 생성자 )

                직접대입, Initializer, 생성재 내 초기화 모두 적용됨

            EditInstanceOnly -> Instance 에서만 값을 수정가능

            EditAnywhere -> Default, Instance 둘다 적용

            VisibleAnywhere -> 값 확인용. Default/Instance 버전도 있음

            VisibleDefaultOnly -> Component 에 관행상 많이 씀. 지금은 Edit~ 도 가능함.

    Blueprint 공개

        protected 이상부터 가능

        Blueprint 로 시작하는 매크로랑 사용할 수 있으며 Editor 공개용 매크로랑 병행가능.

        ex) UPROPERTY(BlueprintReadOnly, EditInstanceOnly, Category = "Property")

    함수

        BeginPlay

            Blueprint 내용도 call 하므로 순서 주의 요망

        Delegate

            사용시 꼭 UFUNCTION() 매크로 붙여야함.

            함수포인터 사용하는게 아니면 대부분 함수는 Delegate 를 통해서 전달호출됨


Kismet

    Unreal0~3 까지 스크립트 언어가 Kismet 이름을 사용했음.

    BP 오고 레거시 땜에 이름 유지.


댓글 없음:

댓글 쓰기

List