벨로그에서 2023년 7월 21일에 포스팅한 글을 이전한 글입니다. 두가지 형태의 타이머 구현 타이쿤 개발하면서 손님들의 개별 타이머와 전체 타이머를 구현했다. 개별 타이머는 바 형식, 전체 타이머는 숫자로 표현함 모두 코루틴을 이용하여 구현하였다. 숫자 형식의 타이머 (ToString Format) 처음에 00:00 포맷으로 어떻게 만들지 했는데 ToStrnig으로 포맷 지정을 할 수 있었다. minute.ToString("00") 형식으로 지정하면 알아서 포맷에 맞게 바꾸어줌 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TMPro; public class ..
벨로그에서 2022년 12월 5일에 포스팅한 글을 이전한 글입니다. 마우스 드래그를 통한 영역 선택 드래그를 통해 영역을 선택하고 2개 이상의 오브젝트들을 선택하자 구글링해보니 GUI 같은 것 밖에 안나오길래 직접 구현했다. 주로 스타크래프트 같은 RTS 게임이나 퍼즐 게임에서 사용할 수 있다. 난 사과게임 만들었음 1. 드래그 영역 그리기 MouseHandler.cs using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class MouseHandler : MonoBehaviour { [SerializeField] GameObject dragSquare; // 프리..
벨로그에서 2022년 5월 25일에 포스팅한 글을 이전한 글입니다. 마우스 커서 변경 게임을 만들다보면 컨셉에 맞거나 예쁜 커서로 변경하고 싶은 생각이 든단 말이죠! Event Trigger를 이용해 버튼이나 오브젝트 같이 클릭 가능한 오브젝트 위에 올라와 있는 마우스 커서도 변경할 수 있음 기본 마우스 커서 변경 기본 커서의 변경은 Project Settings → Player → Default Cursor에서 원하는 커서의 이미지를 넣으면 된다. Cursor Hotspot은 커서가 클릭 될 위치?라고 보면 됨 커서의 이미지는 Texture Type을 Cursor로 바꿔준다. 나는 커서 이미지를 icons8에서 가져왔다. 근데 이게 저장한거 그대로 쓰면 커서가 너무 크길래 줄이려고 했는데, 방법을 못 ..
벨로그에서 2022년 4월 7일에 포스팅한 글을 이전한 글입니다. LineRenderer에 BoxCollider / 두 오브젝트를 잇는 Collider Raycast 적용하려면 Collider를 씌워줘야 한다. 2D에서는 EdgeCollider2D로 시작점과 끝점만 설정하면 되는데, 3D에서는 불가능 해서 다른 Collider로 씌워줘야 한다. 회전이 제대로 안돼서 한참 고민하다가 자식 오브젝트와 LookAt 함수로 해결했다. 하이어라키 💡Line 오브젝트(프리팹)에 LineRenderer가 있고, 하위 오브젝트인 Collider 오브젝트에 BoxCollider가 있다. 이렇게 하는 이유는 Line에 BoxCollider를 바로 넣으면 이상한 중심축으로 회전한다. 그래서 꼭 자식 오브젝트에 Collide..
네이버 블로그에서 2020년 11월 4일에 포스팅한 글을 이전한 글입니다. 오브젝트가 벽에 붙는 현상 왼쪽 벽을 보면 몬스터가 정상적으로 튕기지 않고 슬라이드 하는 것을 볼 수 있다. 로직의 문제가 아닌 프로젝트 세팅을 바꿔줘야 하는 문제이다. Velocity Threshold 유니티 물리 2D 공식문서를 보면 Velocity Threshold에 관한 설명이 나와있다. 이 값이 높아서 생기는 문제이다. Velocity Threshold 탄성 충돌의 임계값을 설정합니다. 이 값보다 상대 속도가 낮은 충돌은 비탄성 충돌로 간주됩니다. 즉, 충돌하는 게임 오브젝트가 서로 튕겨나가지 않습니다. edit > project settings > physics 2D > velocity threshold > 0.0001..