목록분류 전체보기 (194)
초보 코린이의 성장 일지
TSharedPtr(공유 포인터) - 자신이 참조하는 개체를 소유하며, 해당 개체의 삭제를 무기한 방지하고 공유 포인터, 공유 참조가 참조하지 않을 때 궁극적으로 삭제를 처리합니다. - 포인터 소유자가 범위를 벗어나거나, 소유권을 포기할 때까지 삭제되지 않는다. - 참조 횟수가 계산되는 포인터, 하나의 포인터를 여러 소유자에게 할당하려고 할 때 사용 - 포인터는 비어 있을 수 있다 즉 어떠한 개체도 참조하고 있지 않다는 의미. - null이 아닌 공유 포인터는 참조하는 개체에 대한 공유 참조를 생성할 수 있다. TSharedRef(공유 참조) - 참조하는 개체를 소유한다는 점에서 공유 포인터처럼 작동한다. - 공유 참조는 항상 null이 아닌 개체를 참조해야 한다. - 공유 포인터에는 제한이 없기 때문에..
권총에 애니메이션 모션을 만들고 필요한 부위는 IK를 적용하여, 원만한 동작이 나올수 있도록 만들어 볼 것이다. 1. 장착 몽타주를 생성해주고, 노티파이와 커브를 생성해서 보간을 해준다. 1. 발사시 흔들리는 수치도 설정, 권총은 반동을 크게 해준다. 1. 위에 만들어준 몽타주, Shake 레퍼런스 주소를 넣어준다. 1. 에임 오브셋에 정면 동작과 키를 추가해서 위아래 향하는 동작을 만들었을때, 몽타주로 특정한 애니메이션을 만들어야 할때 등등 이렇게 부자연 연출이 나오게된다. 2. 그래서 하나를 조정하게되면, 그 라인을 타고 타고 내려가 같이 움직이는 부위 전부를 움직여 줘여한다. 여기서 FK, IK가 들어간다. 1. 레이어를 하나 생성해준다. 1. 에임오프셋은 라이플꺼랑 동일하므로 그대로 사용한다. 2..
AK47 사용할 때 모션에 부자연스러움이 남아있다. 리깅을 통해서 자연스럽게 잡아줄 것이다. 1. 키 2개를 넣어준다. 2. 회전값만 사용할 것이므로, 롤, 피치, 요만 사용한다. 3. 적절한 수치를 줘서 팔을 견착했을때 자연스럽게 나오게끔 리깅을 해준다. 1. FPS에서 AK47같은 총기류를 사용할때 보면, 좌우로 반동이 되는것보다 앞뒤 반동이 더 크게 적용되는걸 볼 수 있다. 2. 동일하게 앞 뒤 수치를 조절해 줄 것이다. 3. 레퍼런스 복사 후 추가해준다. 4. 리깅으로 인해 도트 위치도 알맞게 나오고, 반동도 적당히 이뤄진다. 1. 권총을 만들기 위해 상속받아 생성해준다. 1. 권총은 End_Equip가 없어도되며, 탄창 또한 필요가 없으므로 NAME_None로 처리해준다. 2. 꺼내는 위치는 정..
AK47를 사용할때 1인칭 모드로 전환해서 발사할 수 있도록 Mesh 하나 더 추가해서 만들어 볼 것이다. 또 한 도트사이트를 달아서 조준이 가능하도록 미리 세팅해볼 것이다. 1. 쓰일 재료가 필요하므로, 템플릿을 이용할 것이다. 2. 추가/임포트 -> 피처 또는 콘텐츠 팩 추가 -> 일인칭으로 만들어준다. 3. 제일 중요한건 팔만 있는 Mesh가 필요하다. 이주해서 가져와 준다. 1. Arms Mesh를 붙여주기 위해 생성. 2. 카메라 바로 앞에 붙여줘야 1인칭 모드처럼 보이게 할 수 있기 때문에 붙여줄 위치는 Camera. 3. 수치들을 조절해준다. 1. 붙여서 생성해 놓은 상태 2. 이제 애니메이션을 사용해서 자연스레 동작속에서 회전을 시켜줄 것이다. 1. 애니메이션 블루프린트에 사용할 에임 애니..
1. 만들어 놓은 백팩을 소켓에 장착시켜 줄 것이다. 2. spine_02에 소켓 생성을 해준다. 3. 프리뷰 애셋을 적용한 상태. 수치들은 자연스럽게 보이도록 설정해준다. 1. 컴포넌트 생성해주면서, Mesh에 붙여준다. 2. 혹시 모를 백팩과 총에 충돌때문에 Collision을 꺼준다. 3. 이제 장착이 완료된다. 1. 다음 무기인 AK47을 만들기 위해 파생 클래스를 생성해준다. 2. AK47은 만들었던 AR4와 다른점이 모양과 색상밖에 없다. 그래서 복사를 몇가지만 수정 후 해서 그대로 사용하게 될 것이다. 1. 조절해준건 위치값과 쏘는 속도 2. 몽타주와 AK47 무기의 레퍼런스 주소 제외하고는 동일하다. 3. Begin_Equip와 End_Equip는 나중에 다루게 될 것이다. 이유는 AK는 ..
https://www.youtube.com/watch?v=L-Cj97MqPas 진행 중인 작업 - AI 작업 중 - Boss Ai 작업 중 진행 예정 작업 - AI 작업 중 - Boss AI 작업 진행 완료 작업 - 기본적인 AI 작업
장전 몽타주는 넣어줬기 때문에 잘 나오고 있지만, 장전시 탄창이 갈아지진 않는다. 탄창도 갈게되고, 자연스러운 동작이 나오도록 구현해 볼 것이다. 1. 사용할 장전 노티파이를 생성해준다. 1. 각 Enum대한 동작을 위한 함수 생성, 부모인 Weapon에서 선언 후 컴포넌트에서도 생성. 2. WeaponComponent에서 체크 후 함수 실행. 1. Enum에 각 상황에 대한 행동을 실행 시킨다. 1. 4가지 동작에 대한 Enum 노티파이를 4개 추가해준다. 2. 순서대로, 탄창을 잡고 빼는 동작 (Eject) -> 뒤로 손이가서 탄창을 쥐는 동작 (Spawn) -> 탄창을 끼워 넣는 동작 (Load) -> 장착이 끝나고 다시 총을 잡는 자세 (End)가 된다. 3. 그럼 이제 장전이 끝이나고 재장전시 ..
에임에 기본값에서 쏠때 벌어지는각을 최대값으로 생각하고 천천히 비율을 구해서 벌어지게끔 만들어 볼 것이다. 1. 에임을 만들때 상하좌우 4개를 따로 만들어서 에임처럼 만들었다. 2. 4방향을 동일하게 for문을 돌려주기 위해 enum으로 만들어준다. 3. 현재값, 최대값을 Lerp로 돌려서 비율로 천천히 에임이 벌어지도록 코드 작성. 1. 부모인 Weapon에서 선언해준다. 2. Weapon에서 기본인 초기상태를 세팅해준다. 3. 벌어지는 각을 중첩시켜서 값을 넣어준다. 4. 계속 쏘는 상태에 값 변동은 Tick에서 진행. 5. 사용할 곳 AR4로 가서 값을 설정해준다. 1. 쏘는 만큼 점차 에임이 벌어지는걸 확인 할 수 있다. 1. 총알을 만들어 줄 것이다. 2. 모양을 잡아주고, 머터리얼을 생성해 추..
https://www.youtube.com/watch?v=EH9pS5al4J8 진행 중인 작업 - 스킬 변경 및 다듬기 - AI 작업 중 - Boss Ai 작업 중 진행 예정 작업 - AI 작업 중 - Boss AI 작업 진행 완료 작업 - 기본적인 AI 작업 - Postprocess 스킬에 적용
1. 연사를 하게 만들어 주기 위해 부모인 Weapon에 함수를 정의해준다. 2. UI에 on, off를 확인하기 위해서는 속해있는 컴포넌트에서 진행해야한다. 3. 컴포넌트를 통해서 명령을 내려줄 것이므로, 조건 체크를 해준다. 1. Weapon에 선언했던 ToggleAutoFire를 컴포넌트에서 연결해준다. 1. 플레이어로 가서 키 연결해주기. 1. 키를 눌러서 AutoFire 켜주면 연사로 발사가 가능하고, 끄면 단발로 발사되는걸 볼 수 있다. 1. 반복해서 나가는 시간을 설정해주기 위해 TimerManager를 사용 2. 간격을 설정해준다. 3. Begin, End에서 조건 판단 후 실행 해제 반복 4. 이제 연사를 하다가 키를 눌러 연사모드를 해제해도 계속 나가는 버그가 해결된다. 1. 1인칭에서..