๐Ÿ“„

Synesthesia NRT

Mark as Draft

์ •์˜

Unreal Engine ๋‚ด๋ถ€์—์„œ Audio ํŒŒ์ผ์˜ ์Œํ–ฅ์  ํŠน์„ฑ์„ Runtime ์ด์ „์— ๋ฏธ๋ฆฌ ๋ถ„์„ํ•˜์—ฌ ์ง„ํญ ๋ฐ ์ฃผํŒŒ์ˆ˜ ๊ฐ™์€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜๊ณ  ์ €์žฅํ•˜๋Š” ๋น„์‹ค์‹œ๊ฐ„ ์˜ค๋””์˜ค ๋ถ„์„
๐Ÿ“„
Plug-In
์ด๋‹ค.

์„ค๋ช…

๊ณผ๊ฑฐ ๊ฒŒ์ž„ ํ™˜๊ฒฝ์—์„œ๋Š” ์‹ค์‹œ๊ฐ„์œผ๋กœ ์˜ค๋””์˜ค ํŒŒํ˜•์„ ๋ถ„์„ํ•˜์—ฌ ์‹œ๊ฐ ํšจ๊ณผ ์‹œ์Šคํ…œ๊ณผ ์—ฐ๋™ํ–ˆ๋‹ค.
์ด๋Š” CPU์— ๋ง‰๋Œ€ํ•œ ์—ฐ์‚ฐ ๋ถ€ํ•˜๋ฅผ ์ผ์œผํ‚ค๊ณ  ์ œํ•œ๋œ ํ•˜๋“œ์›จ์–ด ํ™˜๊ฒฝ์—์„œ ์‹ฌ๊ฐํ•œ ํ”„๋ ˆ์ž„ ์ €ํ•˜๋ฅผ ์œ ๋ฐœํ–ˆ๋‹ค.
Epic Games๋Š” ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด Editor ํ™˜๊ฒฝ์—์„œ ์˜ค๋””์˜ค๋ฅผ ๋ฏธ๋ฆฌ ์—ฐ์‚ฐํ•˜์—ฌ Data Asset์œผ๋กœ ๊ตฌ์›Œ๋‚ด๋Š” ์‹œ์Šคํ…œ์„ ๋„์ž…ํ–ˆ๋‹ค.
์ด Plugin์€ ๋ฌด๊ฑฐ์šด ๋””์ง€ํ„ธ ์‹ ํ˜ธ ์ฒ˜๋ฆฌ ์—ฐ์‚ฐ์„ Runtime ์ „์— ์˜คํ”„๋ผ์ธ์œผ๋กœ ์™„๋ฒฝํžˆ ๋๋งˆ์นœ๋‹ค.
ํ˜„์—… Pipeline์—์„œ๋Š” ๋ฆฌ๋“ฌ ๊ฒŒ์ž„์˜ ๋…ธํŠธ ์ƒ์„ฑ์ด๋‚˜ ์˜ค๋””์˜ค ๋ฐ˜์‘ํ˜• ์‹œ๊ฐ ํšจ๊ณผ๋ฅผ ๊ตฌ์ถ•ํ•  ๋•Œ ์„ฑ๋Šฅ ์ €ํ•˜ ์—†์ด ์ฒญ๊ฐ Data๋ฅผ ์‹œ๊ฐ Data๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•ต์‹ฌ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ๋กœ ์ž‘๋™ํ•œ๋‹ค.

์›๋ฆฌ

  1. ์˜คํ”„๋ผ์ธ ๋ฐ์ดํ„ฐ ์ถ”์ถœ ์—ฐ์‚ฐ
    1. ๊ฒŒ์ž„ ํ”Œ๋ ˆ์ด ์ค‘์ด ์•„๋‹Œ Editor์—์„œ Audio ํŒŒ์ผ์„ ์ž„ํฌํŠธํ•˜๋Š” ์ˆœ๊ฐ„ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ๋ถ„์„์„ ์™„๋ฃŒํ•˜์—ฌ ์‹ค์ œ Runtime CPU ์ ์œ ์œจ์„ ์˜์œผ๋กœ ์ˆ˜๋ ด์‹œํ‚จ๋‹ค.
  1. ํƒ€์ž„์Šคํƒฌํ”„ ๊ธฐ๋ฐ˜ Caching
    1. ๋ถ„์„๋œ Data ํฌ์ธํŠธ๋“ค์„ ์˜ค๋””์˜ค์˜ ์‹œ๊ฐ„ ์ถ•๊ณผ ๋งค์นญ๋˜๋Š” ๋ฐฐ์—ด ํ˜•ํƒœ์˜ Cache๋กœ ์ €์žฅํ•˜์—ฌ ๋กœ์ง์ด ์š”๊ตฌํ•  ๋•Œ ํŠน์ • ์‹œ๊ฐ„๋Œ€์˜ Data๋ฅผ ์ฆ‰๊ฐ์ ์œผ๋กœ ๊บผ๋‚ด์–ด ์‚ฌ์šฉํ•œ๋‹ค.
  1. Constant Q Transform ์ ์šฉ
    1. ์ธ๊ฐ„์˜ ์ฒญ๊ฐ ์ธ์ง€ ํŠน์„ฑ์— ๋งž์ถฐ ์ €์Œ์—ญ๋Œ€๋Š” ์„ธ๋ฐ€ํ•˜๊ฒŒ ๊ณ ์Œ์—ญ๋Œ€๋Š” ๋„“๊ฒŒ ์ฃผํŒŒ์ˆ˜๋ฅผ ๋ถ„ํ• ํ•˜๊ณ  ๋ถ„์„ํ•˜์—ฌ ์Œ์•…์ ์ธ ์ŠคํŽ™ํŠธ๋Ÿผ Data์˜ ์‹ค๋ฌด์  ์ •ํ™•๋„๋ฅผ ๊ทน๋Œ€ํ™”ํ•œ๋‹ค.
  1. ๋‹ค์ค‘ ํŠน์„ฑ ๋ชจ๋“ˆํ™” ๋ถ„๋ฆฌ
    1. ํ•˜๋‚˜์˜ Audio ํŒŒ์ผ์—์„œ
      ๐Ÿ“„
      Loudness - LU
      ๋ฐ
      ๐Ÿ“„
      Pitch
      ๊ทธ๋ฆฌ๊ณ  Onset ๋“ฑ ์„œ๋กœ ๋‹ค๋ฅธ ์„ฑ์งˆ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๊ฐœ๋ณ„์ ์ธ Asset์œผ๋กœ ๋…๋ฆฝ์‹œ์ผœ ํšจ์œจ์ ์ธ ๋…ผ๋ฆฌ ๋กœ์ง ๊ตฌ์„ฑ์„ ๋•๋Š”๋‹ค.

๊ตฌ์กฐ

ย 

์˜ˆ์‹œ

Rhythm Game ์ ˆ์ฐจ์  ๋…ธํŠธ Spawn

๋ฐฐ๊ฒฝ์Œ์•…์˜ ๋“œ๋Ÿผ ํƒ€๊ฒฉ ์‹œ์ ์„ ๊ธฐํš์ž๊ฐ€ ์ˆ˜์ž‘์—…์œผ๋กœ ๋ฐฐ์น˜ํ•˜๋ฉด ๋ง‰๋Œ€ํ•œ ์ธ๋ ฅ์ด ์†Œ๋ชจ๋œ๋‹ค. Onset NRT Asset์„ ์ƒ์„ฑํ•˜์—ฌ ์Œ์•… ํŒŒ์ผ์˜ ํƒ€๊ฒฉ ์ง€์  ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ์ถ”์ถœํ•˜๊ณ  ๋ฐฐ์—ด๋กœ ์ €์žฅํ•œ๋‹ค. ๊ฒŒ์ž„ ํ”Œ๋ ˆ์ด ์‹œ Blueprint๊ฐ€ ์ด Data๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ์ฝ์–ด ์ •ํ™•ํ•œ ๋ฌผ๋ฆฌ์  ํƒ€์ด๋ฐ์— ๋…ธํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ž๋™ํ™” Pipeline์„ ๊ตฌ์ถ•ํ•œ๋‹ค.

Audio ๋ฐ˜์‘ํ˜• Niagara Rendering

์ฝ˜์„œํŠธ์žฅ ํ™˜๊ฒฝ์—์„œ ์Œ์•…์˜ ๋ฒ ์ด์Šค ์ฃผํŒŒ์ˆ˜์— ๋งž์ถฐ ์กฐ๋ช…์ด ๊นœ๋นก์ด๋Š” ํšจ๊ณผ๋ฅผ ์„ค๊ณ„ํ•œ๋‹ค. Constant Q NRT๋ฅผ ํ†ตํ•ด ์ €์Œ์—ญ๋Œ€ ์—๋„ˆ์ง€๊ฐ€ ๊ธ‰์ฆํ•˜๋Š” ๊ตฌ๊ฐ„์˜ ์ง„ํญ Data๋ฅผ Cachingํ•œ๋‹ค. Particle ์‹œ์Šคํ…œ๊ณผ ์—ฐ๋™ํ•˜์—ฌ ์ง„ํญ ์ˆ˜์น˜๊ฐ€ ๊ธฐ์ค€์น˜๋ฅผ ๋ŒํŒŒํ•  ๋•Œ๋งˆ๋‹ค ๋ฐฉ์ถœ๋Ÿ‰ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‹ค์‹œ๊ฐ„ ์—ฐ์‚ฐ ์—†์ด ์ฆ‰๊ฐ์ ์œผ๋กœ ์ œ์–ดํ•œ๋‹ค.

NPC ๋ฆฝ์‹ฑํฌ Animation ์ž๋™ํ™”

์ˆ˜๋งŽ์€ ๋Œ€์‚ฌ ํŒŒ์ผ์— ์ผ์ผ์ด ์ž… ๋ชจ์–‘ Keyframe์„ ์žก๋Š” ๊ฒƒ์€ ์ž‘์—… ํšจ์œจ์„ ์‹ฌ๊ฐํ•˜๊ฒŒ ๋–จ์–ด๋œจ๋ฆฐ๋‹ค. Loudness NRT๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Œ์„ฑ ํŒŒ์ผ์˜ ์‹œ๊ฐ„ ํ๋ฆ„์— ๋”ฐ๋ฅธ ๋ณผ๋ฅจ Data๋ฅผ ์ถ”์ถœํ•œ๋‹ค. Character์˜ ํ„ฑ ๋ผˆ Animation ๋งค๊ฐœ๋ณ€์ˆ˜์— ์ด ๋ณผ๋ฅจ Data๋ฅผ ์ˆ˜ํ•™์ ์œผ๋กœ ๋ฐ”์ธ๋”ฉํ•˜์—ฌ ๋Œ€์‚ฌ์˜ ํฌ๊ธฐ์— ๋น„๋ก€ํ•ด ์ž…์ˆ ์ด ์ž๋™์œผ๋กœ ์›€์ง์ด๊ฒŒ ๋งŒ๋“ ๋‹ค.
Mark as Published
ย