[유니티] 숙련주차 트러블

  트러블 처음에 시작했을때 랜덤 맵 생성과 랜덤한 위치에 몬스터를 생성할 때 맵과 동시에 몬스터가 스폰이 동시에 진행하는데 있어 몬스터의 타겟팅 문제와 문의 setActive의 문제가 생겼다. 고민한 해결 방안 맵 생성을 하는 트리거를 만들어 동시에 진행하고 게임을 잠시 멈춘 뒤 카메라와 플레이어가  다음맵에 이동하는 형식을 하려 했다. 코드가 많이 꼬여버려 트리거가 발동 되어도 조금씩 어긋나고 에러가 뜨는 현생이 계속 되었다. 해결 시도 너무나 복잡한 이슈로 인해 트리거를 다 나눠보도록 했다. 카메라 앵글은 플레이어가 화면 밖으로 나가는 순간 맵 크기만큼 position을 바꿔주었다. 방 생성은 화면이 넘어가기 직전에 트리거를 발동시켜 만들어주었다. 몬스터와 구조물은 방을 넘어가고 문에서 조금 떨어진 곳에 트리거를 주었다. 그 순간 몬스터의 유무를 판단하여 문을 닫아 주었다. 즉 방 생성 → 카메라 이동 → 몬스터,구조물 생성 → 문 닫힘 최종 결정 해결 방안 및 이유 처음에는 상하좌우 랜덤한 방향으로 뻗어 나가는 맵을 만드려 했으나… 중복으로 맵이 같은 곳에 생성되는 이슈로 포기 하고 가능한 랜덤맵을 사용 할 수 있도록 안의 구조물과 몬스터 배치를 랜덤으로 바꾸게 되었다. 그리고 한번에 실행이 되는 것보다 하나하나 트리거를 나눠주니 에러도 어디서 왜 뜨는지 확실하게 알았다.

[Unity] Fade in 쉽게 사용해보기

이미지
 Fade in의 가장 쉬운 방법으로는 당연히 Asset 사용일테지만  그 외의 방법을 한번 알아보려고 하였다. Canvas Group을 사용하면 쉽게 사용이 가능하다. Fade in 이란  Alpha가 0에서 서서히 1로 되는 효과를 말하기에 우리는 그것을 바꿔만 주면 되는 것이다 코드에서 CanvasGroup 컨포넌트를 불러온 후 시간이 지남에 따루 alpha 값을 증가시켜주면 끝 오프닝에 많이 사용할 수 있을만한 Fade in기능이 완성되었다.

[Unity] Rigidbody가 있는 두 물체 충돌 무시

이미지
플레이어와 충돌 이벤트가 있는 서로 다른 2개의 Object는 충돌을 무시해야한다. 충돌을 무시하기 위해 Physics.IgnoreCollision 을 쓰려 했지만 잘 되지 않아 조사 끝에 찾아낸 답은  Layer였다. 지정된 레이어끼리의 값은 충돌 및 모든 것이 무시가 됐다. 원하는 물체에 Layer를 달아준 후 Edit > Project Settings >Phusics 2D 물리법칙을 무시하고 싶은 레이어 사이의 체크를 풀어주게 된다면 물체들은 전부 통과하게 된다.

[Unity] 애니매이션 없이 최대한 애니매이션 만들어보기`

이미지
 무료에셋으로 물방울이 떨어져서 퍼지는 모션을 구현하기가 너무 힘들어 어떻게 하면 좋을까 하는 도중에 이러한 동영상을 보게 된다. 안된다면 만들어 보자라는 생각에 무료 에셋을 찾는것을 멈추고 파티클에 집중하도록 하였다. 지금 현재 진행형이며 조금 힘들겠지만 내일이면 완성할 수 있을거같다.

[VS2022] 비주얼 스튜디오 비정상 종료 될시

 내 컴퓨터는 그리 좋지 못하다. 역시나 프로젝트를 진행하다 결국 블루스크린 이슈가 텨졌다. 다시 진행을 하려하는데 vs2022가 열리지 않아 매우 당황 급한대로 프로그램 수정 및 재설치도 해보았지만 똑같은 현상이 반복 되었다. 그래서 다른 사람들도 만약 이런 상황이 터지거나 나에게 또 이런현상이 터지게 된다면 도움이 되고자 글을 써보겠다. 아래와 같은 폴더를 완전히 삭제하여 주십시오. C:\ Users\<<Your Alias>> \AppData\Local\Microsoft\Team Foundation C:\ Users\<<Your Alias>> \AppData\Local\Microsoft\VisualStudio C:\ Users\<<Your Alias>> \AppData\Local\Microsoft\VSCommon 이 폴더들을 다 삭제 후 재시작 하면 다행이 정상 실행이 되는 것을 확인하였다. 해당내용은 이곳을 참고하였다. If you have problems with TFS or Visual Studio flush the user cache … or not?

[Git] Git Wiki를 만들어보자

이미지
 어쩌다보니 이번 프로젝트 발표자로 당첨이 되어버렸다... 그래서 notion을 보고 하는 것 보다는 git을 이용한 발표자료를 만들고자 git wiki를 사용해보기로 하였다. 일단 우리의 깃 허브에는 위키가 없었기에 Setting ->Features 항목에서 Wikis 체크박스를 선택 두둥.... 언어가 Markdown... Markdown 언어를 알아보도록 합시다. https://gist.github.com/ihoneymon/652be052a0727ad59601 이런 것들을 통해  내일 발표할 자료 완성 Markdown 언어 지식에 따라 엄청난 퀄리티 변화가 일어나는 것을 알게 되었고 다음에 또 wiki를 통한 자료를 남겨두거나 발표자료 준비를 해보도록 하겠다.

[C#] RPG 레벨링 작업

이미지
콘솔 RPG에 레벨링 작업을 하고 있는 도중 레벨링 계산식이 RPG에는 따로 있다고 하여 조사하려 알아보았다. 계산식은 레벨까지 필요 경험치 = ((레벨 - 1) * 50/49)^2.5 * 계수 가 되시겠다. 이걸 역계산하면 현재레벨 = (총경험치 / 계수 )^0.4 * 49/50 + 1 이 된다. 이것을 사용하여  를 구할 수 있게 되었다. 다음에 게임을 만들때 정말 유용한 코드가 될 수 있을거 같다.