본문 바로가기

C#60

[C#][Unity] 현재 마우스 좌표 알아내기 마우스에 위치를 구할수 있는 코드를 알려드리겠습니다. //카메라 위치 Vector3 point = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -Camera.main.transform.position.z)); 중요한 것은 z값을 빼 준다는 것입니다. 클릭한 곳에 좌표를 구하고 싶으면 간단하게 if(Input.GetMouseButtonDown(0)) { Debug.Log(point.ToString()); } Input.GetMouseButtonDown(0) = 마우스 왼쪽 버튼을 눌렀을 때 로그를 띄워서 위치를 확인해 볼 수도 있습니다. 2022. 7. 17.
[C#][Unity] 현재 시각 가져오기 DataTime.Now를 출력하면 일/월/년도 시간:분:초 {오전/오후}가 표시된다. using System; public class TimeUtils { public string GetCurrentDate() { return DateTime.Now.ToString(); } } 현재 시간 포맷 지정 format을 지정하면 년/월/일/시/분/초/오전,오후 값을 원하는 형태로 출력할 수 있다. yyyy : 년도 MM : 월 dd : 일 HH : 시 mm : 분 ss : 초 tt : 오전, 오후 using System; public class TimeUtils { public static string GetCurrentDate() { return DateTime.Now.ToString(("yyyy-MM-dd .. 2022. 7. 2.
[C#][Unity] 충돌 감지 #1 충돌 발생조건 * 충돌이 일어나기 위해서는, 두 오브젝트가 모두 Colider를 갖고 있어야 하며, 둘 중 하나 이상은 RigidBody 컴퍼넌트를 갖고 있어야합니다. * 두 개의 오브젝트 중 하나의 오브젝트만 움직인다면, 움직이는 오브젝트가 RigidBody 컴퍼넌트를 가지고 있어야합니다. #2 Collision *Collison은 실제로 물리적 충돌을 감지하여 충돌을 처리하는 클래스입니다. 따라서 두 오브젝트 모두 RigidBody 컴퍼넌트의 Is Kinematic 항목이 비활성화 되어 있어야만 합니다. [Collision 관련 함수] OnCollisionEnter(Collision collision) : 두 객체가 충돌 시 호출되는 함수 입니다. OnCollisionStay(Collision .. 2022. 6. 17.
[C#][Unity] 자이로 센서 이용하기 유니티에서 안드로이드 플래폼을 선택할시 사용자는 WASD나 화살표키 같은 물리적 키를 사용할 수 없기에 조이스틱패드나 자이로 센서를 이용한 제어방식을 택하기도 하는데요 오늘은 자이로센서를 이용하는 방법을 알아보도록 하겠습니다. 위 스크립트를 3D로 구현된 오브젝트에 적용하고 안드로이드 플래폼에서 빌드를 하면 오브젝트가 스마트폰 센서에 맡게 빙글빙글 돌아가는걸 볼 수 있습니다. 2022. 6. 6.
[C#][Unity] 마우스 클릭 좌표 구하기 마우스에 위치를 구할수 있는 코드를 알려드리겠습니다. 2022. 5. 28.
[C#][Unity] 스마트폰 화면을 반으로 나눠서 터치 인식하기 안녕하세요 유니티에서 스마트폰의 화면을 반으로 나눠서 터치되는 부분을 인식하는것을 코드로 설명드리겠습니다. 2022. 5. 17.
[C#][Unity] Update() , FixedUpdate() , LateUpdate() 의 차이점 유니티에서 제공하는 Update 함수로 Update, FixedUpdate, LateUpdate 3가지가 있습니다. 어떤 상황에 어떤 함수를 호출해야 하는지 알기 위해 각 함수별 특징과 차이점을 설명합니다. Update() - 스크립트가 enabled 상태일때, 매 프레임마다 호출됩니다. 일반적으로 가장 빈번하게 사용되는 함수이며, 물리 효과가 적용되지 않은 오브젝트의 움직임이나 단순한 타이머, 키 입력을 받을 때 사용됩니다. FixedUpdate() - 프레임을 기반으로 호출되는 Update 와 달리 Fixed Timestep에 설정된 값에 따라 일정한 간격으로 호출됩니다. 물리 효과가 적용된(Rigidbody) 오브젝트를 조정할 때 사용됩니다(Update는 불규칙한 호출임으로 물리엔진 충돌검사 등이 .. 2022. 5. 11.
[C#][Unity] 총알 구현하기 안녕하세요 오늘 포스팅 할 주제는 총에서 총알을 나가도록 구현해 보도록 하겠습니다. 실행환경: Unity 202.3.31f1 IDE : Rider ──── 먼저 3가지의 오브젝트를 생성해주었는데요 각각 총알 , 총 , 몬스터로 지정하겠습니다. 그리고 각각의 이미지를 불러오겠습니다. 그리고 몬스터에 Tag를 추가해줄건데요, Add Tag 클릭 +버튼을 눌러서 Enemy라고 적어주겠습니다. 이후 몬스터를 다시 클릭후 Tag부분을 Enemy로 바꿔줍니다. 그 다음 Bullet의 이름을 가진 스크립트를 하나 만들어주고, 총알에 Box Collider 2D 컴포넌트와 Rigidbody 2D 컴포넌트를 붙여줍니다. 이때, Box Collider컴포넌트 내에 Is Trigger표시를 체크해주고, Rigidbody 컴.. 2022. 4. 26.
[C#][Unity] 캐릭터 공격 모션 구현하기 https://stickode.tistory.com/327 위 링크(캐릭터 회전 구현하기)에 이어서 이번에는 캐릭터 공격 모션을 구현해보도록 하겠습니다. 실행 환경 개발 툴: Unity 2019.4.21f1 IDE : vscode 공격을 구현하기 위해서 일단 공격을 받을 오브젝트를 만들도록 하겠습니다. Hierarchy-SampleScene에 큐브를 하나 추가하고 위치를 ( 5, 0.5 .0 ) 으로 설정합니다. 생성한 큐브와 바닥이 클릭됐을 때를 구분하기 위해서 태그를 설정해줍니다. 이제 MyUnit 스크립트를 켜고 아래 코드를 붙여넣어 줍니다. MyUnit.cs using System.Collections; using System.Collections.Generic; using UnityEngine;.. 2022. 1. 27.