개발일지1인지라 아직 아무것도 없지만 오늘 구현한걸 설명하겠습니다.
지금 기능까지 사용된 초기화.
간단하게 위젯과 mapping 구현하는 정도로 진행을 하였습니다.
앞으로 만들어가면서 계속 추가될 요소이죠.
간단한 움직임 구현 에임기능
aim 전용 SpringCamera 하나 더 둔 다음 move component to 해서 부드럽게 구현하였습니다.
zoom 시스템
스프링암의 arm length를 이용해서 거리 조절을 했습니다.
물론 delay를 이용해서 부드럽게 구현은 가능하지만, 왠지 별로 안떙기더라고요. 나중에 땡기면 다시 수정하겠습니다.
공격 시스템을 만들어보았습니다.
aim중에는 총을 발사하는 컨셉
aim이 없을경우는 근접무기를 쓰고
나중에 무기 시스템을 바꾸면 aim키를 방패키로 바꿔서 서로 상호작용하겠끔 구상해놨습니다.
attach mitter 등으로 소리나, 이펙트를 추가할수 있었지만,
일단 더미맵으로서 시스템먼저 구현하고, 그다음 애니메이션과 이펙트를 추가하는 방식으로 진행하기로 했습니다.
피격 당했을때 데미지 구조를 만들어봤습니다.
나중엔 속성값에 대한 데미지 감소등 추가해야하지만 일단 여기까지 구현했습니다.
이제 체력,마나,지구력,필사기게이지를 구현해봤습니다.
간단하게 progress Bar를 이용했고
엔든링처럼 체력이 전체 체력을 늘리면 바길이가 길어지게 하기 위해서
scale쪽을 건들었습니다.
그래서 실제 인게임엔 이렇게 늘어난 상태로 구현됩니다.
위젯에 state 애들을 불러오기 위해 사용된 함수입니다. current 로 할까 percent로 할까 고민을 해보았지만,
안그래도 위젯의 blind 함수는 틱함수다보니깐, 부담스러워서 그냥 퍼센트까지 character에서 구현했습니다.
사실 여기서 가장 실력이 부족하다 느낀게 stamina 시스템인데
스테미너가 다 달면 스프린트 끄는것부터,
delay는 스테미너가 틱숫자로 떨어지기떄문에 조절을 위해 걸어놨습니다.
스태미너 사용중일때의 함수를 구현했습니다.
사용되는 종류의 스태미너에 따라서 종류마다 받을수있겠끔 만들었습니다.
여기서 1초뒤에 바로 이벤트 함수를 호출하고싶었지만, set timer by event 사용법을 잘모르겠더라고요.
그래서 함수로 중간다리 역을 했습니다.
스태미너 충전 시스템입니다.
스태미너 사용안하면 1초뒤에 충전이 되고, 그 중간에 스태미너를 사용하면 스태미너 충전을 못하게 막았습니다.
마지막으로 스테미너변화가 없으면, 5초뒤에 안보기에 만들었습니다.
다음에 구현할것은 근접 공격, 슈류탄 피격, 아이템창, 무기바꾸기,
체력,민첩등 스텟으로 능력치 강화
엘든링에서 쓰는 홧톳불 시스템을 생각하고,
그뒤에 애니메이션이나 이펙트를 넣을 예정입니다.
오.. 멋진 걸
언리얼 인가요? 뭔가 엄청나네요