| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
- 게임분석
- 연습
- 붕괴 스타레일
- LookAt
- materialpropertyblock
- 코테
- 뭐드라
- spritemask2d
- 유니티
- 개발
- 까먹기전에메모
- 게임용어
- 게임
- 스파르타내일배움캠프
- 게임 회사
- 원신
- 게임 개발
- 스파르타내일배움캠프TIL
- 내일배움캠프
- 코딩
- ag 내일배움캠프
- 프로그래밍
- 나만의 견해
- 셰이더
- spritelibrary
- 트러블슈팅
- 취미
- 블렌더
- 붕괴스타레일
- 공부
- Today
- Total
목록전체 글 (51)
덴바의 노트
오늘의 키워드Import한 에셋 내에 존재하는 MissingSciprt를 가진 오브젝트 정리 툴 만들기발생 상황유니티를 사용하다보면 무조건 에셋을 다운 받아서 Import하는 경험을 하게 됩니다. 이 때 해당 에셋과 자신의 프로젝트의 버전이 호환되지 않거나, 에셋 내부에 있는 스크립트를 제외한 파일이 필요해서 Scripts를 제외하고 Import 받게되면 Prefab에 MissingScript가 부착되어 있는 상태가 됩니다.이와 같은 경험은 주로 `Character` 같은 파일을 임포트하게 되면 자주 일어납니다. 저의 경우는 바로 이 `UnityChan` 캐릭터를 프로젝트에 Import하면서 발생했습니다.UnityChan 캐릭터 에셋에는 위와 같이 캐릭터의 퀄리티를 높이기 위한 다양한 Scripts들..
오늘의 키워드 오브젝트 풀링 오브젝트 풀링을 유니티에서 게임 개발에서는 빠질 수 없는 기능 중 하나입니다. 예로들어서 탄막 슈팅에서의 발사체를 보면 정말 많은 발사체가 화면에서 등장하면서 이동하는 것을 볼 수 있습니다. 그리고 오브젝트를 생성하는 방법은 Instantiate를 사용하는 것입니다. 하지만 발사체가 수없이 등장하는 게임에서 Instantiate를 사용하여 오브젝트를 생성하고 시야에서 사라지거나 플레이어 또는 적에게 부딪히면서 Destory를하여 오브젝트를 없애는 방식은 게임을 매우 무겁게 만들 수 밖에 없습니다. 그렇기 때문에 오브젝트 풀링이란, 매우 자주 생성되고 파괴되어야할 오브젝트를 미리 적당 개수를 만들어둔 후 배열에 저장을 해둡니다. 그 후 사용할 때 SetActive(true)를 ..
오늘의 키워드 Sprite Library 상세 사용 사용법 1. 먼저 스프라이트 라이브러리 에셋을 생성합니다. 2. 라이브러리 에셋을 열면 아래와 같은 창이 뜹니다 기본적으로 Category와 Label이 존재합니다. 기본적으로 라이브러리 에셋을 사용하는 방법은 저는 2가지라고 봅니다. 애니메이션 중점 애니메이션을 중점으로 설계하는 경우, Idle, Walk, Hit, Die 등 대상의 애니메이션 상태를 카테고리를 이용하여 분류합니다. 파츠 중점 파츠 중점으로 설계하는 경우, 캐릭터의 Head, Body, Leg, Hand 등 몸의 파츠를 카테고리를 이용하여 분류합니다. 이번에는 바로 애니메이션을 중점으로 분류를 해보겠습니다. 위 사진과 같이 카테고리를 애니메이션의 상태로 정한 후, Label을 생..
오늘의 키워드 Sprite Library 유니티에서는 Sprite의 Animation을 만들 때, 스프라이트를 Animation Clip 넣어서 애니메이션을 만듭니다. 이 때 불편한 점은 런타임 때, 애니메이터를 변경하면 에러가 발생하게 됩니다. 애니메이션 클립의 이름이 달라서 에러가 나거나 하는 경우입니다. 이러한 경우 불편함을 해소하기 위해서 Sprite Library와 Sprite Resolver가 있습니다. Sprite Library에서 위와 같이 Sprite를 넣어 줍니다. 이 후, Animation Clip으로 녹화할 때 Resolver의 값을 눌러가면서 애니메이션 녹화합니다. 이렇게 하면 애니메이션 클립 Key가 Sprite Resolver 해시 값으로 저장됩니다. 이렇게 하면 Sp..
오늘의 키워드 기존 시야각 구현 코드의 문제점 문제 파악 > private void CheckAlert() { colliders = Physics2D.OverlapCircleAll(transform.position, radius, targetMask); if (colliders.Length > 0) { foreach (var enemy in colliders) { Vector3 enemyDir = (enemy.transform.position - transform.position).normalized; float dot = Vector2.Dot(transform.up, enemyD..