본문 바로가기

유니티

(38)
유니티(Unity) TextmeshproGui 사용시 Recttransfrom 의 크기가 변경되지 않을 때 (content size filter) sizedelta 자식으로 텍스트를 사용할 때 글자의 크기에 따라서 부모 Recttransform의 sizedelta 크기를 변경해야 할 때가 있습니다. 그러나 원하는 타이밍에 부모의 크기가 자식의 크기에 따라 변하지 않는 경우가 생깁니다. 이럴 때 사용하는 방법을 알아보겠습니다. ( When using text as a child, you may need to change the sizedelta of the parent Recttransform depending on the size of the character. However, there are cases where the size of the parent does not change depending on the size of the child ..
유니티 (Unity) - Illegal character in scheme name at index 0 webview 웹 뷰(webview)를 사용할 때 간혹 window나 editor 상에서는 웹 페이지(web page)가 잘 열리는데 모바일(mobile)에서 웹 페이지가 열리지 않을 때가 있다. 그에 대한 원인을 알아보자 ---- ---- Debug 안드로이드(android)를 기준으로 안드로이드 스튜디오(android studio)에서 디버그(debug)를 찍어보면 다음과 같은 오류 메시지를 확인할 수 있다. Invalid URL( https://your web url.......) : Illegal character in scheme name at index 0: https://your web url....... 로그의 뜻은 잘못된 문자가 0번 인덱스에 있다는 내용이다. 개발자들은 거의 실수를 하지..
유니티 (Unity) Animator로 2d Animation 재생(Play) 목표 animator를 이용하여 간단하게 반복적인 Idle 움직임과 외부에서 클릭 시 점프하는 animation을 구현하여 여러 개의 애니메이션이 한 번에 재생되는 상황을 연출해 보겠습니다. 목차 1. 결과화면 2. 오브젝트의 구성 3. animator 생성 4. animation 생성 5. 점프 스크립트 작성 6. 반복재생과 한번재생 7. animation 속도 8. animator에서 clip 가져오기 ---- ---- 결과화면 오브젝트 구성 오브젝트는 obj라는 최상위 부모와 body, eyes를 넣어서 obj는 점프하는 애니메이션을, body는 Idle 애니메이션을, eyes는 눈을 깜빡이는 애니메이션을 수해합니다. body의 Idle 애니메이션 eyes가 영향을 받지 않도록 body와 eyes는..
유니티 (Unity) - Button의 OnClick Listener 사용법 onclick event 오늘은 유니티 UGUI에서 가장 많이 사용되는 Button의 기능 중에 onClick 이벤트를 Listener로 등록과 해지하는 방법에 대해서 알아보겠습니다. 목차 1. Button에 이벤트 등록하기 2. 등록된 이벤트를 모두 해제하기 3. 등록된 이벤트 중 특정 이벤트만 제거하기 4. 일반적인 이벤트 등록 시점과 해제 시점 ---- ---- Button에 이벤트 등록하기 이벤트를 등록하는 방법에는 다음과 같이 세 가지로 등록할 수 있습니다. 1. 스크립트안에 구현된 함수를 등록 2. 람다식으로 함수를 등록 3. UnityAction 등록 스크립트의 함수 등록 void AddOnClickMyFunction(Button button) { button.onClick.AddListe..
유니티 (Unity) Rigidbody2d velocity 활용법 Rigidbody2d Rigidbody2d를 이용해 물리효과를 연출할 수 있습니다. 대표적으로 2d 게임에서는 점프 연출이나 발사체 연출에 사용이 가능합니다. Rigidbody2d는 addforce와 velocity를 이용하여 구현할 수 있는데, 오늘은 velocity를 이용하여 원하는 만큼만 오브젝트를 이동시키는 로직을 만들어보겠습니다. ---- ---- velocity velocity를 이용할 때 속도의 방향과 크기요소를 넣어주면 되므로 속도 벡터를 계산하여 할당합니다. 수직이동 다음과 같이 수직으로 속도를 계산하면 원하는 높이까지 오브젝트가 올라갔다가 떨어집니다. var gravi = Physics.gravity.magnitude; //프로젝트 셋팅의 physics에 셋팅된 값을 가져옵니다. var..
유니티(Unity) 프로젝트 점프게임 만들기 : [7] 플렛폼 생성 목표 랜덤으로 일반, 이동, 사라지는 플렛폼을 배치하여 재미요소를 추가하겠습니다. PlatformSpot 'PlatformManager'에서 플렛폼을 생성하는 부분을 수정합니다. 우선 수정할 내용에 들어갈 스크립트를 작성합니다. ---- ---- PlatformSpot.cs PlatformSpot 은 플렛폼 타입에 따라서 프리팹을 로드해서 플랫폼을 만듭니다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlatformSpot : MonoBehaviour { int platformIndex = 0; Platform curShowingPlatform = null; public void Se..
유니티 (Unity Basic) 이미지 적용 (Image Drag and Drop) Image 'Sprite Renderer'와 'Image'에 이미지를 적용할 때 Drag and Drop 으로 이미지를 적용할 수 있습니다. ---- ---- 적용방법 특정 폴더에 위치한 이미지를 'Sprite'에 Drag and Drop 해줍니다. 'Sprite Renderer'는 'Sprite'영역에 넣고 'Image'는 'Source Image'영역에 넣고 'RawImage'는 'Texture'영에 넣습니다. 아래는 유니티를 이용한 게임 만들기입니다. 게임 만들기에 관심이 있으신 분들은 한번 시도해 봐도 좋을 듯합니다. 매우 많은 스크린샷으로 유니티를 1도 몰라도 따라올 수 있도록 가이드해 드립니다. 유니티(Unity) 프로젝트 점프게임 만들기 : [1] 시작 목표 아주 단순한 점프게임을 만들어서 ..
유니티 (Unity Basic) 오브젝트 만들기 (Create Object) 유니티 기초 유니티를 사용할 때 가장 기본기능이라고 할 수 있는 것이 'Create Empty' 기능입니다. 빈 오브젝트를 생성하여 목표하는 오브젝트를 만들기 위한 토대를 만드는 것이죠. ---- ---- 생성방법 'Hierarchy' 영역 안에 마우스를 위치하고 우클릭을 눌러서 메뉴를 호출한 다음 'Create Empty' 메뉴를 클릭하면 됩니다. 아래는 유니티를 이용한 게임 만들기입니다. 게임 만들기에 관심이 있으신 분들은 한번 시도해 봐도 좋을 듯합니다. 매우 많은 스크린샷으로 유니티를 1도 몰라도 따라올 수 있도록 가이드해 드립니다. 유니티(Unity) 프로젝트 점프게임 만들기 : [1] 시작 목표 아주 단순한 점프게임을 만들어서 광고를 붙이고 광고수익을 발생 시켜보는 것이 이 프로젝트의 목표입니..