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
キューブマッピング で鏡のような映り込みを表現
Search
akatsukinewgrad
March 05, 2021
Programming
2.2k
0
Share
キューブマッピング で鏡のような映り込みを表現
akatsukinewgrad
March 05, 2021
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
160
成果発表資料.pdf
akatsukinewgrad
0
2.2k
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
0
640
正規表現とReDoS.pdf
akatsukinewgrad
0
620
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
680
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
600
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
770
7分でわかるアカツキゲームス
akatsukinewgrad
0
630
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
1.1k
Other Decks in Programming
See All in Programming
20260514_its_the_context_window_stupid.pdf
heita
0
610
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
760
Agentic UI in the Frontend: Architectures with Open Standards @JAX 2026 in Mainz
manfredsteyer
PRO
0
100
〜バイブコーディングを超えて〜 チームで実験し続けたAI駆動開発
tigertora7571
0
190
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
170
Spec-Driven Development with AI Agents (Workshop, May 2026)
antonarhipov
3
320
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
360
空間オーディオの活用
objectiveaudio
0
140
From Formal Specification to Property Based Test
ohbarye
0
730
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
200
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.2k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
How to Ace a Technical Interview
jacobian
281
24k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
800
How to Talk to Developers About Accessibility
jct
2
190
Building an army of robots
kneath
306
46k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
560
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Writing Fast Ruby
sferik
630
63k
Transcript
キューブマッピング で鏡のような映り込みを表現 株式会社アカツキ 菱谷隼人
自己紹介 菱谷隼人 (ヒシヤハヤト) 業務 2018年度新卒入社 新規3Dゲームのクライアントエンジニア 主にグラフィックスとインゲームを担当 趣味 筋トレ バイク
ギター シェーダー
3DCG グラフィックスについて 最近のコンピュータグラフィックスの世界ってすごいですよね 実写と区別がつかない,というか実写をある意味超えるような表現もできちゃいます 僕は,今もなお目まぐるしい進化を続けているCGの世界が大好きです!
リアルタイムCGの世界でよく使われる キューブマッピングを紹介します
キューブマッピングとは 環境マッピングの技法の1つ ※環境マッピング:3Dモデルの表面に周りの景色を映り込ませること 本来,正確に映り込みを表現するにはレイトレーシングするしかない ※レイトレーシング:とある点が映す色を光線追跡して導き出すこと レイトレーシングをリアルタイムで行い続けるのは高負荷で現実的ではないので キューブマッピングを利用する場面が多い
キューブマッピングとは あらかじめ用意されたテクスチャを,あたかも映り込んでいるかのようにマッピングする https://wiki.popcornfx.com/index.php?title=File:V2040_cubemap.gif
キューブマッピングの原理 ①3Dモデルの法線ベクトルを軸に,視線ベクトルの反射ベクトルを算出 ②該当のテクセルをキューブマップからサンプリングする https://ja.wikipedia.org/wiki/%E7%92%B0%E5%A2%83%E3%83%9E%E3%83%83%E3%83%94%E3%83%B3%E3% 82%B0#/media/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Cube_mapped_reflection_example.jpg
キューブマッピングの実装例(Unity) UnityのShaderLabでは便利な関数が定義されているので,これを利用します reflect: 第二引数を軸に第一引数の反射ベクトルを返す UNITY_SAMPLE_TEXCUBE: キューブマップのテクスチャと反射ベクトルから色を算出する
キューブマッピングの実装例(Unity) 実際にUnity上でレンダリングさせると…
キューブマッピングの実装例(Unity) 他のシェーディングと混ぜて利用しても面白いです
まとめ キューブマッピングは鏡のような映り込みを表現するシェーディング技法 ゲームのようなリアルタイムレンダリングの世界ではよく使われる シンプルな考え方ですが,得られる効果は大きい
まとめ 色々なシェーダーを描いてみたい,と思う方はこちら ▪Unityでシェーダー描いてみたい https://qiita.com/ShaderError/items/f349110679a9ec47cca9 ▪Unityでポストプロセス描いてみたい https://qiita.com/ShaderError/items/7213818bfde469a84f5a