본문 바로가기

분류 전체보기

(573)          글쓰기    
언리얼 C++ 개발 준비하기 언리얼 블루프린트를 배우다 C++로 한번 배우고 싶어졌다. 블루프린트가 그닥 효율적이지 않은것 같다. 우선 Visual Studio 2022가 설치되어 있어야 한다. 새 Visual Studio 설치 옵션 Visual Studio 를 처음 설치하는 경우, 다음 옵션을 활성화해야 합니다. Visual Studio Workloads VS를 사용한 언리얼 엔진 개발 시 다음 Workloads 옵션을 설치해야 합니다. .NET desktop development (언리얼에서 자동으로 깔아주었습니다. 안깔렸으면 설치가 필요한듯) Desktop development with C++ Universal Windows Platform development Game development with C++ C++ 툴 C++ ..
언리얼 C++ 게임개발 언리얼 블루프린트를 배우다 C++로 한번 배우고 싶어졌다. 블루프린트가 그닥 효율적이지 않은것 같다. 우선 Visual Studio 2022가 설치되어 있어야 한다. 그닥 좋은 매뉴얼이 없다. 이득열의 언리얼 C++ 게임개발의 정석으로 공부해보려고 했는데 2018년 저서랑 현재 5.2와 잘 안맞는다. 베르의 유투브와 언리얼 매뉴얼에 의존하는 수 밖에 없을 듯하다. https://docs.unrealengine.com/5.2/ko/programming-with-cplusplus-in-unreal-engine/ C++로 프로그래밍하기 언리얼 엔진으로 개발하는 프로그래머를 위한 정보입니다. docs.unrealengine.com https://www.youtube.com/watch?v=DkJqLIpSvik
[19.절차적생성] 블루프린트 스플라인 생성 스플라인은 곡선을 정의하는 특수 수학함수이다. 블루프린트 스플라인 컴포넌트는 레벨에서 액터가 이동하는 경로를 정의하는 데 사용할 수 있다. 또한 인스턴스를 배치하기 위한 경로를 따라 위치를 얻을 수 있다. 스플라인 포인트를 추가, 변화및 회전해서 레벨 에디터에서 스플라인을 편집할 수 있다. 스플라인 컴포넌트는 일반적으로 세가지 기능이 있다. Get Spline Length : Get Location at Distance Along Spline : Get Rotation at Distance Along Spline : 예제를 한번 만들어 보겠다. 1. 콘텐츠브라우저에서 블루프린트를 만들자 부모는 액터이고 이름은 BP_SplinePlacement로 저장하고 에디터를 연다. 2. StaticMeshVar변수를..
[19.절차적생성] 컨스트럭션 스크립트를 사용한 절차적 생성 1. 기본으로 새로운 프로젝트를 생성한다. 2. 콘텐츠브루아저에서 Add+ 블루프린트클래스 생성하는데 액터를 부모클래스로 선택하고 이름을 BP_ProcedualMeshes로 지정한다. 3. 내 블루프린트 변수+를 클릭 StaticMeshVar로 이름을 바꾸고 타입을 스태틱메시로 한고 오브텍트 레퍼런스를 선택한다. 인스턴스편집가능을 체크해준다. 4. 컴파일후 디폴트값을 SM_Chair를 선택한다. 5.다음 변수들을 추가해준다. 모두 인스턴스에디터블이다. 이름 타입 디폴트 InstacesForRow Integer 10 NumberOfRows Integer 10 SpaceBetweenInstaces Float 100 SpaceBetweenRows Float 150 6. 컴포넌트에 인스턴스스태틱메시를 추가한다...
[17.애니메이션블루스크린] 애니메이션 스테이트 추가 업드리기 애니메니메이션을 추가해 보겠다. 1. 키 앱력을 만들어야 햔다. ProjectSetting>Engine>Input>Bindings>Action Mappins에 Crouch-C Prone-X를 매핑한다. 2. BP_ThirdPersonCharacter를 Ctrl-D로 복제해 이름을 BP_AnimTestCharacter로 변경한다. 3. 변수+를 눌러 Proning/Blooean으로 바꿔준다. 4. 이벤트그래프에 우클릭후 Prone을 검색해 추가해주고 다음과 같이 노드를 연결해준다. Prone입력이 발생할때 마다 Proning 변수의 부울값을 토글할 것이다. 5. 이벤트 그래프에서 Corl-F를 누르고 Move를 검색하면 이동 부분 노드들이 있다. 6. 앞부분을 끊고 Branch를 넣어 Pronin..
[17.애니메이션블루스크린] 스테이트머신 AnimGraph의 스테이트 머신을 이용하면 애니메이션을 일련의 스테이트로 구성할수 있다. 1. 다른 애니메이션 노드를 제거하고 최종 애니메이션 포즈노드만 AminGraph에 남겨둔다. 2. AnimGraph를 우클릭하고 state machine을 검색한 다음 새 스테이트 머신 추가를 선택한다. 3. 이름을 Char States로 변경한다. 최종 애니메이션 포즈 노드와 연결한다. 4. Char State를 더블클릭해 에디터 모드로 들어간후 State를 2개 추가한다. 이름을 Idel, Moving으로 변경한다. 노드의 테두리를 끌어 다음과 같이 만들어 준다. 5.Idel 노드를 더블클릭후 다음과 같이 노드를 만들어준다. Asset 브라우저에서 Idel애니메이션을 끌어다 놓고 연결해준다. 6. Moving..
5부 추가도구 [17장 애니메이션 블루프린트] 애니메이션 개요 1. 시작 컨텐츠가 있는 삼인칭 템플릿을 사용해서 프로젝트를 만든다. 2. 플레이 버튼을 눌러 삼인칭 템플릿에 내장된 기본 게임플레이를 시도한다 .WASD키를 사용하여 플레이어를 이동하고 마우스를 움직여 주변을 둘러불 수 있다. 스페이스바를 눌러 캐릭터가 점프한다. 스켈레톤및 스켈레탈메시 언리얼에서 스켈레톤은 스켈레탈메시와는 별개의 에셋이다. 애니메이션이 스켈레톤에서 수행되기 때문에 애니메이션은 동일한 스켈레톤을 사용하는 다른 여러 스켈레탈 메시에서 공유할 수 있다. 삼인칭 템플릿에서 사용하는 스켈레톤을 시각화해본다. 다음과 같은 폴더로 접근해 SK_Mannequin_Skeleton을 선택한다.(V5.2라서 그런가 교재와 폴더및 파일명이 달라 가장 비슷한 걸 골랐다) 왼쪽 패널에는 이 스켈리톤의 일부인 ..
[15.블루프린트팁] 블루프린트 단축키 단축키 네블루프린트패널에서 변수를 끌어 이벤트그래프에 놓으면 GET/SET을 질문하는데 Ctrl+드래그 : GET노드생성 ALT+드래그 : SET노드생성 변수로 승격 입출력핀 위를 우클릭하면 변수로 승격할수 있다. 승격된 변수는 마이블루프린트>변수에 추가되면 알맞은 타입이 자동으로 설정된다. ALT+클릭 : 모든 연결 제거 Ctrl+클릭+드래그 : 모든 연결 이동 정렬 : 여러 노드를 선택해 우클릭하면 원하는 정렬 모드를 선택하면 된다. 코멘트상자 : 그룹으로 묶을 노드를 선택해 우클릭후 코멘트추가를 선택하면 된다. 코멘트상자 목록은 창>북마크로 이동해 접근할 수 있다. 접힌노드 복잡한 노드들을 정리하기 위해 우클릭후 노드접기를 사용할 수있다. 다른 블루프린트에서 사용해야 한다면 매크로접기를 사용해야한다..
[14.수학및 트레이스노드] 트레이스및 트레이스 기능 소개 트레이스는 정의된 선분을 따라 충돌이 있는지 여부를 테스트하는 데 사용된다. 트레이스는 채널 또는 오브젝트 타입별로 수행할 수 있으며 적중된 단일 또는 여러개체를 반환할 수 있다. 반응하는 방식은 무시, 오버랩, 블록이 될수 있다 교재설명이 복잡해 그냥 예제부터 설명드리겠습니다. 1. BP_FirstPersonCharacter 블루프린트를 열어 에디터를 열겠습니다. 2. 매크로+를 클릭해 TraceLocations로 이름을 바꿉니다. 3. 디테일패널에서 벡터타입의 출력파리미터를 2개 추가합니다. 이름은 StartLocation, EndLocation으로 지정합니다. 4. 다음과 같이 노드들을 추가합니다. 현재 카메라 위치를 StartLocation 앞쪽으로 300만큼 떨어져 있는 EndLocation을 ..
<Unreal Engine5> 언리얼엔진5 3인칭 캐릭터 생성/이동, 점프, 대시, 앉기 https://blog.naver.com/zonghoooon/223054015498 언리얼엔진5 3인칭 캐릭터 생성/이동, 점프, 대시, 앉기/C++ ※언리얼 엔진5 공부한 내용들을 기록하는 글입니다. 언리얼엔진 5.1.1에서 3인칭시점의 기본적인 조작 방... blog.naver.com /C++[출처] 언리얼엔진5 3인칭 캐릭터 생성/이동, 점프, 대시, 앉기/C++|작성자 zonghoooon
[14.수학및 트레이스노드] 월드변환과 상대변환 액터 클래스는 트랜스폼 구조체가 있다. 이 구조체는 위치, 회전, 스케일의 3개의 변수가 있다. 레벨에 있는 액터의 트랜스폼구조체는 디테일 패널을 사용해 수정할 수 있다. 블루프린트에서는 다음같은 노드를 사용해 위치를 바꿀 수 있다. Get Actor Location : 액터의 현재위치를 반환 Set Actor Location : 새위치를 설정 Add Actor World Offset : Delta Location 입력 파라미터 만큼 현재 위치를 수정한다. 회전도 비슷하다. Get Actor Rotation: 액터의 현재 회전을 반환 Set Actor Rotation : 새회전값을 설정 Add Actor World Rotation : Delta Rotation 입력 파라미터 만큼 수정한다. GetActo..
[13장 데이터 구조및 흐름제어] 흐름제어 흐름을 제어하는 조건문은 이전에 Branch를 많이 사용했다. 이건 if문과 비슷하다. Switch와 비슷한 Switch on int, Switch on String, Switch on Enum등도 있다. 복수의 조건문의 오른쪽아래 핀추가+를 눌러 추가하면 된다 Flip Flop A와 B의 True/False 상태를 매번 바꾸어 A,B중 하나만 번갈아가며 실행되게 해준다. 총알발사 마지막 로직에 추가하면 총알을 발사할때 마다 .A/B가 번갈아 가며 출력된다. For Each Loop For Loop는 지정된 인덱스를 차례대로 발생하지만 For Each Loop는입력된 배열엘리먼트및 배열 인덱스를 출력핀에서 사용할 수 있다. DO Once 한번만 실행되는 노드이다 Reset후 다시 실행시킬수 있다. DO ..