본문 바로가기

Unity/Problems

(11)
대리자 본문은 대리자를 불러오기 전에 정의를 해주어야한다. ButtonController.cs 더보기 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 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 using System.Collections; using Sy..
2020-05-27 RigidBody 중력의 역습 한시간 반짜리 헤맴 (너가 아무리 강하다 한들 중력은 거스를 수 없지) Hero 소스코드에보면 this.transform.Translate(Vector3.down * g * Time.deltaTime); 이부분이 중력을 대신하는 코드인 것을 인지 못하고, 한시간 반동안 왜안되는지 마우스 샷건치며 있었다. Test1.class 더보기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class Test1 : MonoBehaviour { public Button..
2020-05-25 캐릭터 마우스 클릭 이동시 이벤트 Raycast 수업내용을 복습하다가, 캐릭터를 마우스로 클릭 이동시에 내가 마우스 클릭한 타겟포인트쪽으로 회전과 함께 애니메이션이 플레이되는 것을, 몰랐기에, 마우스 클릭이동 소스코드 예제를 찾아보았다. 먼저 마우스 클릭 이동의 원리를 살펴보자 마우스 클릭지점은 2차원(x,y); 원하는 지점은 3차원(x,y,z); 마우스를 클릭하는 순간의 마우스 커서 위치는 x와 y로만 나타난다. 이상태에서는 캐릭터를 우리가 목표한 곳으로 이동시킬 수가 없게 된다. 마우스 커서의 위치를 이용해서 실제 3차원 공간의 좌표를 얻어 오기 위한 방법을 고민해야 된다. 마우스로는 평면화면을 클릭, 나의 눈이 바라보는 최종목표 지점을 파악 플레이어의 눈으로 부터 마우스 클릭지점을 관통하는 가상의 레이저 광선 같은 것을 발사하면 된..
MainCam과 UICam의 설정문제 카메라 세팅 값 확인
2020-05-18 유니티 복습 (파일 입출력, 람다식, 대리자) App.Class 더보기 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UIElements; public class App : MonoBehaviour { public List heroList; public Dictionary dicCharacterData; public Dictionary dicCharacterInfo; private void Awake() { DataManager.GetInstance().LoadData(); this.dicCharacterData = new Dictionary(); this.dicCharacterInfo = new Dictionary(); t..
2020-05-18 유니티 파일 입출력... DataManager 더보기 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 using System.Collections; using System.Collections.Generic; using UnityEngine; using Newtonsoft.Json; using System.Linq; public class DataManager { static DataManager instance; private Dictionary dicMissionData; private DataManager() { this.dicMissionDa..
UnityException 오류 UnityException 라는 오류를 당했다. GameObject.Find("Hero").transform.GetChild(0) == null 이 지점에서 오류가 났다. 코드를 간단히 설명하자면, 버튼 여러개를 만들어, 각버튼 클릭시의 인덱스값을 CreateHero 매개변수로 받는다. 먼저 Hero 이름을 가진 게임오브젝트 껍데기를 동적으로 생성 (==null). 동적으로 생성된 Hero의 자식이 없다면, 매개변수로 받은 인덱스로 오브젝트풀에서 프리팹을 가져와서 Hero의 자식으로 넣고, (!=null). 동적으로 생성된 Hero의 자식이 있다면 그 자식을 찾아서 ReleaseAsset으로 비활성화 시키고 오브젝트풀로 넘길려고 했는데, UnityException이라는 생소한 오류를 당했다. transf..
ArgumentException 오류 프리펩의 자원을 클론으로 생성하기 클론을 생성하게 된다 자원은 "Assets/Resources/" 안에 들어가야지만 불러올수 있다. ArgumentException: The thing you want to instantiate is null. 이런식의 오류가 났는데, 처음보는 오류라 의아했다. 단지 Assets/Resources/ 폴더아래 path에 불러와야할 파일이 없다는것이다. 간단하게 prefab으로 사용할 파일들을 Resources 폴더 안에 넣어주는걸로 해결 됐다.