SlideShare a Scribd company logo
Computer Graphics from
the Mathematical Aspects
Presented by Kodai Takao
from
Lecture1 Introduction
第1回 イントロダクション
自己紹介
• 法政大学情報科学部ディジタルメディア学科
• Webデザイン、CGデザイン、アプリケーション開発
• Website : http://creativeuniverse.tokyo
• Twitter : http://twitter.com/kodai_cu
Java / C / C++ / PHP / SQL / JavaScript / jQuery / WebGL / GLSL
AfterEffects / Photoshop / Lightroom / CINEMA4D / Blender
コンセプト
• 3次元/2次元グラフィックスシステムの基本となる仕組みを数学的、
物理学的な方面から解説します。
• CGソフトウェアについての初級予備知識があるものとして解説します
ので、これらのレクチャーでは、特定のCGソフトウェア(Mayaなど)や
APIについての解説は行わない予定です。
まだまだ理解不十分な点もありますが、何卒ご理解いただき、少しで
もCGの仕組みに興味を持っていただければ幸いです。
前置き
コンピューターグラフィックスのド基礎
コンピュータグラフィックス(静止画)の基本ワークフロー
モデリング テクスチャリング レンダリング
各分野に特化したソフトウェアの紹介
モデリング レンダリング
Blender
MAYA
3DsMAX
CINEMA4D
Metasequoia
ZBrush
MODO
Lightwave3D
Shade
V-ray
Maxwell Render
Mental ray
POV-Ray
PIXAR RENDERMAN
Arnold
0
250,000/年
300,000/年
480,000
0
120,000
270,000
150,000
50,000
150,000
100,000
Mayaなどに標準搭載
0
0 (非商用利用に限る)
80,000
画像はすべてBlenderにて作成
Now, Let’s Get Started !
Outline
• モデリングにおける数学
• テクスチャリングにおける数学
• レンダリングにおける物理学
• レンダリングまでの処理の流れ
1. Modeling
モデリングにおける数学1
3Dモデルは3次元位置ベクトルを保持している → ベクトル・行列演算
2 0 0
0 1 0
0 0 2
1
1
1
=
2
1
2
例 : Transformation Matrix
モデリングにおける数学2
曲線・曲面の表現をより簡単に → B-Spline曲線, Bezier曲線/面
例 : Bezier曲線, Bezier曲面
P t =
𝑖=0
𝑁−1
𝐵𝑖 𝐽 𝑁−1 𝑖(𝑡) 𝑏 𝑚,𝑛
𝑢, 𝑣 =
𝑖=0
𝑚
𝑗=0
𝑛
𝑏𝑖,𝑗 𝐵𝑖
𝑚
(𝑢)𝐵𝑗
𝑛
(𝑣)
モデリングにおける数学3
まだまだたくさんあります。
AB木, ボロノイ幾何平面, ドロネー三角形分割, 極座標表現, 複素表現, エッジ分割, 凸包, 接平面,
パラメトリック方程式(媒介変数表示), ブール演算, プロジェクション変換行列, 回転行列, Z-バッファ,
拡大縮小行列, ビュー変換行列, 衝突判定, 再帰, フラクタル, 射影, カリング, 法線ベクトル,
Subdivide, Extrude, Sweep, Bevel, NURBS, Optimize, Height Mapping, Displacement Mapping,
Wireframe, Solid, Constructive Solid Geometry, Homeomorphism, Perspective, Orthographic, …………..
ブール結合演算 ボロノイ幾何平面 ドロネー三角形分割 フラクタル(マンデルブロ集合)
2. Texturing
テクスチャリングにおける数学
UVマッピング → ポリゴンに画像を貼り付けるイメージ。
𝑢 = 0.5 +
𝑎𝑟𝑐𝑡𝑎𝑛2(𝑑 𝑧, 𝑑 𝑥)
2𝜋
𝑣 = 0.5 −
arc𝑠𝑖𝑛(𝑑 𝑦)
𝜋
3. Rendering
レンダリングにおける物理学1
マテリアル(材質)の定義 → シェーダー
Refraction ShaderDiffuse Shader Subsurface Scattering
レンダリングにおける物理学2
もちろん、これらシェーダーはいくつか合成することができます。
レンダリングにおける物理学3
シェーダーの正体 → プログラム
GLSL (OpenGL Shading Language)
OpenGLってよく聞くけど何?
Open Graphics Library の略称。
どのOSでも動作可能なオープンソースグラ
フィックスAPIである。
主にGPUで特定の流れ(固定機能パイプラ
イン)に沿って処理される。
プログラマブルシェーダー
ユーザーがシェーダーを自由に作ることができる。
GPUの性能が良い = この部分の処理が速い
レンダリングにおける物理学4
レンダリング手法→ レイトレーシング, レイキャスティングなど
Ray Tracing
最終出力
いくつかの
処理を経て
カメラから光線を発射してオブジェクトと交差判定して描画 = 実際の光線の逆を辿る!
レンダリングにおける内部処理
固定機能パイプライン
ユーザーインプット
あとがき
今回はかなりおおまかに紹介しましたので、消化不良のままの方もい
らっしゃるかと思います。
今後時間ができ次第さらに深く掘り下げて解説していこうと思います
ので、気長に待っていてください。
また、質問やリクエスト等も気軽にしていただけると幸いです。

More Related Content

Similar to Computer Graphics from the Mathematical Aspects - Lecture 1

VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0
VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0
VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0Michitaka Yumoto
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Norishige Fukushima
 
Ml15minutes 190330
Ml15minutes 190330Ml15minutes 190330
Ml15minutes 190330
Rio Kurihara
 
Angularを利用したシステム開発事例
Angularを利用したシステム開発事例Angularを利用したシステム開発事例
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
さくらインターネット株式会社
 
映像解析クラスタの アプリエンジニアから見た Rancher&Kubernetes
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
映像解析クラスタの アプリエンジニアから見た Rancher&Kubernetes
Yuusuke Kounoike
 
Slide computational design2018_01_180921
Slide computational design2018_01_180921Slide computational design2018_01_180921
Slide computational design2018_01_180921
hiroshimadesignlab
 
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」Takashi Endo
 
あなたはどのタイプがお好き? イケメンHtml5系男子 ゲットのしかた
あなたはどのタイプがお好き?  イケメンHtml5系男子 ゲットのしかたあなたはどのタイプがお好き?  イケメンHtml5系男子 ゲットのしかた
あなたはどのタイプがお好き? イケメンHtml5系男子 ゲットのしかたMasakazu Muraoka
 
Basic knowledge of 3d
Basic knowledge of 3d Basic knowledge of 3d
Basic knowledge of 3d Masayuki KaToH
 
何をフォトグラメトるのか?2021
何をフォトグラメトるのか?2021何をフォトグラメトるのか?2021
何をフォトグラメトるのか?2021
Masayuki Nagasaka
 
プログラマの為の量子プログラミング入門 宣伝
プログラマの為の量子プログラミング入門 宣伝プログラマの為の量子プログラミング入門 宣伝
プログラマの為の量子プログラミング入門 宣伝
OsSAL
 
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
JustSystems Corporation
 
201110 02 Polytech center 2
201110 02 Polytech center 2201110 02 Polytech center 2
201110 02 Polytech center 2
openrtm
 
Slide computational design2019_01_180921
Slide computational design2019_01_180921Slide computational design2019_01_180921
Slide computational design2019_01_180921
hiroshimadesignlab
 
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
NTT DATA Technology & Innovation
 
Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発
m ishizaki
 
Javaにおけるモジュラリティ元年
Javaにおけるモジュラリティ元年Javaにおけるモジュラリティ元年
Javaにおけるモジュラリティ元年
Hiroki Kondo
 
Unity/CSharp 3
Unity/CSharp 3Unity/CSharp 3
Unity/CSharp 3
tagawakiyoshi
 
Vs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-devVs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-dev
Shotaro Suzuki
 

Similar to Computer Graphics from the Mathematical Aspects - Lecture 1 (20)

VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0
VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0
VentureCafe_第2回:SIerでのキャリアパスを考える_ござ先輩発表資料 V1.0
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
 
Ml15minutes 190330
Ml15minutes 190330Ml15minutes 190330
Ml15minutes 190330
 
Angularを利用したシステム開発事例
Angularを利用したシステム開発事例Angularを利用したシステム開発事例
Angularを利用したシステム開発事例
 
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
 
映像解析クラスタの アプリエンジニアから見た Rancher&Kubernetes
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
映像解析クラスタの アプリエンジニアから見た Rancher&Kubernetes
 
Slide computational design2018_01_180921
Slide computational design2018_01_180921Slide computational design2018_01_180921
Slide computational design2018_01_180921
 
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
 
あなたはどのタイプがお好き? イケメンHtml5系男子 ゲットのしかた
あなたはどのタイプがお好き?  イケメンHtml5系男子 ゲットのしかたあなたはどのタイプがお好き?  イケメンHtml5系男子 ゲットのしかた
あなたはどのタイプがお好き? イケメンHtml5系男子 ゲットのしかた
 
Basic knowledge of 3d
Basic knowledge of 3d Basic knowledge of 3d
Basic knowledge of 3d
 
何をフォトグラメトるのか?2021
何をフォトグラメトるのか?2021何をフォトグラメトるのか?2021
何をフォトグラメトるのか?2021
 
プログラマの為の量子プログラミング入門 宣伝
プログラマの為の量子プログラミング入門 宣伝プログラマの為の量子プログラミング入門 宣伝
プログラマの為の量子プログラミング入門 宣伝
 
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
 
201110 02 Polytech center 2
201110 02 Polytech center 2201110 02 Polytech center 2
201110 02 Polytech center 2
 
Slide computational design2019_01_180921
Slide computational design2019_01_180921Slide computational design2019_01_180921
Slide computational design2019_01_180921
 
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
 
Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発
 
Javaにおけるモジュラリティ元年
Javaにおけるモジュラリティ元年Javaにおけるモジュラリティ元年
Javaにおけるモジュラリティ元年
 
Unity/CSharp 3
Unity/CSharp 3Unity/CSharp 3
Unity/CSharp 3
 
Vs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-devVs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-dev
 

More from Kodai Takao

チームラボ サマーインターン発表スライド
チームラボ サマーインターン発表スライドチームラボ サマーインターン発表スライド
チームラボ サマーインターン発表スライド
Kodai Takao
 
Smoothed Particle Hydrodinamics
Smoothed Particle HydrodinamicsSmoothed Particle Hydrodinamics
Smoothed Particle Hydrodinamics
Kodai Takao
 
CG Image Recognition with Deep Learning
CG Image Recognition with Deep LearningCG Image Recognition with Deep Learning
CG Image Recognition with Deep Learning
Kodai Takao
 
プロジェクト3A テーマ発表
プロジェクト3A テーマ発表プロジェクト3A テーマ発表
プロジェクト3A テーマ発表
Kodai Takao
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
Kodai Takao
 
プロジェクト2B 最終発表
プロジェクト2B 最終発表プロジェクト2B 最終発表
プロジェクト2B 最終発表
Kodai Takao
 
プロジェクト2B 中間発表
プロジェクト2B 中間発表プロジェクト2B 中間発表
プロジェクト2B 中間発表
Kodai Takao
 
プロジェクト2B テーマ発表
プロジェクト2B テーマ発表プロジェクト2B テーマ発表
プロジェクト2B テーマ発表
Kodai Takao
 

More from Kodai Takao (8)

チームラボ サマーインターン発表スライド
チームラボ サマーインターン発表スライドチームラボ サマーインターン発表スライド
チームラボ サマーインターン発表スライド
 
Smoothed Particle Hydrodinamics
Smoothed Particle HydrodinamicsSmoothed Particle Hydrodinamics
Smoothed Particle Hydrodinamics
 
CG Image Recognition with Deep Learning
CG Image Recognition with Deep LearningCG Image Recognition with Deep Learning
CG Image Recognition with Deep Learning
 
プロジェクト3A テーマ発表
プロジェクト3A テーマ発表プロジェクト3A テーマ発表
プロジェクト3A テーマ発表
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
 
プロジェクト2B 最終発表
プロジェクト2B 最終発表プロジェクト2B 最終発表
プロジェクト2B 最終発表
 
プロジェクト2B 中間発表
プロジェクト2B 中間発表プロジェクト2B 中間発表
プロジェクト2B 中間発表
 
プロジェクト2B テーマ発表
プロジェクト2B テーマ発表プロジェクト2B テーマ発表
プロジェクト2B テーマ発表
 

Recently uploaded

遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
0207sukipio
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 

Recently uploaded (8)

遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 

Computer Graphics from the Mathematical Aspects - Lecture 1