2019년 1월 16일 수요일

유니티로 가상현실 화재 시뮬레이션 만들기

이 글은 2018년 작년에 만든, 가상현실 가상현실 화재 시뮬레이션 만드는 과정을 이야기해요. 지금 방학이라 해왔던것 정리해 보려 해요.

시작
이 프로그램은 겨울들어 발생했던 안타까운 화재 사고를 가상현실로 직접 체험할 수 있는 시뮬레이션이예요. 작년 겨울에는 다음과 같은 많은 화재가 발생했죠

‘종로 고시원 화재사건’으로 바라본 도시 취약계층의 실상(주간현대, 2018년)

사실 화재가 나서 사고를 당한다는 것이 어떤 느낌인지는 직접 당해보지 않는 이상 생각하기 어려울 꺼예요. 사고 상황이 얼마나 급하고 위기상황이었는 지, 어떤 느낌이었는 지를 사람들이 느껴보면 좋을 것 같아, 프로그램을 만들어 보기로 했어요.

재료
재료는 다음과 같아요. 대부분 오픈소스이거나 공짜예요.

1. 유니티
2. 유니티 어셋
3. 아두이노
4. 연기 가스 센서
5. 스케치업

유니티와 스케치업은 무료 프로그램이예요. 유니티는 게임 만들때 많이 사용하죠. 많은 따라하기 영상이 있어 조금만 시간을 쓰면 익숙해 지는 데 어렵지 않아요.
스케치업은 3차원 모형을 디자인할 때 주로 써요.

아두이노와 가스 센서는 연기나 가스가 있으면 화재나는 곳이 화재가 났다고 알려주기 위해 사용해요. 연기가 발생하면, 센서가 연기를 감지해요. 그리고, 가상현실에서 화재나는 것처럼 상황이 바뀌는 거예요.

소스코드는 깃허브에 공유했으니 참고바랍니다.

작업 방법
스케치업으로 학교, 교실, 고시원같이 불이 나면 어떻게 될지 시뮬레이션해보고 싶은 곳을 디자인해요.

유니티로 디자인된 3차원 모형을 가져와요.

유니티에서 적당한 곳에 조명을 설치해요. 가져온 모형은 static 상태로 바꾸고, 반사 재질을 모형에 넣어, 조명이 반사되도록 만들어요.


유니티 어셋에서 사람을 가져와요. 그리고, 사람을 움직일 수 있도록 스크립트를 약간 수정해요.


아두이노에 유니티로 센서값을 전달하는 코드를 넣어요.


유니티 조명을 선택해, 아두이노에서 얻은 센서 값을 이용해 조명 색상을 바꾸게 해요.


유니티 어셋에서 연기와 불을 가져와요. 그리고, 연기와 불이 많이 보이도록 설정값을 바꿔요.

유니티는 많은 가상현실 장치를 무료로 지원해요. 적당한 장치를 유니티 어셋에서 가져와서 설정해요.

이제 잘 동작하는 지 테스트해요.

마무리
실제로 가상현실 기기를 쓰고 화재 시뮬레이션 속에 있으면 정말 답답하고 얼마나 힘들었는 지 느낄 수 있어요. 그리고, 화재에서 대피하는 것이 얼마나 어려운지 느낄 수 있어요.
탈출하는 문이나 길에 장애물이 많으면 탈출하지 못해 다치기도 하죠. 이렇게 가상현실은 직접 그곳에는 없지만, 그곳에 있는 것처럼 체험할 수 있어요.

사람이 많은 학교와 같은 건물을 디자인할 때 이런 가상현실을 사용하면, 좀 더 많이 사람들이 대피할 수 있도록 문제를 일찍 발견할 수 있을 꺼예요.


댓글 없음:

댓글 쓰기