반응형

Unity

(유니티) 키보드로 3D 오브젝트 좌우 앞으로 뒤로 이동하기

유니티에서 키보드를 이용해서 3D 오브젝트를 오른쪽 왼쪽 앞으로 뒤로 이동시키는 간단한 코드입니다. 프로젝트 만들기 1. 3D를 선택해서 프로젝트를 생성합니다. 2. Hierarchy 창에 "Terrain"과 "Cylinder" 3D 오브젝트를 추가합니다. 3. Inspector 창에서 "Terrain"의 Position을 "-500, 0, -500"으로 설정합니다. 4. C# 스크립크를 생성하고, "Cylinder"에 연결합니다 - "CylinderController.cs"using UnityEngine;public class CylinderController : MonoBehaviour{ private Vector3 direction = Vector3.zero; void Update() ..

유니티_unity 2024.05.25

(유니티) 월드 좌표와 스크린 좌표, WorldToScreenPoint 변환

월드 좌표는 3D 공간에서 객체의 위치를 나타내는 좌표입니다. 이는 객체의 위치가 카메라나 화면과 무관하게 공간 내에서 고유한 위치를 가지고 있다는 것을 의미합니다. 반면 스크린 좌표는 화면의 픽셀 단위로 위치를 나타내는 좌표이며, 카메라의 시점에 따라 달라질 수 있습니다. 유니티에서 월드 좌표를 스크린 좌표로 변환하는 과정은 게임 또는 애플리케이션에서 객체의 위치를 화면 상의 위치로 변환하는 데 사용됩니다. 이를 통해 객체의 위치를 화면에 표시하거나 객체와 관련된 상호작용을 구현할 수 있습니다. 유니티에서 월드 좌표를 스크린 좌표로 변환하는 방법은 다음과 같습니다. 변환하려는 객체의 위치를 가져옵니다. 이는 일반적으로 해당 객체의 Transform 컴포넌트를 통해 수행됩니다.카메라의 시점을 기준으로 월..

유니티_unity 2024.05.12

(유니티) 룰렛이 멈추는 위치의 문자열 출력하기

유니티 책 [유니티 교과서]에는 룰렛 돌리기의 예제가 있습니다.그냥 이미지만 돌리는데 예제인데, 이 룰렛 이미지가 멈추는 위치의 문자열을 출력하도록 수정해 봤습니다. 룰렛 돌리기 프로젝트 만들기1. 유니티에서 2D로 프로젝트를 생성합니다. 2. 이미지를 Assets으로 가져옵니다. 3. "roulette" 이미지를 씬에 배치합니다.Position: 0 0 0Rotation: 0 0 0Scale: 1 1 1 4. "neddle" 이미지를 씬에 배치합니다.Position: 0 3 0Rotation: 0 0 0Scale: 1 1 1  5. C# 스크립트를 생성하고, "roulette"에 연결합니다.코드를 작성합니다.using System.Collections;using System.Collections.Gen..

유니티_unity 2024.05.06

(유니티) 프리팹 Prefab: 마우스 버튼을 클릭한 자리에 프리팹 출력하기

유니티의 프리팹(prefab)을 다루는 예제입니다. 마우스를 클릭한 자리에 프리팹을 출력하는 코드를 작성해 보겠습니다. 프리팹은 자동차가 앞으로 이동하는 간단한 기능으로 구현합니다. 1. 프로젝트를 생성합니다 - 여기서는 2D로 생성했습니다. 2. 아래의 이미지를 Assets으로 가져옵니다. 이미지를 "car.png"로 저장합니다. 3. 자동차 이미지를 씬(scene)에 배치합니다. 4. C# 스크립트를 생성하고, 이름을 "CarController"로 변경합니다. 자동차를 앞으로 이동하는 코드를 작성하고, "car"와 연결합니다. 5. 실행합니다 - 자동차가 앞으로 이동합니다. using UnityEngine; public class CarController : MonoBehaviour { private..

유니티_unity 2024.04.09

(유니티) 프리팹 Prefab: 하늘에서 개구리가 떨어져요

유니티에서 프리팹(prefab)을 사용하는 방법에 대해 알아보겠습니다. "프리팹"은 재사용 가능한 게임 오브젝트의 템플릿입니다. 쉽게 말해, 여러 번 사용될 수 있는 게임 오브젝트의 복사본으로 생각할 수 있습니다. 프리팹을 사용하면 유사한 오브젝트를 쉽게 만들고 유지 보수할 수 있습니다. 한 번 수정하면 해당 프리팹을 사용하는 모든 인스턴스에 자동으로 반영됩니다. 이것은 게임 개발 프로세스를 효율적으로 만들어주고, 일관성을 유지하며 시간을 절약하는 데 도움이 됩니다. 여기에서는 하늘에서 개구리가 무작위로 떨어지는 모양을 프리팹을 이용해서 만들어 보겠습니다. 1. 준비물 - 아래의 개구리 이미지 2. 프로젝트를 생성합니다 - 2D, 이름은 맘대로 ... 3. 개구리 이미지(frog.png)를 Asset으로..

유니티_unity 2024.04.04

(유니티) 사운드(Sound. 오디오, 소리) 출력하기

유니티에서 사운드를 출력하는 예제를 만들어 봅니다. 1. 준비물: 오브젝트로 사용한 이미지 1개, 사운드 파일(mp3) 1개 2. 프로젝트 생성 - 여기서는 2D로 생성합니다. 3. 오브젝트 1개와 사운드 파일을 Assets으로 가져옵니다.(Alam01.mp3) 4. 오브젝트를 Scene에 배치합니다. Hierachy창에서 오브젝트를 선택하고 Infector 창에서 [Add Component] 버튼 클릭 Audio → Audio Source Assets에 있는 오디오 파일을 “AudioClip”으로 끌어다 놓습니다. “Play On Awake”을 체크되어 있으면, 해당 오브젝트가 로드 될 때 바로 오디오가 플레이 됩니다. 5. 실행해 봅니다 - 시작하자 마자 바로 사운드가 플레이 됩니다. 6. 마우스로 ..

유니티_unity 2024.03.30

(유니티) Input.GetKey(): 키보드로 오브젝트 상하좌우 움직이기

유니티에서 키보드 상하좌우 화살표 키를 이용해서 오브젝트를 상하좌우로 이동하는 코드입니다. using UnityEngine; public class RocketController : MonoBehaviour { public float speed = 1.0f; // Update is called once per frame void Update() { float x = 0f; float y = 0f; if(Input.GetKey("right")) x = 1f; else if (Input.GetKey("left")) x = -1f; else if (Input.GetKey("up")) y = 1f; else if (Input.GetKey("down")) y = -1f; Vector3 dir = new Vecto..

유니티_unity 2024.03.25

(유니티) 2D 이미지 회전시키기

유니티, 2D 프로젝트에서 이미지를 회전시키는 방법을 설명합니다. 2에서 이미지를 회전하는 방법은 다음과 같습니다. 2D에서는 z값을 이용해서 회전시킵니다. 이 값이 음수이면 시계방향으로 회전하며, 양수이면 반시계 방향으로 회전합니다. this.transform.Rotate(0, 0, 각도); 예제 1. 2D 프로젝트를 생성합니다. 2. 아래의 딱정벌래(beetle) 이미지를 다운로드 받고, Asset에 추가합니다. 3. Beetle.pgn 이미지를 Sceen에 추가합니다. 4. C# Script를 추가하고, Beetle과 연결합니다 - BeetleController 5. 코드를 작성합니다. 마우스 왼쪽 버튼을 클릭할 때마다 시계 방향으로 30도씩 회전시키는는 코드입니다. using System.Coll..

유니티_unity 2024.03.23

(유니티) GetKey(), GetAxis, GetAxisRaw 차이점

유니티에서 GetKey(), GetAxis(), 그리고 GetAxisRaw()는 모두 사용자 입력을 처리하는 함수들입니다. 그러나 이들 간에는 몇 가지 중요한 차이가 있습니다. GetKey() GetKey() 함수는 특정 키가 현재 프레임에서 눌렸는지를 확인합니다. 해당 키를 누르고 있는 동안에는 true를 반환하고, 그렇지 않으면 false를 반환합니다. 이 함수는 주로 단일 키 입력을 처리할 때 사용됩니다. 예를 들어, 특정 키를 눌러 캐릭터가 공격하도록 하는 경우에 사용될 수 있습니다. GetAxis() GetAxis() 함수는 입력 값을 반환하며, 보통 -1에서 1 사이의 값을 가집니다. 이 값은 주로 사용자의 입력 장치(예: 마우스, 조이스틱)의 위치나 이동 방향을 나타냅니다. 이 함수는 주로 ..

유니티_unity 2024.02.27

(유니티) TextMeshPro 한글 텍스트 출력

준비물 한글 TTF 폰트 - 여기서는 나눔고딕 폰트를 사용했습니다. 나눈 고딕폰트는 무료로 사용할 수 있습니다. 나눔고딕 폰트 [실습 따라하기] 1. 프로젝트를 생성합니다. 여기서는 2D로 생성했습니다. 2.텍스트를 출력하기 위해 "Hierarchy" 창에서 "UI" -- "Text - TextmeshPro"를 선택합니다. 3. [TMP Importer] 대화상자가 나타나면 "Import TMP Essentials"을 클릭하고, 창을 닫습니다. 4. Assets - TextMeshPro - Fonts 폴더가 생성되어 있는 것을 볼 수 있습니다. - 5. 윈도우 탐색기에서 "나눔고딕" 폰트를 Project 창의 Assets에 끌어다 놓습니다. 6. [Window] 메뉴 - TextMeshPro - Font..

유니티_unity 2024.02.19
반응형