[7월 1일 오프라인 회의에서 전반적인 설계와 역할을 나누었다]
<DB 설계>
- ER 다이어그램
- User: 게임 사용자 테이블
- History: 사용자의 게임 기록 이력 테이블
- Grade: 채점 점수에 대한 정보 테이블
- User Grade: 한번 게임에서 나오는 점수를 기록하는 테이블
- 그 외의 엔티티타입 정의서, 속성 정의서, 식별자 정의서, 테이블명 정의서, 컬럼명 정의서, 테이블 정의서 작성
<화면 UI 설계>
게임을 구성하는 화면의 대략적인 설계 진행하였다.
- 게임 화면
- 아래는 메인 홈 화면, 로그인 후 화면, 맵 선택 화면, 차량 선택 화면, 난이도 선택 화면, 운전 결과 화면의 프로토 타입을 확인할 수 있다.
- 이 외에도 회원가입 화면, 마이페이지 화면, 운전 정지 화면이 있다.
- 게임 맵 화면
- 일반 도로 구역: 실제 도로 운전 주행 사진을 참고하여 설계 (참고 사이트: http://www.burimdrive.com/bbs/content.php?co_id=06_01)
- 어린이 보호 구역: 일반 도로에서 골목 한 부분을 어린이 보호 구역으로 한다.
- 주차장: 실제 주차장 사진을 참고하여 설계(연수구시설안전관리공단 사이트 참고https://www.ysfsmc.or.kr/business/parking/public.jsp)
- 주차 공간을 난이도에 따라 다르게 하여 설계
- 산간 S자 도로: 사진을 참고하여 설계(참고 사이트: https://m.ilyo.co.kr/?ac=article_view&entry_id=56260)
<이벤트(Event) 설계>
아래의 이벤트를 랜덤하게 발생하도록 하여
- 일반 도로 구역: 아래의 이벤트의 횟수로 난이도를 조절한다.
- 갓길 불법 주차: 우회전 및 좌회전했을 경우 불법 주차 차량이 바로 있는 이벤트
- 주변 차량 차선 변경: 깜빡이 없이 끼어드는 이벤트
- 도로에 갑자기 튀어나오는 사람
- 횡단보도: 횡단 보도가 빨간 불일때 사람이 있는가? 사람이 없는가?
- 도로 공사 등의 방해물이 도로 중간에 있는 경우
- 어린이 보호 구역
- 난이도 하: 튀어나오는 사람1번
- 난이도 중: 갓길 불법 주차 & 튀어나오는 사람(1번)
- 난이도 상: 갓길 불법 주차 & 튀어나오는 사람(2번) & 시야 좁게 하기
- 주차장
- 난이도 하: 주변에 차량이 없는 경우
- 난이도 중: 갓길 주차
- 난이도 상: 양옆에 좁게 차량이 있는 경우
- 야간 도로
- 튀어나오는 야생 동물과 반대편 차량에서 오는 라이트 이벤트의 횟수를 조절하여 난이도 결정
<운전 채점 기준표>
사용자의 운전 실력을 채점하는 알고리즘을 구현하기 위해 우선 채점 기준표를 작성하였다.
구체적인 사항은 아래 첨부파일과 같다
- 일반 도로 구역
내용 | 감점되는 점수 |
게임 시작 후 3초 이내 출발하지 않는 경우 | -10 |
좌/우회전 전에 깜빡이를 키지 않는 경우 회전 방향 알린 후(내비게이션) 키지 않았는지 검사. |
-5 |
운전하는 차량이 차선을 벗어나는 경우 차선을 벗어나는 정도가 어느 정도 인지. 차선 바깥으로 collider 설정? |
-15 |
주행 중 급정지를 하는 경우 횡단보도 앞이 아닌데 브레이크를 밟아 속도가 10이하로 떨어지는 경우 |
-10 |
일정 범위의 속도에서 벗어나서 주행을 하거나 속도 제한 규칙을 어기는 경우(5초 이상) 적정 속도 범위 정하기 |
-5 |
횡단보도에서 신호를 위반하는 경우 | -7 |
사물이나 사람과 충돌하는 경우 | 실격 |
무리하게 끼어들기를 시도하는 경우 | -7 |
올바르게 기어 변속을 하지 않는 경우 | -5 |
- 어린이 보호 구역
내용 | 감점되는 점수 |
게임 시작 후 3초 이내 출발하지 않는 경우 | -10 |
좌/우회전 전에 깜빡이를 키지 않는 경우 | -5 |
운전하는 차량이 차선을 벗어나는 경우 차선을 벗어나는 정도가 어느 정도 인지. 차선 바깥으로 collider 설정? |
-15 |
주행 중 급정지를 하는 경우 횡단보도 앞이 아닌데 브레이크를 밟아 속도가 10이하로 떨어지는 경우 |
-10 |
일정 범위의 속도에서 벗어나서 주행을 하거나 속도 제한 규칙을 어기는 경우(5초 이상) | -5 |
어린이 보호 구역에서 속도 제한을 어기는 경우 | 실격 |
횡단보도에서 신호를 위반하는 경우 | -7 |
사물이나 사람과 충돌하는 경우 | 실격 |
무리하게 끼어들기를 시도하는 경우 | -7 |
올바르게 기어 변속을 하지 않는 경우 | -5 |
- 주차장
내용 | 감점되는 점수 |
게임 시작 후 3초 이내 출발하지 않는 경우 | -10 |
좌/우회전 전에 깜빡이를 키지 않는 경우 회전 표시 알린 후 키지 않았는지 검사 |
-5 |
운전하는 차량이 차선을 벗어나는 경우 차선을 벗어나는 정도가 어느 정도 인지. 차선 바깥으로 collider 설정? |
-15 |
주행 중 급정지를 하는 경우 횡단보도 앞이 아닌데 브레이크를 밟아 속도가 10이하로 떨어지는 경우 |
-10 |
일정 범위의 속도에서 벗어나서 주행을 하거나 속도 제한 규칙을 어기는 경우(5초 이상) | -5 |
사물이나 사람과 충돌하는 경우 | 실격 |
올바르게 기어 변속을 하지 않는 경우 | -5 |
주차 중 다른 차량과 충돌하는 경우 | |
주차 구역에 정확하게 주차하지 않는 경우 Collider를 선 밖에 설정하고 충돌하는지 판단 또는 차량 객체의 rotation 값에 따라서 성공 또는 실패 판단 |
- 산간 S자 도로
내용 | 감점되는 점수 |
게임 시작 후 3초 이내 출발하지 않는 경우 | -10 |
좌/우회전 전에 깜빡이를 키지 않는 경우 회전 표시 알린 후 키지 않았는지 검사 |
-5 |
운전하는 차량이 차선을 벗어나는 경우 차선을 벗어나는 정도가 어느 정도 인지. 차선 바깥으로 collider 설정? |
-15 |
주행 중 급정지를 하는 경우 횡단보도 앞이 아닌데 브레이크를 밟아 속도가 10이하로 떨어지는 경우 |
-10 |
일정 범위의 속도에서 벗어나서 주행을 하거나 속도 제한 규칙을 어기는 경우(5초 이상) | -5 |
갑자기 튀어나오는 동물과 충돌하는 경우 | ?? |
올바르게 기어 변속을 하지 않는 경우 | -5 |
* 이외의 설계에 대한 자세한 사항은 첨부 파일에 구체적으로 나와있음
[앙큼불여우]SW개발_HW제작설계서_일반_[최종완성].pptx
5.13MB
[앙큼불여우]2021년 한이음 ICT멘토링 프로젝트 중간보고서최종완성].hwp
1.09MB
'Project > VR 기반 운전 시뮬레이션: 안전 "안전 운전만해" 프로젝트' 카테고리의 다른 글
[Part 8] 주차장 맵 제작 및 이벤트 구현: Waypoint System (0) | 2022.05.14 |
---|---|
[Part 7] 하드웨어 장비 구매, 역할 설정, 일정 정리 및 공부 (0) | 2022.05.14 |
[Part5] 회의(Unity Asset 그래픽 관련, 장비 관련 회의) (0) | 2022.01.21 |
[Part 4] 회의 (wbs 작성, 유저 시나리오, 역할 나누기, 간트 작성) (0) | 2022.01.19 |
[Part3] 세번째 회의 - 프로젝트 방향 제대로 설정 (0) | 2021.12.30 |