본문 바로가기
카테고리 없음

[unity] sound project - 6 days

by 배애앰이 좋아 2020. 8. 3.
반응형

한번 간략한 설명 사진 :

 

 

현재 진행 단계 : Player에 있는 Listener Componet를 이용하여 소리 측정. 이때 가정 1. 원본 소리인 Sound 1만 재생 / 가정 2. 사본 소리인 Sound 2만 재생 / 가정 3. 원본, 사본 소리 동시에 적용하여 아래 plane에 그라데이션으로 색깔 표시해주는데 붉은 색에 가까울수록 소리가 크게 파란 색에 가까울 수록 소리가 작게 들린다고 설정

 

전 low color map 결과 결과 :

 

 

1번째 사진 : Sound 1에 대한 소리 측정

2번째 사진 : 위치에 대한 계산만 한 Sound 2에 대한 소리 측정

3번째 사진 :위치 및 소리 감소까지 다 계산하여 벽 안 쪽(Sound 1)과 바깥 쪽(Sound 2)을 따로 계산한 소리 측정

 

수정한 후 low color map 결과 사진 : 

 

 

바뀐 이유: 기존의 계산에서는 거리를 계산하는 부분들이 있어서 더 결과가 잘 나왔던 부분이 존재. 바뀐 후로 순수하게 소리만을 계산하여 표현.

 

1번째 사진 : Sound 1에 대한 소리 측정

2번째 사진 : 위치와 소리 감소까지 다 계산 한 Sound 2에 대한 소리 측정

3번째 사진 :위치 및 소리 감소까지 다 계산하여 벽 안 쪽(Sound 1)과 바깥 쪽(Sound 2)을 따로 계산한 소리 측정

 

< 소리 측정 방식 >

 

기존 Plane 하나하나 돌아가면서 Component 추가해주고 삭제해주면서 소리를 측정해줌. -> 제대로 소리 측정이 안되며 계산 량이 많이 들음.

 

변경 후 : Component를 단 player의 위치를 이동시켜서 소리를 측정해줌. -> 소리가 제대로 측정이 되며 Plane의 위치에 따라서 소리 차이를 느낄 수 있음.

 

 

 

< high color map 및 problem >

 

수정한 후 low color map 결과 사진를 high quality로 바꾼 결과 :

 

 

1번째 사진 : Sound 1에 대한 소리 측정

2번째 사진 : 위치와 소리 감소까지 다 계산 한 Sound 2에 대한 소리 측정

3번째 사진 :위치 및 소리 감소까지 다 계산하여 벽 안 쪽(Sound 1)과 바깥 쪽(Sound 2)을 따로 계산한 소리 측정

 

문제점 : 예측한 결과로는 Area 1 지역이 붉은 색으로 퍼지고 Area 2가 노란색으로 퍼질 것이라고 생각함.

 

결과를 본 후 생각한 문제점 :

1. 소리 측정의 문제

2. 소리를 감소시킬 때 최대 소리 값에서 부딪친 ray의 개수 만큼 특정 값을 감소시켰는데 이때 최대 소리 값이 아니라 Area 2 위치에서 들리는 Sound 1 소리에서 감소를 시키는 부분을 고려하지 못함.

 

 

추후 계획 :

1. 위 테스트가 해당 맵이 예상한 결과인 Area 1 지역이 붉은 색으로 퍼지고 Area 2가 노란색으로 퍼지는 결과가 나올 수 있도록 여러 방법을 통해 테스트 해 볼 예정입니다.

2. 아직 사소하게 오류가 걸리거나 시각적으로 보여지는 부분에서 아쉬운 부분들을 수정할 예정입니다.

 

< 그 외 >

 

1. plane 생성 방식 변경

 

 

인터페이스로 사용자로부터 가로 및 세로의 플랜 개수를 몇 개로 할 것인지 입력 받아 구현. 

 

2. 장애물의 위치가 바뀔 때마다의 소리 변화

장애물을 검사하는 ray가 충돌되는 개수가 다를 때마다 소리의 변화를 알 수 있다.

충돌되는 ray가 적을 수록 소리가 커지며 많을 수록 소리가 작아진다.

 

 

 

3. 장애물의 회전이 바뀔 때마다의 소리 변화

장애물 방향이 고려되어서 굴절 벡터가 변하고 그에 맞춰 Sound 2 위치가 바뀌는 것을 알 수 있음.

하지만 180 이상의 값이 나오면 제대로 계산이 되지 않는 것을 알 수 있음.(후 수정 필요)

 

 

 

반응형

댓글