인공지능이 학습을 진행하기 위해서는 더 많이 이동한 우수한 개체를 선택해야 하기 때문에 이동한 거리에 따라 점수를 부여해야 한다.
그렇기에 경로가 진행될수록 점수를 부여받도록 만들었다.
1. 타일에 숫자 매기기
마땅한 방법이 떠오르지 않아서 타일마다 숫자를 매겨보기로 하였다.
타일에 숫자를 매기기 전에 방해가 될 만한 것들을 전부 가려준다.

위치에 따른 번호를 매겨준다.



2. 타일 숫자 인식

콜라이더의 밑부분을 조금 튀어나오게 하여 바닥을 인식하도록 한다.

타일 태그를 추가하고, 바닥에 타일 태그를 적용한다.

그리고 바닥을 인식하는 코드를 추가한다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class playerScore : MonoBehaviour
{
public int score;
void OnTriggerEnter(Collider other)
{
if(other.tag == "Tile")
score = int.Parse(other.transform.parent.name);
}
}
타일을 인식했을 경우 그 타일의 정보를 가져와 score에 저장하는 코드이다.
타일 오브젝트는 부모 오브젝트 안에 콜라이더가 있는 박스 오브젝트 형태로 구성되어 있다.
그렇기 때문에 접촉을 감지한 오브젝트와 번호가 매겨져있는 오브젝트는 부모 자식 관계에 있으며, 이에 .parent를 통해 부모 오브젝트로 접근하여 부모 오브젝트의 이름값을 들고 왔다.
추가로 문자형으로 값을 받았기 때문에 int로 형변환을 해주었다.
잘 작동한다.
'Project > [Unity] 지진 시뮬레이션' 카테고리의 다른 글
| [Unity] 지진 시뮬레이션 9 - 유전학습 DNA 생성 (0) | 2024.04.01 |
|---|---|
| [Unity] 지진 시뮬레이션 8 - 카메라 배치, 지진 효과 구현 (0) | 2024.03.31 |
| [Unity] 지진 시뮬레이션 - 6 (장애물 데미지 구현) (2) | 2024.03.26 |
| [Unity] 지진 시뮬레이션 - 5 (추가 플레이어 이동, 디자인) (0) | 2024.03.22 |
| [Unity] 지진 시뮬레이션 - 4 (플레이어 움직임) (0) | 2024.03.21 |