응용프로그램/유니티(Unity) 57

Unity2D_횡스크롤 게임 지형만들기

들어가기전에.... 이전포스팅에서 다루었던 '객체 이동하기'의 Player객체를 활용해서 진행하겠습니다. 기초적인 내용이라 아시는 분들은 넘어가도 상관없지만 처음이신분은 목차로 돌아가기를 눌러서 숙지하고 와주세요~ RigidBody2D 컴포넌트에 Gravity Scale값을 25로 설정합니다.0이라면 플래이어의 공중부양을 보실 수 있습니다. 횡스크롤 게임 지형만들기 3분만에 뚝딱 만든 지형이라고 칭하는 지형하나이 지형을 Scene창에 드래그하면 지형이 들어감을 알 수 있습니다. 문제는 지형이 지형 역활을 하지 않고 단지 그림이라는게 함정입니다. 이를 방지하기 위해서 Unity에서 충돌체를 지원합니다.충돌체와 충돌체가 만나면 통과하지 않고 버티는 거죠.따라서 플레이어와 지형에 충돌체를 삽입합니다. Play..

Unity2D_캐릭터 움직이기

Unity2D_캐릭터 움직이기 GameObject에서 Create Empty를 클릭하고 Player로 이름을 바꿔줍니다. 임의의 그림파일(gif추천)을 객체에 드래그 해 주시고~ Inspector -> Add Component -> Physics 2D를 클릭! 그리고 Rigibody 2D를 클릭! RigidBody2D 컴포넌트에 중력속성값을 0으로 설정합니다.0이 아니면 아래로 떨어집니다. 2D물리컴포넌트를 장착했으니 2D물리컴포넌트를 조작할 스크립트를 작성해 봅시다. 하이라키에서 Player 객체를 클릭 -> Inspector 창의 Add Component 클릭 ->New Script에서 Player로 이름을 지정하고 C# 스크립트를 생성합니다. 생성한 스크립트를 더블클릭하면! C# 소스를 넣을 수 있..

Unity2D_애니메이션 삽입하기

2D애니메이션_애니메이션 삽입하기 Sprites 파일에서 잘라놓은 Gif 조각을 Scene에 드래그합니다. Scene에 선택한 파일을 선택하고 Window메뉴의 Animation을 클릭합니다. Animation 창이 뜨면 Anim파일을 미리 만들어 져있지 않은 이상은 아래와 같은 창이 뜰 것입니다. Create를 눌러줍니다. 저장할 이름을 설정하고 저장을 눌러줍시다. 이제 좌상단에 보면 방금 지정했던 이름이 보일겁니다. 이상태에서 애니메이션을 만들고 시은 조각낸 GIF 조각들을 드래그합니다. 이제 아래의 그림과 같이 gif 이미지들이 보이는데 좌에서 우측으로 이미지가 바뀌면서 애니매이션이 재생됩니다. 여기에 gif 이미지 위쪽에 마름모꼴 도형이 보일텐데요 이것을 조정하면 원하는 시간간격에 애니메이션을 지..

Unity2D_애니메이션제어

Unity2D_애니메이션제어 선택된 그림을 만들어 놓은 Player 객체에 드래그하고 이름정하기저는 PlayerIdle 이라고 지정했습니다. 그리고 아래의 이미지도 똑같이 Player 객체에 드래그하고 이름을 설정합니다. PlayerChop, PlayerHit로 지정했습니다. 이런식으로 작업을 끝내면 아래와 같은 파일들이 생성됩니다Player는 애니메이션 제어창이고PlayerIdle, PlayerChop, PlayerHit는 애니메이션 단위 입니다.여기서 Player를 더블클릭하면 Animator가 활성화됩니다. 이제 Animator창의 좌상단의 Parameters를 클릭하고 +버튼을 클릭후 Trigger을 클릭합니다.이름은 각각 PlayerChop과 PlayerHit로 지정합니다. PlayerIdle ..

Unity2D_애니메이션

Unity2D 애니메이션 설정하기 저번 포스팅에서 분할한 이미지의 화살표를 클릭합니다. 하이러키창에 우클릭하고 Create Empty를 클릭하고 이름을 Player로 바꿔줍니다 Shift를 눌러서 첫번째 이미지와 끝 이미지를 클릭합니다. 선택된 그림을 만들어 놓은 Player 객체에 드래그하고 이름정하기 그리고 위쪽의 플레이버튼을 누르면 움직이는 캐릭터를 보실 수 있습니다.

Unity - RogueLike(7/14) - 장애물과 벽

Unity - RogueLike(7/14) - 장애물과 벽 using UnityEngine; using System.Collections; public class Wall : MonoBehaviour { public AudioClip chopSound1; public AudioClip chopSound2; public Sprite dmgSprite; public int hp = 3; private SpriteRenderer spriteRenderer; void Awake () { spriteRenderer = GetComponent (); } public void DamageWall (int loss) { SoundManager.instance.RandomizeSfx (chopSound1, chopSou..

Unity - 에러모음집

에러모음집 에셋스토어를 켜도 글자가 나오지 않을 때 우측상단에 언어설정 선택하기 에셋스토어를 켜도 아무것도 나오지 않거나 마우스올려야 나올 때 Edit → Project settings → Player → Use Direct3d 11 해제 또는 Auto Graphics API For Windows해제 `UnityEngine.GameObject.rigidbody' is obsolete: `Property rigidbody has been deprecated. Use GetComponent() instead. (UnityUpgradable)' The variable animator of Player_Ctrl has not been assigned. You probably need to assign the a..

Unity 그래픽 최적화 방법 참고

랜더링이란? 간단하게 컴퓨터가 그림을 그리는 행위. 랜더링 파이프라인 3D 이미지를 2D 래스터 이미지로 표현하기 위한 단계적인 방법'을 의미합니다. 최적화를 위해서는 어느정도의 기반지식을 이해하고 문제가 되는점을 캐치하는 능력이 필요하다고 함. CPU -> 랜더링 명령 가공 -> GPU Memory에 전달 -> GPU 연산시작 -> 연산결과 GPU 버퍼에 전달. 위와 같은 랜더링을 제어하는 컴퓨터 언어를 그래픽스 API라고 하는데 여러 기업들이 자신들만이 API를 제공하고 있다. Microsoft(DirectX) 크로노스 그룹(OpenGL, Vulkan[멀티 쓰레딩 차세대 언어]) 애플(Metal[멀티 쓰레딩 차세대 언어]) AMD(Mentle) 유니티에서는 기본적으로 크로스 플렛폼을 지원하므로 지정된..