[Unity] 성우 하카슨이'남자친구 귀신의 집'에 참여했습니다.

2월 26, 27일 열리는 #rakkathon2 성우 하카슨에 참가했습니다.
팀파이어 이벤트에는'남자친구 힘의 귀신의 집'이라는 게임이 있습니다.

게임 내용


슬라이드 공유 숙지
http://www.slideshare.net/ajimitei/ss-58807419

메시지


성우의 목소리로 앱을 제작한다.
이런 내용은 1개 팀에 3차례, 30분까지 수록권이 부여돼 매우 이례적(세계 최초?)라고 해커슨을 불렀다.
유니티도 협찬한 만큼 게임 잼 색깔이 있고, 게임이 많은 해킹슨도 드물다.

조를 나누다


전체 25개 팀, 20개 팀 정도는 사전 팀 등록 상황입니다.
나는 개인적으로 참가했는데 좌석 순서대로 팀을 배치한 것 같다.
4인석, 인근 파티 2명, 그리고 1명
같이 하자, 그 자리에 두 팀이 있다(세 개야?)팀으로 7인조 팀이 됐다.
(파티 23+24 연합=47팀 fourseven)

각 대오마다 회의실을 배치했는데 벽은 온통 백판이다.
기획한 학생 기획사 1명, 창의학과 1명,
프로그래머 4명, 목소리 1명의 느낌.
다들 약간 유니티한 느낌인데 유니티.
Live 2D는 사용했고 자산은 이것저것 부추겼다.

수록하다


수록할 내용을 결정하다


정보 공유는 슬랙을 사용했고 규격은 구글 문서와 전자 표를 사용했다.
파일 공유는bitbucket을 사용했습니다.(사람이 많아서 계획을 바꿔 보았다.)
그리고 각 장면마다 모두 함께 대사를 생각하는 형식으로 진행됐다.
구글 문서에 익명으로 접근하면 사람들이 마음대로 망상하는 대사가 기록됩니다.
최초의 수록에 전원이 참가했다.

수록된 파형 커팅



최초의 파형은 임시 데이터로 91파형으로 바뀌었다.
왜냐하면 이런 이름 규칙과 시간이 없어요.
キャラ名/シチュエーション名/セリフのローマ字読み(バリエーションは番号づけ)
kanojyo/start/kocchi.wav
okan/end/kanojyodatoomottazannenn.wav
이런 식으로 파형명으로 가능한 이름을 추측해 준비해 보자.
ADX2LE의 기능으로 폴더 이름과 파형 이름이 대기열 요청 이름이 되기 때문에 이 기능을 이용하여 프로그램도 대기열 이름으로 부를 수 있다.

음성 작업의 분업



성우 하카슨만이 할 수 있지만 소리를 조절하는 데는 시간이 오래 걸린다.
참가자들이 성우에 대한 애정이 깊어 노동시간에는 문제가 없었지만 결국 시간에 쫓겨 달아났다.
이번 팀은 인원이 많기 때문에 분업할 수 있다.
  • 지도(디자이너)
    수록된 사운드를 어떤 캐릭터의 어떤 타이밍에 배분하는지.
    최종 조정 등.
    구글 문서에 쓰여있습니다.
    수록에 참가하다.
  • 수록반(수록기사 1명)
    성우 목소리 녹음해.소리 깨지 마.
  • 기획자설
    그때 상황에 따라 조금씩 달라지는 등
    목록도 업데이트된 경우가 있는데 이번에는 생략합니다.
    (웨이브 컷 시 컷 그룹이 묻는 형식)
  • 웨이브 컷(사운드 편집 1명)
    음반은 재단 작업에 시간을 썼다.
    30분간 수록하는 데 1시간 정도 걸린다.
  • 시간이 없어서 리스트를 안 해요.
    분할은 로마자 웨이브화를 통해 파형을 판단할 수 있다.
    앞뒤 소리 없이 잘라주세요.
    (음질 조정 또는 혼성 제거를 하지 않음)
  • 게임에서의 공연 조정 (프로그래머 1명)
    프로그래머는 재생 시간과 재생 시간 같은 공연 시기를 조정해 주십시오.
  • 볼륨, 발음 관리(보이스 디자이너)
    ADX2LE에 카테고리, 발음 제한, 음량 조절 설정
    구글 문서에 대기열 이름 쓰기
  • 수록 환경


    회의실을 직접 사용했기 때문에 반응이 컸다.
    (바닥, 천장, 벽은 모두 단단한 재질이다)
    밖에서 달리는 오토바이 소리도 가려졌다.
    다만, 녹음하는 엔지니어가 있어서 마음이 놓입니다.
    우리 팀은 구글 문서에서 장면에 따라 대사 내용을 모집하고 수록할 때 컴퓨터에서 보면서 진행한다.
    (모니터를 하다가 컴퓨터 하드디스크에 접근하는 등급제 소음이 들렸는데 녹음한 자료는 문제가 없는 것 같다)
    파형이 잘린 이름의 로마자화와 폴더 이름 규칙을 결정해 174개의 파일을 완성했다.
    소리를 깨뜨린 물건은 사용하지 않는 방향으로 절단한다.
    메아리와 오토바이 소음을 없애는 물건도 버려라.

    기타 파티의 상황(파형수, 수록 방법 등)


    다른 팀은 왜 저래.
    친목회 에서 몇 개 팀 의 목소리 의 시작 책임자 에게 물었다
  • 200~300개의 질문이 나왔는데
  • 10분 정도 라디오 시나리오를 쓴 사람이 있다
  • 반응을 없애는 데 소비하는 사람이 있다
  • 3명이 각각 30개 정도를 제시했다.음향학 분석 도구(?)숫자 지정도 거론된다.
  • 그리고 ADX2LE를 사용하는 다른 파티도 있습니다
    이렇게 소리가 많으면 압축할 가능성이 있는 모양이다. 
    시나리오를 결정하는 상황에서 번호 관리, 변주곡 번호 등에 익숙해진 사람도 있는 것 같다.
    한 사람이 조립을 하면 자유롭게 이름을 결정할 수 있지만 어느 정도까지 파악해야 하는지, 명명 규칙 등이 관건이다.파티의 수량 경험치가 높아질 거예요.
    무엇보다 성우를 가장 좋아하는 사람들이 모였기에 무척 중시한다는 인상을 남겼다.잘 됐다.다시 했으면 좋겠어.
    수록준비, 수록후 편집(자르기, 조정, 소음 등)에 얼마나 걸리는지 등 많은 것을 배웠을 것이다.

    의 3D 사운드 테스트


    수록된 소리를 내보아라.역시 목소리가 좋네요.
    성우 힘이 대단해.
    Tospeak 합성음, 성우성(그녀, 엄마)
    비디오:

    높은 비용 지원



    360도 높이의 공중에서 회전하면 소리를 들을 수 있다
    캐릭터마다 충돌이 있어 스크립트에서 무작위로 출석을 부를 수 있습니다.

    실제 대화형 3D 사운드 환경



    고비용 상태로 터미널을 회전시키다.
    스피커 위치(터미널)가 실제로 360도 돌았기 때문에 그녀가 있는 방향에서 소리를 냈다는 것이다.
    스피커와 출력 채널의 수량은 단성도 (1ch) 가 될 수 있다.
    다중 모니터가 아니어도 360도 체험이 가능한데, 같은 이유는 눈앞의 소리만 잘 내면 OK라는 것이다.
    (앞뒤 좌우라서 2D일 수 있습니다.)

    사운드 시스템 설계


    이번에는 시간이 없어서 재료가 매우 방대하다
    아주 간단하게 하고 싶어서 아래의 목소리 매니저.
    공연 담당
  • 삽입된 사람(Unity 스크립트를 쓴 사람)에게 재생과 시간 조정을 무작위로 선택한다.
  • 음량과 발음 관리, 봉투만 ADX2LE의 도구 옆에 놓고 설정합니다.
  • 재생성만 허용되며, 기타 모든 기능을 숨깁니다.
    인터페이스(조작하는 부분)가 매우 간단해져서 더욱 빨리 이해할 수 있다.
    정시와 전환 등 제어는 다른 이미지 처리와 마찬가지로 Unity 스크립트를 통해 할 수 있습니다.(사운드 프로그래머가 아니어도 사용 가능)

    간단한 사운드 관리자


    스크립트에서
    example.cs
    SoundManager.Play("arigato");
    
    이렇게 하면'감사합니다'를 재생할 수 있습니다.
    SoundManager.cs
    using UnityEngine;
    using System.Collections;
    
    public class SoundManager : MonoBehaviour {
        CriAtomSource source; 
        public static SoundManager main = null;
    
        void Awake()
        {
            if (main == null)
            {
                if (main != null)
                {
                    GameObject.Destroy(main.gameObject);  
                }
                main = this;
                GameObject.DontDestroyOnLoad(this.gameObject);
            } else
            {
                GameObject.Destroy(this.gameObject);
                return;
            }
        }
    
        void Start () {
            source = this.gameObject.AddComponent<CriAtomSource>();
        }
    
        /// <summary>
        /// 再生関数
        /// </summary>
        /// <param name="cueName">Cue name.</param>
        /// <param name="atomSource">AtomSourceを渡せばその位置から再生も可能</param>
        static public void Play(string cueName,CriAtomSource atomSource = null)
        {
            if(atomSource != null)
            {
                //Debug.Log("atomsourceあり" + atomSource.transform.position);
                atomSource.cueSheet = "CueSheet_0";
                atomSource.cueName = cueName;
                atomSource.use3dPositioning = true;
                atomSource.Play();
            } else {
                main.source.cueSheet = "CueSheet_0";
                main.source.cueName = cueName;
                main.source.Play();
            }
        }
    }
    

    안목이 있으면 재생한다


    RaycastManager.cs
    Ray ray = mainCamera.ViewportPointToRay (new Vector3 (0.5F, 0.5F, 0));
    RaycastHit hit;
    if (Physics.Raycast (ray, out hit)) {
     if(hit.transform.name == "Kanojyo")
      {
         SoundManager.Play("kocchidayo");
      }
    }
    
    이렇게 진행됐습니다.
    목소리
    분류된 입방체'보이스'를 준비해 1음으로 만들면 소리가 겹치지 않는다.후행이 우선이기 때문에 다음 소리가 울리면 앞 소리가 중간에 끊긴다.

    BGM 재생/정지


    Bgm.cs
    SoundManager.Play("bgm"); // 再生
    SoundManager.Play("stopbgm"); // 停止
    SoundManager.Play("goodend"); // 正解
    SoundManager.Play("badend"); // 間違い
    
    음악의 통제는 바로 이런 대열이다.
    분류된 입방체'bgm'를 준비해 1개의 음으로 만들고, 정지음도 클럽의 재생으로 진행한다.

    점심은 돈가스.



    이곳의 돈가스는 아주 맛있다.첫날 점심에 갔어요.
    http://futako-tamagawa.net/detail/index_22.html

    최후



    즉석팀이지만 좋은 걸 만들 수 있어서 다행이에요.
    12시쯤에 움직일 수 있는 게 하나 있어서 안심할 수 있어서 다행이에요.태연자약하다.

    좋은 웹페이지 즐겨찾기