본문 바로가기

Unity

(65)
④ 몬스터 구현하기 - 몬스터 코딩하기 ⓐ 3 종류의 몬스터를 생성 ⓑ 랜덤한 위치에서 몬스터가 떨어짐 ⓒ 각 종류마다 랜덤한 크기의 몬스터를 생성 ⓒ 각각의 몬스터마다 점수를 다르게 셋팅 몬스터를 먼저 만들어 보도록 하자 하이어라키 창 오른쪽클릭 - 2D Project - Sprites - circle 새로 생성시킨 게임 오브젝트의 이름과 이미지를 설정 몬스터에게 중력을 부여하기 위해 Unity에서 준비 해 놓은 기능을 활용하자 Add Component - rigidbody 2D 물리에 필요한 힘들 - 중력, 무게, 마찰력 설정 가능 파이터에 애니메이션을 입힌 방식과 동일하게 붉늑에게도 애니메이션 컴퍼넌트를 추가 몬스터가 떨어지는지 영상을 통해 확인해 보자 몬스터가 그라운드에 부딪혔을 때 멈추지 않고 뚫고 지나가는 현상을 제어하기 위해서 A..
③ - Q&A Q > 좌우로 움직이는 캐릭터를 만들기 위한 코딩 질문입니다. if (transform.position.x >= 2.71f) { direction = -0.05f; renderer.flipX = true; } 으로 하였을 때, 우측 끝에 도달할 시 방향 전환이 잘 되는데 if (transform.position.x == 2.71f) 위와 같이 하였을 때 x값이 2.71에 도달하면 이동방향과 캐릭터가 전환되지 않는 이유가 무엇인가요? A > Unity에서는 float 값을 완전히 정확하게 비교하는 것이 권장되지 않습니다. float 값을 정확하게 비교하는 것은 특히 부동 소수점의 한계로 인해 문제가 발생할 수 있습니다. 그러므로 범위를 정의하여 비교하는 것이 좋습니다. "unity 부동 소수점 오차" 키워..
③ 캐릭터 이동하기 오늘의 목표는 코드를 작성해서 화면 상의 캐릭터를 움직여 보는 것이다. 그러기 위해서는 C# 스크립트를 작성해야 한다. 생성된 스크립트 파일 이름을 fighter으로 명명한 뒤, Scripts라는 폴더를 하나 더 생성해서 넣어 두기 Fighter 스크립트를 어떻게 게임 오브젝트에 적용하는가? 하이어라키 창에 있는 Fighter 게임 오브젝트를 클릭해보면 Inspector 창이 보인다. 여러 가지 속성들을 볼 수 있으며 모두 일종의 스크립트이자 Component라고 부른다. 그러므로 만들어 놓은 Fighter 스크립트도 하나의 속성처럼 붙여주도록 하자 그 다음 Fighter 스크립트를 더블 클릭하면 비쥬얼 스튜디오가 실행된다. frame은 1초에 연산되는 횟수 frame 당 Start함수는 한 번만 진행 ..
② 애니메이션 맛 보기 애니메이션을 만들기 전에 Assets 폴더 안에 Animations 라는 폴더를 생성 Animations 폴더 오른쪽 클릭 - Create - Animation 이름을 FighterIdle로 명명 Loop Time은 '계속해서 반복적으로 수행하겠다는 의미' 하이어라키창의 Fighter 오브젝트를 클릭한 뒤 생성해놓은 애니메이션파일 FigherIdle을 추가 FighterIlde 더블 클릭 만약에 안 열린다면? Windows - Animation - Animation 하이러아키창의 Fighter 오브젝트를 클릭한 뒤 0이라 되어있는 곳에 파이터모션1 삽입 흰색 바를 0에서 10으로 이동 동일한 방법으로 흰색 바가 위치한 곳에 파이터모션2 삽입 흰색 바를 10에서 20으로 이동 다시 흰색 바가 위치한 곳에 ..
① 기본 씬 구성 첫 번째 프로젝트를 비교적 쉽게 접근 할 수 있는 2D 게임으로 만들어 보려고 한다. 2D 게임을 만들기 위해 해당 템플릿을 설정 후 프로젝트 이름을 설정한다. 어렸을 때 즐겨했지만 서비스가 종료된 다크세이버라는 게임의 캐릭터를 이용하기 위해서 프로젝트 이름을 Darksaver1 이라고 명명하였다. 참고자료 - 다크세이버 관련 링크 더보기 링크1 - 다크세이버 카페 링크2 - 다크세이버 리턴즈 편하게 작업하기 위해서 레이아웃 2 by 3으로 시작해보자 Project를 오른쪽 클릭한 뒤 One Column Layout 모바일에서 동작이 가능하도록 만들기 위해 화면의 비율을 모바일 기준으로 맞춰보자 가로인 X 값을 760으로, 세로인 Y 값을 1280으로 설정 자, 이제 게임 배경화면을 만들어 보자 이름, ..