29. Warfarmeにおける壁面移動
Daniel Brewer, “The Living AI in Warframe’s Procedural Space Ships” (Game AI Conference 2014) ※登録が必要なサイトです
http://archives.nucl.ai/recording/the-living-ai-in-warframes-procedural-space-ships/
プレイヤー
AI
プレイヤーが「ジャンプ・壁面走り・ジャンプ」したデータから
学習して、AIがそのデータをもとに同じ動きをする。
ジャンプ 壁面走り
ジャンプ
43. 強化学習
(例)格闘ゲームTaoFeng におけるキャラクター学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
44. 強化学習
(例)格闘ゲームTaoFeng におけるキャラクター学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
Microsoft Research Playing Machines: Machine Learning Applications in Computer Games
http://research.microsoft.com/en-us/projects/mlgames2008/
Video Games and Artificial Intelligence
http://research.microsoft.com/en-us/projects/ijcaiigames/
49. Ⓒ2014 SQUARE ENIX CO., LTD. All Rights Reserved.
The Sims のAIの原理
三宅陽一郎、「Spore におけるゲームAI技術とプロシージャル」 (DiGRA Japan 第14回 月例研究
http://www.digrajapan.org/modules/mydownloads/images/study/20080704.pdf
Ken Forbus, “Simulation and Modeling: Under the hood of The Sims” (NorthWerstern大学、講義資料)
http://www.cs.northwestern.edu/%7Eforbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/frame.htm
Richard Evans, Modeling Individual Personalities in The Sims 3, GDC 2010
http://www.gdcvault.com/play/1012450/Modeling-Individual-Personalities-in-The
50. The Sims シリーズのAIの作り方
人をダイナミクス(力学系、動的な数値の仕組み )として動かす。
世界を動かす PeerAI(=キャラクターAI) を構築。
Sub
Peer
Meta
Meta
Peer
Sub
[原則] 周囲の対象に対する、あらゆる可能な行動から、
ムード(幸せ) 係数を最大化する行動を選択する。
Sims (not under direct player control) choose what to do by selecting, from all of the
possible behaviors in all of the objects, the behavior that maximizes their current
happiness.
Will Wright, AI: A Design Perspective (AIIDE 2005)
http://www.aaai.org/Papers/AIIDE/2005/AIIDE05-041.ppt
Kenneth Forbus, Will Wright, “Some notes on programming objects in The Sims – Example”
http://www.qrg.cs.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf
51. オブジェクトに仕込むデータ構造
Data (Class, Sate)
Graphics (sprites, z-
buffers)Animations (skeletal)
Sound Effects
Code (Edith)
-Main (object thread)
-External 1
-External 2
-External 3
パラメーター
グラフィックス
アニメーション
サウンド
メインスレッド
いろいろなインタラクションの仕方
Ken Forbus, “Simulation and Modeling: Under the hood of The Sims” (NorthWerstern大学、講義資料) ※IEで見てください。
http://www.cs.northwestern.edu/%7Eforbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/frame.htm
Kenneth Forbus, Will Wright, “Some notes on programming objects in The Sims – Example”
http://www.qrg.cs.northwestern.edu/papers/Files/Programming_Objects_in_The_Sims.pdf
52. NPCに仕込むデータ構造
Ken Forbus, “Simulation and Modeling: Under the hood of The Sims” (NorthWerstern大学、講義資料) ※IEで見てください。
http://www.cs.northwestern.edu/%7Eforbus/c95-gd/lectures/The_Sims_Under_the_Hood_files/frame.htm
77. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
78. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
79. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
• 揺らぎ
• ライン – コーナーやそのコンビネーションに対し
て、どれぐらいスムーズに車をガイドするか。
• コーナーへの突入スピードとブレーキを踏むタイ
ミングと。保守的か過激か。
• コーナーの頂点にどれぐらい近づくか、どれぐら
いの速度でそこを抜けるか?
• コーナーを抜ける時のスピードとコーナーを回る
時のスピード。
Drivatar がプレイヤーのコントロールから学習するもの
Microsoft Research
Drivatar™ in Forza Motorsport
http://research.microsoft.com/en-us/projects/drivatar/forza.aspx
80. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
プレイヤーの特性を解析する
特徴となる数値をドライブモデルに渡す
81. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
レーシングラインを事前に構築する。生成というよりテーブルから組み合わせる。
82. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
レーシングラインを事前に構築する。生成というよりテーブルから組み合わせる。
83. 機械学習
(例)FORZA MOTORSPORT におけるドライビング学習
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
レーシングラインに沿わせるのではなく、理想とする位置とスピードから
コントローラーの制御を計算して、物理制御によって車を運転する。
84. Forza motorsports (EA)
Jeffrey Schlimmer, "Drivatar and Machine Learning Racing Skills in the Forza Series"
http://archives.nucl.ai/recording/drivatar-and-machine-learning-racing-skills-in-the-forza-series/
87. 機械学習
(例) Halo®3におけるオンライン・マッチング・システム
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
88. 機械学習
(例) Halo®3におけるオンライン・マッチング・システム
• TrusSkill =プレイヤーの強さを正規分布の中
央値と標準偏差として扱う。
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
μ : 中央値
σ: 標準偏差
89. 機械学習
(例) Halo®3におけるオンライン・マッチング・システム
• TrusSkill =プレイヤーの強さを正規分布の中
央値と標準偏差として扱う。
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
μ : 中央値
σ: 標準偏差
その人の強さを表す
その人の強さの正確さを示す。
100回やってこのランクの人と
1000回やってこのランクの人では
1000回の人の方が正確
=標準偏差が小さい
90. 機械学習
(例) Halo®3におけるオンライン・マッチング・システム
• スキル 𝜇 𝐴, 𝜎𝐴 のプレイヤーと、スキル
𝜇 𝐵, 𝜎 𝐵 のプレイヤーが
マッチングする確率は、
Ralf Herbrich, Thore Graepel, Joaquin Quiñonero Candela Applied Games Group,Microsoft Research Cambridge
"Forza, Halo, Xbox Live The Magic of Research in Microsoft Products"
http://research.microsoft.com/en-us/projects/drivatar/ukstudentday.pptx
μ : 中央値
σ: 標準偏差
𝑒
−
(𝜇 𝐴−𝜇 𝐵)2
2𝐶2
𝑑 (𝑑 =
2𝛽2
𝑐
)
91. 機械学習
(例) Halo®3におけるオンライン・マッチング・システム
2人が対戦して勝ったとき、負けた時の中央値、標準偏差の変化
知能と情報 : 日本知能情報ファジィ学会誌: journal of Japan Society for Fuzzy Theory and Intelligent Informatics 22(6), 745-756, 2010-12-15
日本知能情報ファジィ学会 「オンラインゲームにおける人工知能・. プロシージャル技術の応用」
http://igda.sakura.ne.jp/sblo_files/ai-igdajp/image/JSFTII_22-6_online20game_Miyake.pdf
133. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
134. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
135. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
136. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
137. 出力
入力
(DPS=Damage per second)
Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
138. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
139. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
140. Neural Networks in Supreme Commander 2 (GDC 2012)
Michael Robbins (Gas Powered Games)
http://www.gdcvault.com/play/1015406/Off-the-Beaten-Path-Non
http://www.gdcvault.com/play/1015667/Off-the-Beaten-Path-Non
ニューラルネットワークの応用
141. ニューラルネットワークの応用
Black & White (Lionhead,2000)
クリーチャーを育てていくゲーム。
クリーチャーは自律的に行動するが、
訓練によって学習させることができる。
http://www.youtube.com/watch?v=2t9ULyYGN-s
http://www.lionhead.com/games/black-white/
http://www.4gamer.net/games/001/G000163/
142. Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Intention
Overall Plan
(Goal, Main Object)
Attack enemy town
Specific Plan
(Goal, Object List)
Throw stone at house
Primitive Action List
Walk towards stone,
Pick it up,
Walk towards house,
Aim at house,
Throw stone at house
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
143. Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
Low Energy
Source =0.2
Weight =0.8
Value =
Source*Weight =
0.16
Tasty Food
Source =0.4
Weight =0.2
Value =
Source*Weight =
0.08
Unhappiness
Source =0.7
Weight =0.2
Value =
Source*Weight =
0.14
∑
0.16+0.08+0.14
Threshold
(0~1の値に
変換)
hunger
Desire(お腹すいた度)欲求を決定する
対象を決定する
それぞれの対象の
固有の情報
他にも
いろいろな
欲求を計算
Hunger
Compassion
Attack(戦いたい)
Help
ニューラルネットワークの応用
Black & White (Lionhead,2000)
144. Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
戦いたい?
+0.9 -0.2
味方敵
+0.4 +0.1 -0.3
小さい 大きい中
ニューラルネットワークの応用
Black & White (Lionhead,2000)
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
http://piposozai.blog76.fc2.com/
145. Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Intention
Overall Plan
(Goal, Main Object)
Attack enemy town
Specific Plan
(Goal, Object List)
Throw stone at house
Primitive Action List
Walk towards stone,
Pick it up,
Walk towards house,
Aim at house,
Throw stone at house
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
何に対して何を行うか決定
特定の行動を決定
詳細な行動
ニューラルネットワークの応用
Black & White (Lionhead,2000)
146. Belief – Desire – Intention モデル
Desire
(Perceptrons)
Opinions
(Decision Trees)
Beliefs
(Attribute List)
Intention
Overall Plan
(Goal, Main Object)
Attack enemy town
Specific Plan
(Goal, Object List)
Throw stone at house
Primitive Action List
Walk towards stone,
Pick it up,
Walk towards house,
Aim at house,
Throw stone at house
何に対して何を行うか決定
特定の行動を決定
詳細な行動
「何に対して何をするか」悩んでいる。
ニューラルネットワークの応用
Black & White (Lionhead,2000)
Richard Evans, “Varieties of Learning”, 11.2, AI Programming Wisdom
14:35-
150. Deep Q-Learning
Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves,
Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies)
Playing Atari with Deep Reinforcement Learning
http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
画面を入力
操作はあらかじめ教える
スコアによる強化学習
154. 学習過程解析
Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Alex Graves,
Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller (DeepMind Technologies)
Playing Atari with Deep Reinforcement Learning
http://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
159. ⑤ニューラルネットワークの構造が進化させる
「NEAT」の技術
Mat Buckland, Chapter 11, AI techniques for game programming, Premier Press, 2002
(実行ファイルとソースコードがCD-ROMにあります)
これまでニューラルネットは、最初に構造を定義した後は変化しなかった。
動的にニューラルネットの構造を変化させる技術
Neuron Evoluation of Augmenting Topologies (NEAT)
160. NEAT
回路の構成を遺伝子コードで表現する。
Weight: 1.2
From: 1
To: 3
Enabled: Y
Recurrent: N
Innovation: 1
Weight: -3
From: 1
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 0.7
From: 2
To: 4
Enabled: Y
Recurrent: N
Innovation: 2
Weight: -2.1
From: 3
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 1.1
From: 3
To: 5
Enabled: N
Recurrent: N
Innovation: 3
Weight: 0.8
From: 4
To: 5
Enabled: Y
Recurrent: N
Innovation: 4
Weight: -1
From: 5
To: 3
Enabled: Y
Recurrent: Y
Innovation: 7
ID: 1
Type: Input
ID: 2
Type: Input
ID: 3
Type: hidden
ID: 4
Type: hidden
ID: 5
Type: Output
2
1
4
3
5
つなぎ方を定義する遺伝子
ニューロンを定義する遺伝子
入力 出力
161. NEAT
回路の構成を遺伝子コードで表現する。
Weight: 1.2
From: 1
To: 3
Enabled: Y
Recurrent: N
Innovation: 1
Weight: -3
From: 1
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 0.7
From: 2
To: 4
Enabled: Y
Recurrent: N
Innovation: 2
Weight: -2.1
From: 3
To: 4
Enabled: Y
Recurrent: N
Innovation: 6
Weight: 1.1
From: 3
To: 5
Enabled: N
Recurrent: N
Innovation: 3
Weight: 0.8
From: 4
To: 5
Enabled: Y
Recurrent: N
Innovation: 4
Weight: -1
From: 5
To: 3
Enabled: Y
Recurrent: Y
Innovation: 7
ID: 1
Type: Input
ID: 2
Type: Input
ID: 3
Type: hidden
ID: 4
Type: hidden
ID: 5
Type: Output
2
1
4
3
5
リンク(つなぎ方)を定義する遺伝子
ニューロンを定義する遺伝子
Innovation ID によってリンク、ニュー
ロンを全遺伝子共通の管理する。
無効
入力 出力
165. ⑥リアルタイム「NEAT」を使ったシミュレーションゲーム
「 NERO 」
Neural Networks Research Group, Department of Computer Sciences, University of Texas at
Austin, Neuro-Evolving Robotic Operatives, http://www.nerogame.org/,
(ゲームがあります)
①rtNEAT(リアルタイムNEAT)システムの上で、ユーザーが兵士を訓練する。
②訓練させた兵士同士を対戦させる。
220. Age of Empires III における地形自動生成
西川善司, 「3DゲームファンのためのAGE OF EMPIRESエンジン講座(後編)こだわりの影生成と算術合成
されるディテール、次回作はXbox2?」, GAME Watch, 2005
221. References
(1) Jacob Olsen,Realtime Procedural Terrain Generation
http://oddlabs.com/download/terrain_generation.pdf
(2) Ken Musgrave
http://www.kenmusgrave.com
(3) Terragen(Planetside Software)
http://www.planetside.co.uk/terragen
(4) Introversion Software, "Procedural Content Generation",
GameCareerGuide.com, 2007
http://www.gamecareerguide.com/features/336/procedural_content_.php
(5)西川善司, 「3DゲームファンのためのAGE OF EMPIRESエンジン講座(後
編)こだわりの影生成と算術合成されるディテール、次回作はXbox2?」,
GAME Watch, 2005
http://watch.impress.co.jp/game%2Fdocs/20050313/aoe3.htm
Figures on the pages are from these references.
223. 植物自動生成
Since 1968 A. Lindenmayer
L-system 文法規則 構成要素 F,+,-,[,]
規則 F F[-F]F[+F][F]
F
0世代 1世代
F[-F]F[+F][F] F[-F]F[+F][F][- F[-F]F[+F][F]] F[-F]F[+F][F][+ F[-F]F[+F][F]][F[-F]F[+F][F]]
2世代
F - まっすぐ進む
+ 30度左回転 ー 30度右回転 []内は個別のスタック
解釈
研究分野としては
人工生命、CGにまたがる
224. 植物自動生成
Since 1968 A. Lindenmayer
L-system 文法規則
構成要素 F,+,-,[,]
規則 F-> F[-F]F[+F][F]
F
0世代 1世代
F[-F]F[+F][F]
2世代 3世代 4世代 5世代
Simulating plant growth by Marco Grubert http://www.acm.org/crossroads/xrds8-2/plantsim.html
225. The Sketch L-System:
Global Control of Tree Modeling Using Free-form
Strokes
Takashi Ijiri, Shigeru Owada, Takeo Igarashi.
The Sketch L-System:
Global Control of Tree Modeling Using Free-form Strokes
http://www-ui.is.s.u-tokyo.ac.jp/~ijiri/SketchLSystem/index.html
L-system を用いて簡単な操作で木のモデルを作成するツール
226. デモ
The Sketch L-system
SG06_SketchLSystem
Takashi Ijiri, Shigeru Owada, Takeo Igarashi.
The Sketch L-System: Global Control of Tree Modeling Using Free-form Strokes
http://www-ui.is.s.u-tokyo.ac.jp/~ijiri/SketchLSystem/index.html
227. 発展:確率的 L-system
構成要素 F,+,-,[,]
規則 F -> F[+F]F[-F]F 0.33
F -> F[+F]F 0.33
F -> F[-F] 0.33
植物以外に使えないだろうか? じっと見る
Simulating plant growth by Marco Grubert http://www.acm.org/crossroads/xrds8-2/plantsim.html
規則を変えればいろいろな模様が自動的に生成される
228. L-system によるダンジョン自動生成(三宅案)
variables : X Y F
constants : + −
start : FX
rules : (X → X+YF+),(Y → -FX-Y)
angle : 90°
http://en.wikipedia.org/wiki/L-system
229. L-system による街の自動生成
City Engine(central pictures)
Yoav I H Parish, Pascal Müller
http://www.centralpictures.com/ce/tp/paper.pdf
http://www.centralpictures.com/ce/
George Kelly, Hugh McCabe,
A Survey of Procedural Techniques for City Generation
http://www.gamesitb.com/SurveyProcedural.pdf
233. References
(1) Simulating plant growth by Marco Grubert
http://www.acm.org/crossroads/xrds8-2/plantsim.html
(2) L-System Wiki
http://en.wikipedia.org/wiki/L-system
(3) The Sketch L-System:
Global Control of Tree Modeling Using Free-form Strokes
http://www-ui.is.s.utokyo.ac.jp/~ijiri/SketchLSystem/index.html
(4) Yoav I H Parish, Pascal Müller
http://www.centralpictures.com/ce/tp/paper.pdf
(5) City Engine(central pictures) http://www.centralpictures.com/ce/
(6) George Kelly, Hugh McCabe,
A Survey of Procedural Techniques for City Generation
http://www.gamesitb.com/SurveyProcedural.pdf
Figures on following pages are from these references.
236. 雲の自動生成
雲テクスチャー自動生成
Cloud Cover http://freespace.virgin.net/hugo.elias/models/m_clouds.htm
Kim Pallister,Generating Procedural Clouds in real time on 3D HW
http://www.intel.com/cd/ids/developer/asmo-na/eng/segments/games/20534.htm?page=11
基本方針
2次元のノイズを作りましょう
(0~1の値に応じて
塗り分けている)
If value is < 0.5 blue
If value is > 0.5, blend
blue to white
値が大きいところは青く、
小さいところは、値に応じて
白と青を混ぜた色を塗る
どんなノイズがよいのだろう?
自然界にあるノイズパターンって何だろう?
238. 変化する雲の作り方
Kim Pallister, Generating Procedural Clouds in real time on 3D HW
http://www.intel.com/cd/ids/developer/asmo-na/eng/segments/games/20534.htm?page=5
239. 雲の自動生成
基本方針
雲の3Dモデル自動生成
1
9
22
9
17
9
4
)( 2
2
4
4
6
6
R
r
R
r
R
r
rFcub
Wyvill’s standard cublic function
ある点を中心とした密度を
ピクセルボックス毎に計算
i
cubiimplcit qpFwpDensity )(
エレメントごとに足し合わせる
David S. Ebert ,Volumetric Procedural Implicit Functions,
http://www.csee.umbc.edu/~ebert/cloud
F. Kenton Musgrave, Darwyn Peachey, Ken Perlin, Steven Worley, David S. Ebert,
“Texturing & Modeling: A Procedural Approach 第3版”,
Morgan Kaufmann Series in Computer Graphics and Geometric Modeling, 2002
240. David S. Ebert ,Volumetric Procedural Implicit Functions, http://www.csee.umbc.edu/~ebert/cloud
242. Microsoft Flight Simulator 2004
Niniane Wang ,Realistic and Fast Cloud Rendering
http://jgt.akpeters.com/papers/Wang04/
Mark Harris の方法を発展させる
243. Microsoft Flight Simulator 2004
8つのリング状の背景とビルボードによる写し込み
Niniane Wang ,Realistic and Fast Cloud Rendering
http://jgt.akpeters.com/papers/Wang04/
244. デモ
Microsoft Flight Simulator 2004
Niniane Wang ,Realistic and Fast Cloud Rendering
http://jgt.akpeters.com/papers/Wang04/
245. References
(1) hugo.elias Cloud Cover
http://freespace.virgin.net/hugo.elias/models/m_clouds.htm
(2) Kim Pallister,Generating Procedural Clouds in real time on 3D
HW
http://www.intel.com/cd/ids/developer/asmo-
na/eng/segments/games/20534.htm?page=11
(3) David S. Ebert ,Volumetric Procedural Implicit Functions
http://www.csee.umbc.edu/~ebert/cloud
(4) Mark.J.Harris,REALISTIC CLOUD ILLUMINATION
http://www.markmark.net/clouds/index.htm
(5) Niniane Wang ,Realistic and Fast Cloud Rendering
http://jgt.akpeters.com/papers/Wang04/
(6) Perlin Noise,
http://freespace.virgin.net/hugo.elias/models/m_perlin.htm
Figures on the pages are from these references.