유니티 (5) 썸네일형 리스트형 UNITY 게임개발트랙 - 내일배움캠프 81일차 TIL 내일배움캠프 79일차 TIL 오늘은 주말동안 진행한 유저 테스트 피드백의 내용을 토대로 디버깅 및 기능 수정을 진행했다. 디버깅 및 유저 테스트 피드백 반영 원거리 무기 조준 메커니즘 개선 기존 방식 : 총 60도의 조준각, 마우스 커서가 조준각을 넘어가면 정면으로 투사체 발사 개선 후 : 조준각 90도로 상향 및 마우스 커서가 최대 조준범위를 넘어가면 최대값의 조준각으로 투사체를 발사하도록 변경, 발사되는 각도에 따라 투사체 회전 플레이어가 맵 콜라이더 사이에 끼이는 현상 개선 기존에 Raycast를 활용하여 콜라이더끼리 충돌하기 전에 충돌을 미리 감지하여 속도를 줄여서 충돌 연산이 일어나기 전에 플레이어가 지형 콜라이더를 지나가는 현상을 방지하는 방식 그대로 사용하되, 알고리즘을 더 개선했다. 기존 .. UNITY 게임개발트랙 - 내일배움캠프 79일차 TIL 내일배움캠프 79일차 TIL 이번주는 주말동안 진행한 유저 테스트 피드백의 내용을 토대로 디버깅 및 기능 수정에 집중할 예정이다. 오늘은 스토리 컷씬이 너무 길고 지루하다는 의견을 해결하기 위해 컷씬을 짧은 여러개의 컷씬으로 쪼개는 작업을 진행했다. 컷쎈 제작 - Playable Director, Timeline 예전 팀 프로젝트에서 컷씬을 제작할 때 했던 것 처럼, PlayableDirector 컴포넌트와 Timeline을 활용하여 컷씬을 제작했다. 대신 하나의 컷씬을 하나의 타임라인으로 만드는 것이 아니라, 장면을 여러개의 타임라인으로 쪼개 만들어서, 추후 스킵 기능을 도입한다면 스킵 버튼이 눌렸을 때 다음 타임라인을 불러와서 재생할 수 있는 구조로 설계했다. 현재 타임라인 재생이 끝나면 배열에 있는.. UNITY 게임개발트랙 - 내일배움캠프 76일차 TIL 내일배움캠프 76일차 TIL 오늘도 오전에 기술면접 예상질문을 풀어보고 팀 프로젝트 개발을 진행했다. 객체를 이동할 때 벡터를 정규화(Nomarlized) 하는 이유에 대해 설명해주세요. 벡터를 정규화하는 가장 큰 이유는 이동속도를 균일하게 유지하기 위해서이다. 벡터를 정규화하면 방향은 유지되고 크기가 1인 단위벡터가 되는데, 이는 우리가 객체를 벡터의 크기와 상관없이 균일한 속도로 이동하고 싶을 때 큰 도움이 된다. 그 외에도 벡터를 정규화하여 물리연산에 사용하면 크기를 고려할 필요가 없으므로 성능 향상에 긍정적인 영향을 끼친다. 월드 스페이스(World Space)와 로컬 스페이스(Local Space)의 차이에 대해 설명해주세요. 월드 스페이스는 게임이나 3D 환경의 전체적인, 절대적인 좌표 시스템.. UNITY 게임개발트랙 - 내일배움캠프 74일차 TIL 내일배움캠프 74일차 TIL 오늘도 오전에 기술면접 예상질문을 풀어보고 팀 프로젝트 개발을 진행했다. 오브젝트 풀링(Object Pooling)이 무엇이며, 어떻게 구현하는지 설명해주세요. 유니티에서 오브젝트를 생성하는 작업과 파괴하는 작업은 많은 리소스를 필요로 하는 무거운 작업이다. 때문에 이러한 작업을 최소화하기 위해, 오브젝트를 미리 여러개 만들어두고 필요할 때마다 꺼내서 사용하고 사용하지 않을 때 다시 넣어둠으로써 메모리를 절약하는 디자인 패턴이 바로 오브젝트 풀링이다. 유니티에서 오브젝트 풀링을 사용하는 방법은 크게 두 가지이다. 유니티에서 제공하는 오브젝트 풀 기능 사용 직접 구현 유니티에서 제공하는 오브젝트 풀을 사용하는 방법은 매우 간단하다. IObjectPool 필드를 선언하고, 필수구.. UNITY 게임개발트랙 - 내일배움캠프 55일차 TIL 내일배움캠프 55일차 TIL 오늘도 오전에 기술면접 예상질문을 풀어보고 팀 프로젝트 개발을 진행했다. 가비지 컬렉션 C#은 개발자가 메모리를 직접 관리할 필요가 없도록 메모리 관리를 자동화하기 위해 가비지 컬렉션 기능을 제공한다. 객체를 생성할 때 자동으로 메모리가 할당되는데, 해당 객체가 필요하지 않을 때, 가비지 컬렉터가 개발자 대신 할당된 메모리를 해제하는 작업을 수행한다. 더 이상 참조되지 않는 객체를 찾아서 자동으로 메모리를 해제하는 방식이다. 가비지 컬렉션이란 해당 작업을 의미하며, 이 작업을 수행하는 주체가 가비지 컬렉터이다. 팀 프로젝트 개발 - 절차적 맵 생성 : 맵 구조 다양화, 버그 수정 맵을 생성할 때, 한쪽 방향으로만 생성되는 버그가 있었다. 방 하나를 생성하면, 이전 방과 연결된.. 이전 1 다음