Unity 23

타일맵

텍스처를 타일로 만들기 위해 분할하기 타일맵 에셋 다운로드 링크 https://www.kenney.nl/assets/tiny-town Tiny Town · Kenney Download this package (130 assets) for free, CC0 licensed! www.kenney.nl Sprite Mode Multiple-Pixels Per Unit 16-Filter Mode Point-Apply-Sprite Editor 픽셀퍼유닛은 한 유닛당 몇 픽셀을 표현할 건지 정하는 단위인데 나는 한 유닛의 크기를 가로 16픽셀 세로 16픽셀로 설정하기 위해 16으로 적었다 Type Slice-Grid By Cell Size-Pixel Size 16x16-Slice Sprite Pivot Unit M..

Unity/2D 2023.09.20

코루틴 최적화

StartCoroutine의 가비지 코루틴을 사용하는 경우 StartCoroutine를 호출하는 순간 해당 코루틴을 관리하기 위한 인스턴스가 생성되는데 이 인스턴스가 가비지로 이어질 수 있다. StartCouroutine은 유니티 엔진 내부 코드이기 때문에 최적화 하기는 어려우므로 이로 인한 가비지 생성을 최소화 하기 위해서는 StartCoroutine을 최소한으로 사용해야 한다. YieldInstruction의 가비지 YieldInstruction은 코루틴 내부의 yield 구문에서 사용되는 값으로 WaitForEndOfFrame WaitForFixedUpdate WaitForSeconds 등이 있는데 아래처럼 new를 통해 인스턴스화 될 때 가비지를 생성하게 된다. yield return new Wa..

Unity/기타 2023.04.27

GPGS 사용해보기

다운로드 https://github.com/playgameservices/play-games-plugin-for-unity GitHub - playgameservices/play-games-plugin-for-unity: Google Play Games plugin for Unity Google Play Games plugin for Unity. Contribute to playgameservices/play-games-plugin-for-unity development by creating an account on GitHub. github.com 다운 받은 파일의 압축을 풀고 압축 푼 폴더의 current-build 폴더에 들어가서 위 패키지를 유니티에 임포트 한다. 그러면 저절로 설치가 진행되는데 ..

Unity/기타 2023.04.20

디자인패턴 - 프로토타입 패턴 사용해보기

개념 디자인 패턴 중 생성 패턴에 속한다. 기존 객체를 복제하여 새로운 객체를 생성한다. 사용법 먼저 복사할 객체의 원형이 필요하다. 그리고 객체를 생성하는 부분에서 원형 객체를 복사해서 생성하게 된다. 활용 예시 내가 맡은 부분인 채집의 과정 중에 양배추를 여러개 생성하는 부분이 있는데 여기에 활용해보려고 한다. 아래는 원형이 될 양배추 객체의 클래스이다. 프로토타입 패턴에서 중요한 부분은 Clone() 메서드이다. Clone() 메서드 호출을 통해 원형 객체를 복사하게 된다. 나는 양배추를 밭에서 생성되게 하려고 밭의 역할을 할 FarmRow 객체를 미리 만들었고 아래처럼 구조를 잡았다. 자식으로 양배추가 생성될 위치를 의미하는 객체들과, 원형 객체가 있다. 원형 객체를 아래 FarmRow의 멤버변수..

Unity/3D 2023.04.16

채집 R&D - 1

원래 채집은 맨손 채집 한 가지였는데 게임 컨셉에 대해 여러번 회의를 거친 후 최종적으로 삽으로 양배추를 캐는 방식으로 진행하게 되었다. 이걸 어떻게 구현하는게 좋을까 고민하다가 동물의 숲에서 땅 파는 모습을 레퍼런스로 삼았다. 원래는 레퍼런스 없이 상상으로 버튼 클릭하면 삽으로 양배추를 캐는 부분을 만들어놨었는데 제대로 레퍼런스를 정해서 추가된 부분이 생겼다. 이제 삽이 양배추에 닿으면 양배추가 포물선을 그리며 앞으로 날아간다.

Unity/3D 2023.04.15

안드로이드에서 드래그를 통한 카메라 줌인, 줌아웃 구현

원하는 기능 캐릭터는 항상 화면 중앙에 있음 터치 두 군데 해서 손가락 간 거리 좁히면 줌아웃, 늘리면 줌인 구현 자료를 찾아보니까 이미 잘 작성해둔 분들이 많아서 그걸 참고하고 우리 게임에 맞게 세부 값만 조절했다 Move 함수를 통해 항상 캐릭터를 바라보며 이동하도록, ZoomInOut 함수를 통해 터치를 통해 줌인 줌아웃이 가능하도록 했다 using UnityEngine; public class HSYCamera : MonoBehaviour { public Transform target; // 따라다닐 타겟 오브젝트의 Transform public HSYPlayer player; private Transform tr; // 카메라 자신의 Transform public float perspective..

Unity/기타 2023.03.19

스크린샷 기능 구현

초기에 게임 컨셉이 힐링이었을 때 게임내에 스크린샷 찍는 기능을 넣기로 했었는데 컨셉이 바뀌면서 굳이 스크린샷 기능을 구현할 필요를 못느껴서 빼게 되었다. 근데이미 만들어 둔 것을 그냥 지워버리긴 아까워서 포스팅 해본다. 스크린샷 기능 구현 먼저 스크립트는 아래의 두가지를 작성해준다. using UnityEngine; using UnityEngine.UI; public class UIGameDirector : MonoBehaviour { public Button btnScreenshot; public Screenshot screenshot; private void Start() { Debug.Log("GameDirector Init"); this.btnScreenshot.onClick.AddListene..

Unity/기타 2023.03.15
반응형