본문 바로가기
728x90
반응형

개발일지/코드 기록5

유니티2D Slider로 HP Bar 만들기 HP Bar 중 Slider로 만든게 제일 깔끔해 보여서 Slider로 Hp Bar를 만들었다 ​ ​ 먼저 Ui - Canvas - Slider 순으로 생성해준다 Canvas는 UI 객체를 만들었을때 자동으로 생성되지만, 혹시 몰라 Canvas를 먼저 만들고 UI 객체를 생성해주는게 좋다고 배웠다^^ ​ Slider를 만들었으면, Handle은 필요가 없으므로 삭제해준다 ​ Fill Area - Fill 오브젝트를 선택 한 후 인스펙터 창에서 Image Color를 찾아 원하는 색상으로 변경해준다 ​ background의 color도 적절하게 변경해줬다 ​ Fill Area와 Fill의 트랜스폼 값을 0으로 줘서 최소와 최대 value 값을 맞춰주었다 ​ 그리고 스크립트를 통해 어떤 행동을 했을때 체력 .. 2022. 9. 26.
유니티2D 캐릭터를 따라다니는 카메라와 영역 설정 카메라가 캐릭터를 따라다니는 스크립트 using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraCtrl : MonoBehaviour { public float cameraMoveSpeed = 5; // 캐릭터를 따라다니는 카메라의 속도 // 카메라의 경계선을 그려주기 위해 맵의 크기를 구해야한다 // 인스펙터창에서 조정할 수 있도록 퍼블릭으로 선언 public Vector2 center; public Vector2 mapSize; GameObject player; // 카메라가 따라다닐 캐릭터 // 카메라의 높이와 폭을 받아오기 위한 변수 선언 float height; float widt.. 2022. 9. 26.
유니티2D 탑다운 캐릭터 위치에 따른 오브젝트 레이어 정렬 위처럼 캐릭터가 어떤 오브젝트의 아래로 가면 캐릭터가 위로 오고 뒤로 가면 캐릭터가 가려지게 해보자 ​ 우선 오브젝트의 인스펙터 창에서 피봇을 찾아 바텀으로 설정해준다 ​ 그런 다음 스크립트를 만든다 using System.Collections; using System.Collections.Generic; using UnityEngine; public class LayerSetting : MonoBehaviour { SpriteRenderer spriteRen; void Start() { spriteRen = GetComponent(); spriteRen.sortingOrder = Mathf.RoundToInt(transform.position.y) * -1; } } LayerSetting 이라는 스크립.. 2022. 9. 26.
유니티2D 캐릭터 좌우 플립과 이동 애니메이션 우측만 바라보는 캐릭터 캐릭터가 좌측 또는 우측 한쪽만 바라보고 있을때 좌우 방향 플립을 해주는 방법이다 ​ 캐릭터 좌우 반전을 하기 위해서는 Sprite Renderer의 Flip을 이용하면 되는데, X는 좌우, Y는 상하 반전이다 이것을 스크립트에 적용시켜 입력에 따라 플립을 시켜줄 수 있다 ​ 전에 기록해두었던 캐릭터 키보드 입력을 통한 이동 스크립트에다가 추가해주겠다 ​ 캐릭터 키보드 입력 이동 처리는 아래 링크에서 설명(주석)한다 유니티2D 키보드 입력에 따른 캐릭터 이동 키보드 입력에 따른 캐릭터의 이동 스크립트이다 using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerAc.. 2022. 9. 26.
유니티2D 키보드 입력에 따른 캐릭터 이동 키보드 입력에 따른 캐릭터의 이동 스크립트이다 using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerAction : MonoBehaviour { float moveSpeed = 5f; // 이동 속도 Rigidbody2D myRigid; // 캐릭터를 이동시켜줄 리지드바디 컴포넌트 void Awake() { myRigid = GetComponent(); // 레퍼런스 초기화 } // Start is called before the first frame update void Start() { } // 플레이어의 이동 처리는 업데이트보다 픽시드업데이트에서 하는게 좋다 private voi.. 2022. 9. 26.
728x90
반응형