전체 글140 유니티/C# 범위기반 루프 foreach 파이썬에는 for i in a: 와 같은 범위기반 루프문이 c#에서도 이와 유사하게 사용할 수 있는데 foreach(int i in a) 처럼 사용을 하면 된다. 2021. 1. 5. 유니티/C# 이차원 배열 열과 행 갯수 가져오기 string[,] a 이러한 이차원 배열이 있다고 할때 a.Length 를 사용하면 모든 인자의 갯수가 출력이 된다 이럴때 a.GetLength(0)을 사용하면 한차원만 내려가서 열의 갯수를 가져오고 a.GetLength(1)을 사용하면 행의 갯수를 가져오게 된다. 2021. 1. 5. 유니티 Object reference not set to an instance of an object UnityEngine.UIElements.UIR.RenderChain 유니티 작업중 Object reference not set to an instance of an object UnityEngine.UIElements.UIR.RenderChain.Render 오류가 뜨며 스크립트가 이런식이 아닌 하얀색으로 나오는 오류가 발생하였다. 그럴경우 개발폴더의 Library 폴더를 통째로 삭제하여 해결하였다. 단 프로젝트가 클 경우 다시 라이브러리 폴더를 로드하는데 시간이 걸리며 스크립트에서 퍼블릭으로 지정되어 끌어당기었던 것들이 다 날라갔다... None 2021. 1. 5. 유니티 해당 오브젝트 바라보게 하기 LookAt 함수를 사용하면 된다. ex) rotate_ob.transform.LookAt(chest_ob.transform); rotate_ob가 chest_ob를 바라보게 된다. rotate_ob와 chest_ob 모두 GameObject이다. 2021. 1. 5. 유니티 콜라이더(collider) 뚫리는(통과하는) 문제 이와 같이 콜라이더가 붙어있는 사물에 충돌하였을 때 콜라이더를 뚫는 문제가 발생하였다. 특히 Mesh Collider이며 두 콜라이더 사이 각도가 90도 이하일때 발생하였다. 해결법은 Edit -> Project Settings -> Time 에 들가보면 Fixed Timestep를 적당히 줄이면 된다. 나의 경우 0.002까지 줄이니 문제가 발생하지 않았다. 저걸 수정하면 update주기가 빨라져서 검사를 더 자주하게 되므로 충돌 문제를 해결하기 때문에 프레임이 떨어질 수 있다. 혹시 더 좋은 방법이 있으면 댓글 남겨주세요 ㅠㅠ 2021. 1. 5. 유니티 마우스 클릭이 되지 않을때 캔버스에서 UI들을 배치하고 버튼을 통해 클릭을 해야 하는데 하단(화면상 위) 레이어 때문에 클릭이 되지 않을 경우가 있다. Image 컴포넌트에서 Raycast Target을 끄게 될 경우 클릭에 방해를 받지 않아도 된다. NGUI쓰고싶다 .... 2021. 1. 5. 유니티 국가별 앱 이름 바꾸기 / Xml 파일 만드는법 안드로이드 빌드시 국가별로 앱 이름이 다르게 설정하는법 Assets 폴더안에 Plugins폴더를 만들고 그 안에 Android폴더 안에 res폴더를 만들어 줍시다. 그 안에 values-국가코드 폴더를 만들어 줍시다. 나라별 - 약어 / 국기 / 국가명 각 나라별 약어와 국기 그리고 국가명 입니다. 2자리 국가 표기 약어 입니다. (국기 이미지 받는데 시간좀 걸림.....) 아래 올림픽 사용 3자리 약어도 있습니다. AD Andorra AF Afghanistan AG Antigua and Barbud.. www.x2chi.com 자 이제 메모장을 켜서 게임 이름 를 적어 줍시다. 게임이름에는 ""를 쓰지말고 적어주세요 저장할때 파일이름을 strings.xml 로 해주시고 인코딩에서 UTF-.. 2021. 1. 5. 유니티 게임속도 빠르게 하기 난이도에 따라 게임 플레이 속도가 변해야 할때 유용한 함수 Time.timeScale = 1f; 1이 기본속도이며 2로 변경을 하면 2배 0.5.로 하면 0.5배속이 된다. 2021. 1. 5. 유니티 RectTransform Pos값이 다를때 기본적으로 transform.position으로 값을 받아오면 실제 pos값과 다른 값이 들어온다. GetComponent().anchoredPosition 사용하면 해결이 된다. 2021. 1. 5. 유니티 콜라이더(collider) 살짝 들어가는 문제 해결법 물체가 충돌할때 딱 멈춰야 하는데 살짝 들어갔다가 올라오는 경우가 있다. rigidbody에서 (2d든 3d든 상관없다) collision detecion의 값을 continuous로 변경하면 해결이 된다. 단 cpu연산량이 많아진다는 단점이 있다. 2021. 1. 5. 유니티 스크롤(Scroll) 마우스 휠 민감도 조절하기 여기 에서 마우스 휠로 위아래로 스크롤을 움직이게 될 경우 찔끔찔끔 움직이게 된다. Scrool Sensitivity의 값을 늘려주면 된다 기본이 1일텐데 30정도로 늘려주니 적당하였다. 2021. 1. 5. 유니티 스크롤(Scroll) 범위 밖으로 댕기기 안되게 하기 스크롤시 뷰포트를 잡고 위로 올리게 되면 범위보다 위를 보여준 다음 마우스를 때면 탄성이 있으며 아래로 내려가게 된다. 이게 맘에 안들 경우 여기서 Movement Type를 Elastic 에서 Clamped로 바꾸어주면 해결이 된다. 2021. 1. 5. 유니티 rotation 쿼터니언 좌표와 오일러 좌표 변환 climb_ro가 쿼터니언 변수이고 transform.rotation = climb_ro; 이렇게 하면 회전값을 그대로 가져오고 싶었지만 매우 작은 숫자가 들어가게 된다. 이건 우리가 인스펙터 창에서 볼때에는 눈에 보기 쉬운 360도 좌표를 보는거고 실제 오일러 좌표는 여러 문제가 있기 때문에 쿼터니언 좌표의 값으로 표기되기 때문이다. 해결법은 transform.rotation.x 를 transform.rotation.eulerAngles.x 로 바꾸면 된다. y와 z도 같은 방법을 사용하면 360도 좌표계로 된다. 2021. 1. 5. 유니티 capsule collider 충돌시 회전 막기 3D객체에 캡슐 콜라이더 넣고 지형을 걷게 하였는데 걷다보면 자주 y축을 중심으로 회전을 하는 경우가 있었습니다. 이럴경우 rigidbody에서 Freeze Rotation 에서 y를 체크해 주시면 해결이 됩니다. 2021. 1. 5. 유니티 Start 나 Awake에 있는 스크립트가 빌드시 실행이 안될때 가끔씩 컴퓨터에서는 잘 만 되는 코드들이 빌드를 하여 폰에 집어넣으면 안되는 경우가 종종 있다. 이럴경우 프로젝트를 하나 더 만든 다음 프로젝트의 폴더를 통째로 옮겨오자 그러고 새로만든 프로젝트에서 빌드를 하면 잘 된다..... 어째서 이런지 모르겠지만 벌써 2게임 째이다.. 2021. 1. 5. 이전 1 ··· 4 5 6 7 8 9 10 다음 반응형