본문 바로가기
반응형

앱 만들기/유니티2D 게임 만드는 방법55

유니티 캐릭터 수평(좌우)으로 이동시키는 방법 수평으로 캐릭터를 움직이기 위해서는캐릭터를 화면에 배치 한뒤, 스크립트에서 하기 코드를 작성한다. 1. Scene view 에 자동차를 배치하고, object 이름을 Car 로 변경한다2. Car 오브젝트에 MoveX 라는 스크립트를 추가한다. 3. MoveX.cs using UnityEngine;public class MoveX : MonoBehaviour{ public float speed = 1; void FixedUpdate() { this.transform.Translate(speed/50, 0, 0); }} FixedUpdate()는 1초당 50번씩 고정호출 되는 함수이다.this.transform.Translate() 함수의 첫번째 인자는 X축 좌표값으로 이.. 2024. 10. 26.
unity C# serializefield 사용 이유 1. serializefield를 사용하는 이유 유니티에서 serializefield를 사용하는 이유를 알아보겠습니다. public으로 선언된 변수가 있다고 했을 때, 해당 변수는 Inspector에서도 보이게 되며 다른 스크립트에서도 모두 보입니다. 즉, 수정 도 가능하게 됩니다. 프로젝트 진행 시 원치 않게 변하게 될 수 있다는 의미입니다. 교과서 적인 표현으로는 객체 캡슐화에서 보안성이 조금 떨어진다고 말할 수 있겠습니다. 그래서, 변수 선언 시 무분별한 노출을 막기 위해서 private 접근제한자를 사용하곤 하죠. 그런데 private이지만 inspector에서만 보이게 하고 싶다면, 유니티 GUI 툴의 장점만을 살리고 싶다는 이야기죠. 이럴 때 serializefield를 사용합니다. 하기처럼 .. 2023. 5. 23.
유니티 스마트 폰 터치로 물체 움직이기 PC 게임일 경우 키보드 키 값의 입력을 제어하여 물체(오브젝트) 등을 움직이면 되지만, 스마트 폰 게임에서는 동작하지 않는다. 그렇기에 스마트 폰 터치 시 움직임을 구현하기 위해서는 하기 코드를 적용해야 한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 using System.Collections; using System.Collections.Generic; using UnityEngine; public class CarMove : MonoBehaviour { float speed = 0; // Update is called once per frame void Update() { //마우스를 클릭하면... if (Input.GetMouseButton.. 2021. 7. 25.
유니티-안드로이드 빌드 세팅하기. 유니티 실행의 기본 설정은 PC 이다. 스마트 폰에서 구동되게 하려면 빌드 세팅이 필요하다. 방법은 1. 파일->빌드세팅 을 선택한다. 2. 빌드세팅 팝업창에서 안드로이드를 선택 후 Switch Platform 선택. (아이폰 구동을 원한다면 iOS) 3. 안드로이드 환경으로 설정되고 나면 하기 처럼 빌드가 가능하다. (바로 실행을 원하면, Build And Run 선택) 좋은 하루보내세요. 감사합니다 :) 2021. 7. 15.
유니티-조이스틱 구현하기 핸드폰에서 게임을 하기 위해서는 터치 및 조이스틱이 원활히 구현이 되어야 한다. 오늘은 조이스틱에 따라 모든 방향으로 이동이 가능한 동작을 구현해 본다. 비행 슈팅게임의 조이스틱 1. UI 캔버스 로 조이스틱을 만들자. 2. 소스 구현 - 조이스틱 -조이스틱의 움직임을 담당한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 8.. 2021. 7. 12.
유니티 - Standrad Assets 2018.4 버전 컴파일 에러 발생시 Assets\Standard Assets\Utility\SimpleActivatorMenu.cs(11,16): error CS0619: 'GUIText' is obsolete: 'GUIText has been removed. Use UI.Text instead.' 최신 유니티에서 Standard Assets 2018.4 버전을 임포트하고 컴파일시 상기와 같은 에러가 발생한다면 하기와 같은 작업이 필요하다. using UnityEngine.UI; 를 추가 임포트 해주고 GUIText 를 Text 로 수정해주면 된다. 그럼 컴파일 OK. 감사합니다. 2021. 7. 8.
유니티-8방향으로 총알을 발사하다. 타임 파이럿 처럼 8방향으로 움직이면서 사방으로 총알을 쏘기위해서는 https://www.youtube.com/watch?v=AgNTahUrJCI https://soo0100.tistory.com/1553 유니티 - 전투기 8방향으로 이동 하기. 타임 파일럿 이라는 아케이드 게임있었다. 사실 난 접해보지 못한 오락실 게임이였는데, 당시 비행 슈팅게임의 한 획을 그은 게임이라고 한다. 보시는 것 처럼, 전투기가 8방향으로 움직인다. 유 soo0100.tistory.com 위 8방향으로 이동 포스팅 이후 8방향으로 총알을 쏘는 방법을 구현해 본다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 .. 2021. 7. 1.
유니티-스프라이트 변경하기. 상기 처럼 상황에 따라서 스프라이트가 변경될 필요가 있다면? 스프라이트 변경은 어떻게 할까? 여러방법이 있겠지만, 오늘은 Sprites 배열을 활용해 본다. 전투기를 움직이는 스크립트에 하기와 같이 Sprite[] 배열을 선언과 정의한다. public Sprite[] sprites = new Sprite[direction]; // 방향에 따른 이미지를 교체하기 위해서. Inspector 창에서 각 배열요소가 될 스프라이트를 마우스로 끌어넣기 하여 배열값을 초기화 한다. 이런 것이 바로 유니티의 편리성 중 하나가 될 수 있다. 그럼 실제 소스에서는 어떻게 스프라이트를 원할때마다 변경할까? 키보드에서 오른쪽 대각선 방향키가 동시에 눌렸을때를 예로 들어보자. 전투기의 spriteRenderer 컴포넌트를 얻어.. 2021. 6. 30.
유니티 - 전투기 8방향으로 이동 하기. 타임 파일럿 이라는 아케이드 게임있었다. 사실 난 접해보지 못한 오락실 게임이였는데, 당시 비행 슈팅게임의 한 획을 그은 게임이라고 한다. 보시는 것 처럼, 전투기가 8방향으로 움직인다. 유니티로 아군 기체를 위와 같은 움직임으로 만들어 보면 어떨까란 생각을 해본다. 하기 처럼 말이다. https://youtu.be/iso3DFqO1kU 위 처럼 8방향으로 동작하기 위해서는 8방향의 이미지가 모두 필요할 수 도 있지만, 필자는 하기 3장의 이미지를 활용하여 8방향을 구현해 보았다. 이미지 로테이션을 통해서 가능하다. P1 은 가로 오른쪽,왼쪽 P2 는 상하 P3 는 대각선 4방향 코드는 하기와 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2.. 2021. 6. 29.
반응형