일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- modeling
- c++
- 3d
- 마야
- 프로그래밍
- iclone
- UE
- autodesk
- character
- unreal
- charactercreator
- cc4
- 애니메이팅
- C언어
- C
- 3dmodeling
- animating
- 개발블로그
- 씨플플
- blueprint
- ue5
- maya
- ANIMATION
- reallusion
- UnrealEngine
- visualstudio
- 언리얼엔진
- Programming
- coding
- Costume
- Today
- Total
개발나라 스용공주
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/tBLxn/btsC53emWZl/VH8L2Zcr1HRLzZ6XBFHCDK/img.png)
우리가 만약 게임에서 상점의 물건을 1개씩 사갈 때 현재 상점에 남아있는 물건 재고수를 확인시켜주는 글씨를 출력한다는 상황을 가정해보자. 이때 물건의 재고 수는 변수인데 Print Text로 출력하려면 다음과 같이 포맷 텍스트 (Format Text)를 사용해주면 된다. 더보기 포맷 텍스트(Format Text) : 위의 사진처럼 Apple Inventory {store}를 작성하고 enter를 눌러주면 {}안에 적혀있는 store가 핀으로 생기는데 여기에 내가 지금 출력하고 싶은 변수값을 연결시켜주면 {store} 대신 해당 변수값이 저장된다. => 나처럼 store가 아니여도 본인이 원하는 사용하고자 하는 이름을 써줘도 된다. 왼쪽 마우스 버튼을 누르면 Apple이라는 int형 변수의 값이 1씩 빠진..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/mYJdl/btsC7nwEqcR/Wj2kh1Pk5KQS87L5PKs5s0/img.png)
1. 사칙연산 우리가 게임을 할 때 캐릭터가 체력(HP)을 잃는 경우와 더 추가되는 경우가 있다. 이럴 경우 먼저 HP라는 체력을 담는 변수에 +와 -를 이용해줄 수 있다. 아래 사진과 같이 Hp변수를 만들어주고 체력을 10씩 더하고 싶을 때 +를 사용하여 더해줄 수 있는 것을 확인 가능하다. 2. 변수로 승격 이란? 아래 사진과 같이 체력(HP)에 일정 값을 담은 변수를 곱해주고싶다면 새 변수를 만드는 방법도 있지만 아래 사진과 같이 비어있는 핀을 드래그하여 변수로 승격을 누른 뒤 이름을 설정해주면 따로 데이터형을 선택하지 않아도 되는 방법으로 편리하게 변수를 만들 수 있다. 3. 비교연산 비교연산자는 변수들의 크기를 비교해준다. 이를 이용하여 체력(HP)가 0 또는 0 이하가 되면 죽었다는 것을 알려..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qtEk5/btsC51fPsgU/W0qXtDO8KZkJkK1iFbhV50/img.png)
아래 사진과 같이 변수 Hp는 Integer형이고 Print Text 안에 In Text는 문자형이다. 이 두개는 변수형이 다른데 이 두개를 연결 시 To Text (integer)가 나오면서 두개의 다른 타입을 연결할 수 있도록 casting 해주고 있음을 확인할 수 있다. 더보기 Type Casting : 위와 같은 상황처럼 변수형이 서로 다른 변수들을 이어줘야할 때 강제적으로 이 둘을 이어주기 위해 다른 변수형으로 바꿔주는 과정
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/xpyQT/btsC32eCNMx/U885iKzayxSYy0zLORbNo0/img.png)
오늘은 기본적인 블루프린트의 기초 설명에 대한 정리글이다. 먼저 레벨 블루프린트를 열면 아래와 같이 BeginPlay이벤트와 Tick이벤트 두가지가 뜬다. 더보기 이벤트(=약속) : 트리거의 개념, 어떤 상황에서 이 이벤트가 실행될 것이다. BeginPlay이벤트 : 게임 실행 시 최초의 한번만 실행된다. Tick이벤트 : 게임 실행 도중 매 프레임마다 이벤트가 실행된다. (ex.1초에 60프레임의 게임이면 60번 실행) 다음으론 다음 두 블루프린트가 이어진 노드를 주석처리해볼 것이다. 먼저 아래와 같이 두개 다 선택해준다. 그러고 선택된 두개의 블루프린트에 키보드 C를 눌러준다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vRkMr/btsCZ45hGAi/WmpHV8JLGoK2MZbtDh6Exk/img.png)
우리가 언리얼로 작업을 할 때 언리얼 엔진을 실행시키는 경우 엔진을 실행시키자마자 뜨는 첫 맵을 우리가 주로 작업하는 맵으로 설정해두면 편리하다. 이를 설정하는 방법은 다음과 같다. 프로젝트 세팅으로 이동한다. 프로젝트의 맵 & 모드를 좌측 상단에서 찾아준 뒤 아래 사진과 같이 Default Maps의 에디터 시작 맵과 게임 기본 맵 두가지를 모두 DevMap으로 변경해준다. 그리고 창을 닫아주면 설정이 끝이 난다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b0vTKo/btsAxYfE6mp/P0C3RWWKoHFuPMkXvN5ca1/img.png)
애님 몽타주를 생성하는 방법은 다음과 같다. 애니메이션 시퀀스에서 우클릭 한 뒤 생성>애님몽타주 생성 을 해준다. 그럼 이제 생성된 애님 몽타주로 들어가서 설정을 해줘야한다. 먼저 몽타주의 슬롯 이름을 Default에서 FullBody로 변경해준다. 방금 생성된 몽타주에는 아래와 같이 노티파이가 아무것도 설정되어져있지 않다. * 노티파이(Notify) : 애니메이션 시퀀스에서 이벤트를 구성하고 받아 외부 동작을 수행하는 알림 시스템 그래서 이를 생성해줘야하는데 지금 내가 생성해줄 노티파이들의 설명 - BeginAction : 블루프린트에서 BeginActionNotify가 실행되는 부분 - EndAction : EndActionNotify가 실행되는 부분 - Collision : 무기 충돌이 감지되는 부..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dbeCBp/btsAwq2VIAm/uqVXGPxRyQhrV9tDr8O0q1/img.png)
캐릭터에 악세사리 메쉬를 부착한 뒤 그룹화를 하면 애니메이션은 적용되지 않고 아래와 같이 따로 노는 듯한 모양이 나오게 된다. 위와 같이 나오지 않게 하려면 해당 캐릭터의 뷰포트에서 악세사리 매쉬를 적용시켜줘야한다. 방법은 다음과 같다. 먼저 뷰포트에서 매쉬를 선택해준다. 컴포넌트 추가에서 Skeletal Mesh를 추가해준다. 그럼 아래 사진과 같이 캐릭터 Mesh 안에 비어있는 Skeletal Mesh가 하위에 있는 상태가 된다. 생성한 Skeletal Mesh를 선택해주고 디테일 패널에서 넣고자 하는 스켈레탈 메시를 선택하여 넣어준다. 그럼 다음과 같이 모자가 캐릭터에 얹어져있는 것을 확인할 수 있다. 그리고 소켓의 부모소켓을 None에서 해당 부위로 올바르게 변경해주면 적용된다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ltMgq/btszHr2YFK8/443kNrWfKLiJLBNyiYaUW0/img.png)
다음과 같이 무기가 손에 장착되었지만 우클릭을 하였을 때 칼을 제대로 휘두르지 않고 이동이 제대로 되지 않을 경우 다음에 재생될 애니메이션이 제대로 설정되어져 있는지 확인해줘야한다. 이때 설정되어져 있지 않다면 애니메이션 몽타주를 리타깃시켜주는 방법을 사용할 수 있다. 애니메이션 몽타주를 먼저 기존에 마네퀸에 만들어뒀던 몽타주로부터 리타깃 시켜야한다. 리타깃 버튼을 눌러주면 다음과 같이 스켈레톤을 선택하여 리타깃을 성공시켜주면 된다. 리타깃한 초록색 캐릭터의 몽타주를 기존 DataAsset에 넣어두었던 마네퀸의 몽타주와 바꿔준다. 작업을 완료하고 저장해준 뒤 실행해주면 다음과 같이 애니메이션이 제대로 재생되는 것을 확인할 수 있다.