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
0
2.1k
キューブマッピング で鏡のような映り込みを表現
akatsukinewgrad
March 05, 2021
Tweet
Share
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
130
成果発表資料.pdf
akatsukinewgrad
0
2k
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
0
570
正規表現とReDoS.pdf
akatsukinewgrad
0
550
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
610
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
530
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
700
7分でわかるアカツキゲームス
akatsukinewgrad
0
570
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
920
Other Decks in Programming
See All in Programming
Understanding Ruby Grammar Through Conflicts
yui_knk
1
130
為你自己學 Python - 冷知識篇
eddie
1
160
GUI操作LLMの最新動向: UI-TARSと関連論文紹介
kfujikawa
0
1k
Flutter로 Gemini와 MCP를 활용한 Agentic App 만들기 - 박제창 2025 I/O Extended Seoul
itsmedreamwalker
0
150
Infer入門
riru
4
1.6k
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
830
サーバーサイドのビルド時間87倍高速化
plaidtech
PRO
0
490
ワープロって実は計算機で
pepepper
2
1.4k
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
8
3.2k
Claude Codeで挑むOSSコントリビュート
eycjur
0
180
Laravel Boost 超入門
fire_arlo
1
130
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
330
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Become a Pro
speakerdeck
PRO
29
5.5k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Thoughts on Productivity
jonyablonski
69
4.8k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Balancing Empowerment & Direction
lara
2
590
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
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