Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Speech to Textureで 思い通りに世界を改変しよう
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
donabe
October 08, 2023
Technology
41
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Speech to Textureで 思い通りに世界を改変しよう
donabe
October 08, 2023
More Decks by donabe
See All by donabe
Unityがマルチプラット フォームビルドできる理由は? よく聞くIL2CPPって? 調べてみました!
donabe3
0
30
ハッカソン請負人の 開発ルーティンを紹介!
donabe3
0
80
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
360
OutOfRange 【プロトスプリントリーグ】
donabe3
0
110
Unityで都市開発シミュレーションゲーム開発をしてみよう
donabe3
0
490
現実 VS バーチャルのマルチプレイゲームを作ろう
donabe3
0
210
院試までなにやったか
donabe3
0
49
XR Interaction toolkit & XRHands & Passthrough API で MR 開発
donabe3
0
290
XRの魅力を語りたい
donabe3
0
71
Other Decks in Technology
See All in Technology
MIRU 2026 チュートリアル
keisuke198619
0
880
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.2k
Goでデータパイプラインを作ろう
sansantech
PRO
1
410
TypeScript入門 2026
recruitengineers
PRO
3
550
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
370
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
ブラウザ研修 2026
recruitengineers
PRO
6
910
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.4k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
240
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
460
Pavlokで始める電撃駆動開発
sgrsn
0
190
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
660
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
550
New Earth Scene 8
popppiees
3
2.5k
We Are The Robots
honzajavorek
0
300
Chasing Engaging Ingredients in Design
codingconduct
0
260
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Context Engineering - Making Every Token Count
addyosmani
9
1k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Product Roadmaps are Hard
iamctodd
55
12k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
Speech to Textureで 思い通りに世界を改変しよう 土鍋 2023/10/08 Zli 大LT
自己紹介 名前: 土鍋 (渡辺雄大) 学年: 学部4年(28期) 所属: A-PxL元代表、Zli、Iwaken Lab. 興味:
XR、Unity、ゲーム、CG、映像 趣味: ゲーム、ゲーム開発、鉄道旅行、Vtuber Twitter(X): @donadonadonabe Blog: https://donabenabe.hatenablog.com 近況: 筑波大学 大学院 合格しました 2
世界を思い通りに改変したいですよね?
現在の研究 空間デザインにおいて抽象的な想像を具現化するのは難易度が高い 直感的な指示によって想像通りなテクスチャ変更を可能にしたい 音声認識とハンドトラッキング、画像生成AIを用いて実装する
デモ
全体の構成 HandTracking
Speech to Text 1. 録音(AudioClip) 2. AudioClipからWaveへの変換 3. Whisper API
(Speech to Text) 4. レスポンスのtextが返ってくる 参考: Unityで録音アプリを作成 - YKpages
AudioClipをWAVEファイルに変換 録音データはUnity独自のAudioClip形式 Whisper APIは.mp3や.wavなどに対応している → 変換が必要 Wave Audio Clip ChunkSize
44 + AudioClip.samples * AudioClip.channels * BitsPerSample / 8 NumChannels AudioClip.channels SampleRate AudioClip.frequency ByteRate AudioClip.samples * AudioClip.channels * BitsPerSample / 8 BlockAlign AudioClip.channels * BitsPerSample / 8 Subchuk2Size AudioClip.samples * AudioClip.channels * BitsPerSample / 8 参考: 【Unity】AudioClipからWAVEファイルを生成する - はなちるのマイノート
全体の構成 HandTracking
ChatGPTでPrompt形式に変換 ChatGPT APIを叩いてるだけ Prompt 「送信されたテキストに基づいて、画像生成AI用のプロンプトを作成する。 ただし、プロンプトのみを出力する。英語、短い単語をカンマ区切りで。」 ChatGPT APIをUnityから動かす。|ねぎぽよし
全体の構成 HandTracking
Text to Image(Stable Diffusion) AUTOMATIC1111の「Stable Diffusion web UI API」 https://github.com/AUTOMATIC1111/stable-diffusion-webui
Cloneして ローカルでAPIサーバーを立てる
リクエスト セットアップ内容のJson → 今回はプロンプトのみ使用 その他の値はデフォルト 今後は選択したオブジェクトのテクスチャサイズ に応じて、画像を生成するようにしたい
レスポンスからUnityのテクスチャを生成 imageはBase64で返ってくるのでbyte配列に変換してあげる。 byte配列をテクスチャに変換 オブジェクトのMeshRendererのマテリアルのBaseMapに 生成したテクスチャをセット byte[] data = Convert.FromBase64String (imageData);
Texture2D texture = new Texture2D(1, 1); texture.LoadImage(data); nowSelectGameObject .GetComponent<MeshRenderer>().materials[0] .SetTexture("_BaseMap",result);
全体の構成 HandTracking
3Dスキャン Room Plan: Apple ARKitの機能の一つ LiDARセンサーでスキャンし、部屋の家具を仮想空間に再現する
ハンドトラッキング 指差したオブジェクトを選択してテクスチャを変えたい。 右手 1. 人差し指だけ伸びてるか? 2. 指からRayを発射 3. 当たったオブジェクトを取得 左手
親指と人差し指をくっつけると 録音開始・停止
今後の展望 オブジェクトの形状に合うようにテクスチャを生成するようにしたい
参考資料 • Unityで録音アプリを作成 - YKpages • 【Unity】AudioClipからWAVEファイルを生成する - はなちるのマイノート •
【Unity × ChatGPT API × WhisperAPI】音声認識AIアシスタントを実装する • ChatGPT APIをUnityから動かす。|ねぎぽよし • UnityのMicrophoneで正確な録音時間を取得する方法 - Qiita • stable diffusion webuiのAPIを使う方法 • UnityWebRequest で簡単 HTTP(POST)通信 | 株式会社ビヨンド • Unityでbyte配列からテクスチャ作ってスプライト化するまでやる · GitHub • Unity + Meta Quest開発メモ
ご清聴ありがとうございました