개인포폴 10,11일차 / 맵 & NPC 대화
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 26. 22:07개인포폴 10,11일차 / 맵 & NPC 대화

주말동안 진행이 많이 되진 못했지만 그래도 작업을 좀 했다. 일단 에셋스토어에서 텍스쳐만 받아서 터레인으로 맵을 대충 만들었다. 편리한 기능들이 꽤 많이 있어서 쓸만했다. NPC 하나를 구현중인데 근처에 가면 버튼이 생기고 날 쳐다보게 만들었다. 그리고 대화를 할때 글자 하나하나 차례대로 찍는걸 해본적이 없어서 유튜브를 볼까 하다가 설마 이렇게 하는건가 하고 떠오른걸 해봤는데 생각처럼 됐다. 이제 대화창도 예쁘게 꾸미고 대화 내용은 json으로 관리해서 불러오기만 하면 될거같다. 또 맵을 넘어갈때 구역별로 안내 UI가 뜨게 작업했다. 그리고 프레임 떨어지는게 싫어서 코드짤때나 기능 구현을 할때 뭐라도 좀 덜 써보겠다고 업데이트함수 쓰는것도 최대한 줄여가며 최적화를 위해 노력을 했는데 최적화라는게 생각보다..

개인포폴 작업 9일차 / 달팽이 몬스터 구현
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 25. 03:01개인포폴 작업 9일차 / 달팽이 몬스터 구현

사정이 있어서 작업을 많이 하지 못했다. 오늘은 달팽이 몬스터를 구현했다. 오늘 2마리 구현이 목표였는데 목표치를 채우지 못했다. 이 달팽이는 무료 에셋인데 애니메이션도 많아서 정말 쓸만했다. 달팽이의 범위 안에 들어오면 따라오도록 했다. 그리고 범위에 들어오진 않았지만 공격을 받으면 플레이어 쪽으로 오도록 구현했다. 몬스터 공격 애니메이션이 2개가 있길래 플레이어와 일정 거리까지 좁혀지면 랜덤으로 둘중에 하나가 나가도록했다. 움짤에는 한가지만 나왔다. 배틀 상태가 아닐때는 근처 구역을 랜덤으로 패트롤 하게끔 해놨다. 이제 맵을 만들면 일정 구역은 넘어가지 못하게 만들 예정이다. 수업까지 듣다보니 작업속도가 빠르진 않은데.. 주말사이에 무조건 나머지도 구현을 끝내고 맵을 정말 빠르게 만들어야겠다. 개인포..

개인포폴 작업 8일차 / 몬스터 & 배틀시스템 인터페이스 구현
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 24. 01:54개인포폴 작업 8일차 / 몬스터 & 배틀시스템 인터페이스 구현

필요한 몬스터와 NPC리소스를 모조리 찾아서 다 받아놨다. 리소스라도 든든해지니 마음도 조금 든든해졌다. 배틀시스템 인터페이스 몬스터,보스,캐릭터 상관없이 달아주기만 하면 편하게 쓸 수 있는 인터페이스를 만들었다. public interface BattleSystem { void OnAttack(float Damage); void OnDamage(float Damage); } 이제 이것만 붙여놓으면 때리고 맞을때 얘네를 호출하면 된다. 몬스터 틀만들기 오늘은 계획과는 다르게 몬스터 작업부터 시작했다. 일단 몬스터의 체력과 공격력은 항상 일정하니(주인공처럼 올라갈 일이 별로 없으니) 스크립터블오브젝트를 사용하여 데이터를 만들었다. 일단 두더지 캐릭터 하나만 추가하여 만들었고 이것저것 기획한 스텟을 넣어주고..

개인포폴 작업 7일차 / 기획 & UI작업과 사운드 매니저
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 23. 04:26개인포폴 작업 7일차 / 기획 & UI작업과 사운드 매니저

개인 포폴 작업 7일차 .. 확실한 기획 없이 진행하려니까 뭐부터 해야할지 생각이 안드는 부분이 있어서 전체적인 기획을 했다. 그냥 노션으로 이것저것 정해서 정리해두니 시간이 꽤 많이 흘렀다. 그리고 인트로 씬을 만들었다. 그리고 취소를 눌렀을때 종료 팝업과 불러오기버튼을 눌렀을때 띄울 UI 작업을 했다. 자동 저장 슬롯, 슬롯1 , 슬롯2로 총 3개의 불러오기 칸을 만들어놨다. UI를 전부 다바꿔서 이것도 좀 걸렸다. 그리고 게임에 쓸 배경음, 레이저총 효과음, 제트팩 엔진소리 등등 여러가지 BGM을 에셋스토어에서 다운 받았다. 마지막으로 어디서든 접근해서 사운드를 관리할 사운드매니저를 싱글톤패턴으로 만들어 주었다. #region BGM 사운드 기능 private AudioSource _BgmAudio..

개인포폴 작업 6일차 / 블렌더 본 리깅 & 기능구현과 버그수정
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 22. 02:40개인포폴 작업 6일차 / 블렌더 본 리깅 & 기능구현과 버그수정

블렌더로 본 리깅하기 기존 모델링의 본의 다리쪽이 좀 이상해서 블렌더를 사용하여 직접 리깅을 했다. 나도 기억할겸 하는법도 같이 소개한다. 시작하기전에 Edit -> Preferences -> Add-ons -> 'Rigging: Rigify 들어가서 추가해준다. 1.오브젝트 모드에서 Shift+A를 눌러서 스샷처럼 만들어준다.(왼쪽 상단에 보면 어떤 모드인지 나옴) 간편하게 사람용 뼈를 제공한다. 2. 그다음 S를 누른 상태에서 마우스 드래그로 크기에 맞게 줄이거나 키워준다. 3. Tap키를 눌러서 에디트 모드로 들어 온 후에 오른쪽 아래 메뉴에서 스샷에 체크되어 있는 '앞에 표시'를 체크 해준다. 이걸 눌러줘야 메쉬가 뼈를 안가린다. 4. 그 상태로 도구모양 아이콘을 눌러서 X 축 미러를 눌러준다. ..

개인포폴 작업 5일차 #2 / 넉백기능 구현
개발일지/Unity 개인 포트폴리오 개발일지2022. 6. 21. 01:09개인포폴 작업 5일차 #2 / 넉백기능 구현

일찍 자고 일찍 일어날까 하다가 잠이 안와서 작업을 좀 더 했다. 때렸을때 색깔 변화와 넉백기능을 구현했다. IEnumerator HitColor(Material mat) { mat.color = Color.red; yield return new WaitForSeconds(0.1f); mat.color = Color.white; } 색깔을 잠깐 변하게 하는 코드는 너무나 간단하다. 위와 같이 몬스터 스크립트에 작성하고 때렸을때 몬스터 스크립트에서 함수를 호출했다. 넉백은 addforce로도 가능하지만 리지드바디의 AddExplosionForce를 써보고 싶어서 이번기회에 써봤다. private void OnTriggerEnter(Collider other) { if (other.gameObject.lay..

image