분류 전체보기 124

[30강] Player Combo - 4

콤보 동작 퀄리티 높이기동작이 뚝뚝 끊기는 이유는 "EndAttacking" 노티파이에서 콤보가 있는지 체크해서 이기 때문에, 그 앞에 Combo가 있는지 체크하는 Notify를 하나 더 생성할 예정이다. 그래서 Call이 되면 "End Attacking" 보다 빠르게 더 먼저 다음 동작을 처리할 수 있도록 할 예정이다. 따라서 콤보 입력이 있었다면 다음 동작(CheckNextCombo) 로 넘어가고, 없었다면 "End Attacking" 이 처리될 수 있도록 해야한다.  1. Nofity > "AN_CheckNextCombo" 생성 후 다음과 같이 세팅하여 준다. 1) GetNotifyName2) Received_NotifyBP_Player > Attacking Event > CustomEvent "C..

[29강] Player Combo - 3

콤보구현 지금까지 콤보 들어가는 입력을 열었는데, 이 구현을 기반으로 콤보 입력 액션 진행시 콤보 카운트를 올려주고, 콤보 카운트에 따라 다음 콤보 애니메이션을 플레이 해 주는 작업을 진행하도록 하겠다. 현재는 Attacking 입력 액션이 일어났을때 첫번째에서 Enable Next Combo가 무조건 Flase고 Can Attack 은 True가 되어 들어와 Attacking이 일어난다. 그리고 애니메이션 몽타주가 플레이 되게끔 되어있다.이제 Animation Notify 에 의해서 Enable Next Combo가 True가 되어있었다면, True 로 빠져서 진행이 될 것이기 때문에 이 부분을 구현하여 주면 된다!  1. Integer변수 "SwordComboCount" 를 추가개수만 카운트 되어 질..

[28강] Player Combo - 2

이번시간에는 콤보를 구현하고, 더 자연스럽게 만드는 방법에 대해 다룰 예정이다.이 단계를 진행함에 앞서서 저번시간에 다루었던 "구조체" 에 관한 내용을 다시 정리하자면 다음과 같다. 구조체 : 여러개의 변수를 묶어서 관리하기 위해 사용, Break 명령어를 써서 구조체의 변수 각각 하나씩을 다룰 수 있으며 식별이 쉽게 하기 위해 접두사 f를 붙여 사용한다. 또, 본격적으로 구현을 진행하기에 앞서 "열거형" 을 사용하여 이전에 작성해두었던 코드들을 정리하도록 하겠다. 회피 등 다양한 플레이어 콤보를 구현함에 있어 여러가지 "상태" 가 등장하는데, Boolean변수(불 변수)가 너무 많아지면 처리가 어렵기 때문에 열거형을 사용하여 상태를 정리하도록 하겠다.  * 불 변수들 열거형은 접두사로 알파벳 "E" 를..

[27강] Player Combo - 1

언리얼에 CSV 데이터시트 불러오기 1. "Plyaer" 폴더에 블루프린트 > 구조체 "FComboTable" 생성* 구조체 : 변수들을 묶어서 다시 변수 취급해줄수 있도록 하는 기능  2. CSV 파일의 변수이름을 참고하여 다음과 같이 생성 - AnimMontage형 "Montage"  - Float형 "PlayRate"- Name형 "StartSectionName"- Boolean형 "CanMove" * 자료형 Name : 이름을 지정할 때 사용(대소문자 구분 없음)String : 글자 두자 이상의 문자열을 변수로 다룰 때 사용Text : 현지화 가능 텍스트(잘 사용하지는 않음) 3. Player > 데이터 테이블 임포트 1) 임포트 > 이전에 넣어두었던 파일 찾기  2) 임포트 > 데이터 테이블 C..

[26강] Damaged Enemy - 4

이번 강의를 통해서는 최종적인 사망 처리를 완료하고, Enemy가 피격당한 후 맞는 동작을 처리할 예정이다. 그 후 데이트 시트 (플레이어 콤보에 사용할 데이터를 만드는 작업) 을 진행할 예정이다.  사망처리 현재 구현에는 버그가 있는데, 이미 사망한 상태에서 맞았을때 계속 사망을 처리한다는 것이다. 사망에 한번 들어갔다면, 더 이상 사망을 반복할 필요가 없다. 사망에 한번 들어간 후 이를 반복하지 않게 처리하여 주어야 한다. 예를들어, 변수를 활용해 처리하는 방법이 있다.  지금 사용할 방법은 흐름을 제어하는 것이다. Google 에 언리얼 흐름제어 관련해 써치를 진행하면 Do any / While / Sequence / For each / Gate 등이 뜬다. 이런것들이 프로그래밍에서는 그냥 구현하면..

[25강] Damaged Enemy - 3

색을 변경 한 후 일정시간 뒤에 색이 원래대로 돌아오는 것을 구현  1. 다음과 같이 그래프를 연결함 - Delay 함수를 이용하고, Duration 값을 0.1을 주어 0.1초 뒤에 "Change Material" 함수 실행  2. "Color" 값에 Enemy Material 의 원래 16진 선형 값을 복사, 붙여넣기 해 설정해줌   플레이를 해 보면 0.1초뒤에 원래 색으로 돌아오는것이 정상적으로 확인된다.  3. 새로 만든 부분을 다음과 같이 "Change Color" 로 정리하여 둔다   1. 사망처리를 위해서는 애니메이션 몽타주가 필요하다. 믹사모에서 애니메이션을 다운받아 변환하여 탐색기에서 표시 > 엔진에 넣어준다.  2. 생성 > 애님몽타주생성 Montage 파일로 옮기기 3. 몽타주에 넣..

[24강] Damaged Enemy - 2

이번 강의에서는 저번에 다루었던 피격처리를 이어서 진행하고, 저번시간에 하다 말았던 HP바 시스템을 완성할 예정이다.  또한, 적(Enemy)이 공격당했을 경우 공격한 플레이어(Attacker)를 바라보도록 하고, 피격 후 붉은 색으로 바뀌었다가 돌아오는 것을 작업할 예정이다.    저번 강의에서 Progress Bar 의 설정을 마쳤는데 HealthBar로 Rename 하여 준다 Enemy 폴더 > WB_HealthBar* Rename 단축키 : F2컨트롤을 선택했을 때 오른쪽 위의 IsVariable이 체크되어 있다면 변수로 취급되며 "그래프" 탭으로 넘어갔을 때 입력을 받을 수 있는 컨트롤들이 자동으로 변수로 등록이 된다.  그래프 탭에서 다음과 같이 "HealthBar" 변수가 등록되어 있는 것을..

[23강] Damaged Enemy - 1

"Damaged Enemy" 강의를 통해서 다음과 같이 데미지 처리에 대해 익힐 예정이다. - 데미지를 전달하고 받는것 - HP를 경감시키고 경감시킨 HP를 출력 첫 단계로서 오늘은 적에게 칼을 쥐고, 피격 처리를 진행할 예정이다. 적인 Enemy "Skel_Mannequin" 에 칼을 쥐게 할 건데, Enemy 의 경우 칼을 계속 쥐고 있을 것이기 때문에 Right hand에 다음과 같은 방법으로 에셋을 추가할 것이다.  1. Sword 에 붙어있는 asset을 제거 (Player 작업을 하며 생성됨) 2. Hand 아래에서 소켓 추가  > "GreatSword" 로 이름 변경   플레이어보다 칼 크기를 크게 진행 할 예정이므로 다음과 같이 설정하여 준다.   미리 보기를 위해 아까 제작한 GreatS..

Tutorial 02 : Rendering a Triangle 코드 분석

윈도우 프로그래밍 "win32" 로 윈도우 프로그래밍을 하는 방법은 심플한 편에 속한다. 따라서 main으로 시작하는 기본 템플릿만 알면 윈도우 프로그래밍 자체는 별로 어렵지 않다. 단, 다양한 컨트롤러를 붙이는 과정에서 시간이 소요되기는 한다. DirectX 공부방법 Microsoft 에서 배포한 공식 튜토리얼을 통해 기본적인 구조와 활용법을 익히기만 해도 DirectX의 기능을 충분히 활용할 수 있다. 이 카테고리를 통해서는 DirectX 11 Tutorial 파일들을 분석하며 기본적인 구조를 익혀보려고 한다. 학습을 위한 세팅 1) DirectX_Tutorial 파일을 생성하여 기본적으로 제공된 튜토리얼들을 넣어두었다. 2) Visual Studio 실행 > 로컬 폴더 오픈 > sln (솔루션) 폴..

DirectX/DirectX 11 2023.10.23

Direct X 개발 세팅

Direct X 파일 구하기 (DXSDK_Jun10.exe) Microsoft 홈페이지에 검색 후 다운로드, 설치 공식적으로 배포된 Direct X 는 2010년 6월, 위의 버전이 마지막으로 이 이후에는 비주얼 스튜디오에 통합되었다. * 설치 후 Direct Sample Brower 를 통해 텍스쳐, 샘플 등을 확인 가능하고 튜토리얼도 확인 할 수 있다. 이 튜토리얼을 통해 내용을 숙지만 해도 충분히 잘 사용이 가능하다. Direct X 개발 세팅 1. Visual Studio > 새 프로젝트 만들기 > WindowsDesktopWizard > 상위 폴더 열기 2. 다음 3개의 파일(Direct 3D 프로그램) 옮기기 - d3dInit.cpp - d3dUtility.cpp - d3dUnility.h 3..

DirectX/DirectX 11 2023.10.23