본문 바로가기

게임 튜토리얼/테트리스(완)8

c# Unity 유니티 튜토리얼 테트리스 만들기 08. 블럭 삭제 Part02 지난 포스트에서 블럭 프리팹에 이미지들을 포함했습니다. 그럼 이제 블럭의 삭제와 더불어 이미지를 표현해보도록 합시다. 1. 각 블럭별로 이미지들을 조건에 따라 활성화 또는 비활성화하기 위해 부모 클래스를 만들어 각 블럭별로 상속받아 처리할 것 입니다. 우선 부모 클래스 BlockImageComponent 를 만들어줍니다. 상속받아 쓸 스크립트이기에 스크립트 폴더에 바로 생성해줍시다. 2. 아래의 코드를 작성합니다.   3. 각 블럭 별로 상속받아 쓸 파생 클래스를 생성합니다. 0~6까지 스크립트를 각 Blocks 오브젝트에 생성하여 추가합니다.  https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play 앱수박 게임류의 .. 2024. 4. 2.
c# Unity 유니티 튜토리얼 테트리스 만들기 07. 블럭 삭제 Part01 블럭이 한 줄 완성 시의 블럭 삭제 부분을 구현해보도록 합시다. 우선 블럭이 삭제되었을 때의 각 이미지가 필요합니다.   위 파일을 압축풀어서 Resources 폴더에 넣어줍니다. 1. 우선 블럭이 어딘가에 고정이 되었다면 고정된 블럭들을 담아둘 리스트를 하나 작성합니다. BoardComponent에 아래와 같이 작성을 합니다. 2. BoardComponent 리스트에 블럭을 추가하는 함수를 작성합니다. 외부에서 호출할 수 있도록 public으로 작성합니다.  3. 블럭이 고정 시 블럭 배열을 체크하여 가로로 완성된 줄이 있는지 검색하는 함수를 작성합니다.    https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play .. 2024. 4. 1.
c# Unity 유니티 튜토리얼 테트리스 만들기 06. 생성될 다음 블럭 설정 1. 게임 오브젝트를 하나 생성 후 다음 이미지를 보여줄 SpriteRenderer 컴포넌트를 추가하고 위치를 아래 이미지와 같이 잡아줍니다.2. 보여줄 이미지와 추가한 SpriteRenderer 컴포넌트를 담아둘 배열과 변수를 BlockSpawnComponent에 추가해주고, 다음 생성될 블럭의 인덱스 역시 변수로 추가합니다.  3. NextBlock 메소드를 작성합니다.4. SpawnBlock 코드를 아래와 같이 수정합니다. https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play 앱수박 게임류의 머지 게임입니다.play.google.com  5. Start 메소드 역시 수정해줍니다.  6. 유니티 에디터에 노출된 .. 2023. 9. 25.
c# Unity 유니티 튜토리얼 테트리스 만들기 05. 블럭 회전 제한 및 블럭 스폰 블럭이 회전시 왼쪽 위를 기준으로 회전하므로 블럭이 왼쪽 끝에 위치해 있을 경우는 상관이 없지만 오른쪽 끝일 경우 회전시 블럭이 보드 영역 밖으로 나가게 되는 상황이 발생합니다. 더불어 회전시 해당 위치에 다른 블럭이 있다면 회전이 되면 안되기에 회전 시 보드를 체크하여 회전이 가능한지 판단하여 가능하다면 회전을 하도록 합니다. 1. TetrominoMoveComponent 스크립트에 아래 코드를 작성합니다.  더불어 각 블럭의 rcp를 에디터에서 입력합니다. 만약 아래 이미지 처럼 블럭이 회전되기전에 블럭이 회전시 놓이게 될 위치를 rcp 배열들에 입력해둡니다.  분홍색 블럭의 각도에 따른 rcp 위치들. 다른 블럭들도 입력해줍니다. 차례대로 0도 90도 180도 270도 2. BoardComponen.. 2023. 9. 22.
c# Unity 유니티 튜토리얼 테트리스 만들기 04. 블럭 보드 생성 및 블럭 테트로미노 블럭의 현재 위치에 따른 보드 상에서의 위치를 추가해보도록 합시다.20x10의 보드 판위를 블럭이 이동하며 배치가 됩니다.블럭이 이동 시 보드를 체크하여 다른 블럭이 이미 있다면 해당 위치에 블럭이 고정되고 보드에 해당 위치에 블럭이 있는 상태로 변경해줍니다.1. TetrominoMoveComponent 스크립트를 열어 블럭이 보드 상 어디에 위치하는지 알 수 있도록 Vecto2 변수를 추가합니다.2. 좌우 이동 시 pos.x 아래로 이동 시 pos.y의 값을 변경합니다.  3. 유니티 에디터에서 임시로 블럭의 초기 위치와 보드상에서의 위치를 입력합니다.4. ㅜ 의 경우 네 개의 블럭이 하나로 이루어져있습니다. 현재의 블럭은 한개의 포지션만을 가지고 있는데 블럭 갯수만큼 실제 오브젝트를 구성해.. 2023. 9. 21.
c# Unity 유니티 튜토리얼 테트리스 만들기 03. 테트로미노 블럭 회전 블럭의 회전을 구현해봅시다. 1. TetrominoMoveComponent 스크립트를 열고 블럭의 회전 각도를 판별할 열거문을 추가합니다. 각도에 따라 이미지의 보정치를 입력해 주어야 합니다.2. 추가한 열거문을 클래스 내부에 변수로 추가하고 각도 따른 보정치를 넣어줄 Vector2 배열을 추가합니다. 3.  생성한 블럭 오브젝트를 프리팹 파일로 만들고 해당 프리팹 파일을 복제하여 나머지 블럭들도 생성합니다. 4. 생성한 블럭을 더블 클릭하여 프리팹 파일을 열어준 후 이미지를 바꿔준 후 앞서 이미지에 따른 중심축과 공백을 작업하지 않았다면 함께 해줍니다. https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play 앱수박 .. 2023. 9. 18.
c# Unity 유니티 튜토리얼 테트리스 만들기 02. 테트로미노 블럭 이동 블럭 이미지를 추가하고 이동 처리를 해봅시다.1. 블럭 이미지를 프로젝트에 추가합니다.https://drive.google.com/file/d/1e_3nCs-6sXCkCM635j6VQv9zUbdN8d62/view?usp=sharing  Tetromino.png drive.google.com2. 추가한 이미지를 선택하여 Sprite Mode를 Muliple로 변경하고 Pixels Per Unit의 값을 33 변경 후 Sprite Editor 버튼을 누릅니다.3. Slice 버튼을 눌러 Automatic 타입으로 이미지를 Slice 후 Apply 버튼을 누릅니다. https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play 앱.. 2023. 9. 15.
c# Unity 유니티 튜토리얼 테트리스 만들기 01. 프로젝트 생성 및 배경 설정 1. 2D 템플릿으로 Tetris 프로젝트를 생성합니다.2. Game 창에서 해상도 비율 920 x 1080 추가하고 변경합니다.3. 새로운 오브젝트를 생성하고 이름을 BackGround라고 변경합니다. https://play.google.com/store/apps/details?id=com.goldenegg 골든 에그 - Google Play 앱수박 게임류의 머지 게임입니다.play.google.com 4. 생성한 오브젝트에 이미지를 그릴 SpriteRenderer 컴포넌트를 추가합니다.5. 배경 이미지를 SpriteRenderer 에 연결합니다. 배경 이미지는 아래에 첨부파일이 있습니다.6. 배경 이미지의 블럭 이동 부분을 씬뷰의 그리드 20x10에 사이즈를 맞춰줍니다. 아래의 이미지 처럼 사이즈를 .. 2023. 9. 14.
반응형