Mercurial > hg > Events > OSC2010
diff presen/osc2010.html @ 9:57a4fa3f2359 default tip
fix
author | Yutaka_Kinjyo |
---|---|
date | Sat, 02 Oct 2010 13:08:21 +0900 |
parents | 93c3962d9a01 |
children |
line wrap: on
line diff
--- a/presen/osc2010.html Sat Oct 02 08:23:38 2010 +0900 +++ b/presen/osc2010.html Sat Oct 02 13:08:21 2010 +0900 @@ -43,16 +43,17 @@ </li> <li class="slide"> -<h1>シーングラフとPS3 を使った <br> ゲームプログラミング</h1> -<p><pre> Cerium Task Manager<br> - Blender / SceneGraph<br> -</pre> +<h1>学生向けゲーム作成演習の様子</h1> + </li> <div class="slide"> -<h1>発表概要</h1> -<p>PS3 ゲーム開発用フレームワーク <span class="text-maroon">Cerium</span> の紹介.</p> -<p>Lindaを用いた、ネットワークゲームの作成例の紹介</p> +<h1>概要</h1> +<ul> + <li>PS3 ゲーム開発用フレームワーク <span class="text-maroon">Cerium</span> の紹介.</li> + <li>SceneGraphによるゲーム作成</li> + <li>Lindaを用いた、ネットワークゲームの作成例の紹介</li> +</ul> </div> <div class="slide" id="id17"> @@ -189,6 +190,33 @@ <div class="slide"> <h1>SceneGraph</h1> +<img src="gazo/collision4.png" style="width: 60%"> +</div> + +<div class="slide"> +<h1>SceneGraph</h1> +<pre> +static void +boss1_move_right() { + x += 1; + if(x > screen_w) { + <font color="red">set_move(boss1_move_left);</font> + } +} + +static void +boss1_move_left() { + x -= 1; + if(x < screen_w) { + <font color="red">set_move(boss1_move_right);</font> + } +} +</pre> +</div> + + +<div class="slide"> +<h1>SceneGraph</h1> <img src="gazo/boss2.png" style="width: 60%"> </div> @@ -199,11 +227,21 @@ <div class="slide"> <h1>SceneGraph</h1> +<img src="gazo/boss4.png" style="width: 60%"> +</div> + +<div class="slide"> +<h1>SceneGraph</h1> +<img src="gazo/hito.png" style="width: 60%"> +</div> + +<div class="slide"> +<h1>SceneGraph</h1> <p><pre> SceneGraph を<br> MoveTask<br> - CollsionTask<br> + CollisionTask<br> で書き換えていく<br> - MoveTask, CollsionTask は、ステートパターンで<br> + MoveTask, CollisionTask は、ステートパターンで<br> 入れ換えられる<br> </pre> これで、すべて書ける。<br> @@ -281,106 +319,6 @@ SceneGraph, RenderingEngineのTaskを管理し、SPEに </div> -<div class="slide"> -<h1>TaskManager</h1> - -<ul> -<li>TaskManagerは、Taskと呼ばれる、分割された各プログラムを管理する</li> -<ul> -<li>Taskの単位はサブルーチン</li> -</ul> -<li>Task同士の依存関係を考慮</li> -<li>実行可能になったTaskをSPEに渡す</li> -</ul> - -<table height="100%" width="100%" border="0"> -<tr><td align="center" valign="middle"> -<img src="gazo/taskmanager1.png" style="width: 50%%"></td></tr> -</table> - -</div> - -<div class="slide"> -<h1>CeriumにおけるTask</h1> - -TaskはTaskManagerを使って生成する。Taskを生成する際に以下のような要素が -設定可能である。 - -<ul> - <li>Input data</li> - <li>Output data</li> - <li>Paramater</li> - <li>CPU type</li> - <li>Dependency</li> -</ul> - -</div> - -<div class="slide"> -<h1>CeriumにおけるTask</h1> -<big><u>Dependency</u></big><br> -<ul> -<li>Dependencyは他のTaskとの依存関係を示す。</li> -<li>例えばTaskAがTaskBをwaitする場合、TaskBが実行完了すると、TaskAが実行可能になる。</li> -<li>Taskの実行完了は、SPEのMail送信ボックスにデータが書き込まれ通知される。</li> -</ul> - -<table height="100%" width="100%" border="0"> -<tr><td align="center" valign="middle"> -<img src="gazo/dependency1.png" style="width: 40%%"></td></tr> -</table> - -</div> - - -<div class="slide"> -<h1>CeriumにおけるTask</h1> -<big><u>Mail機能</u></big><br> -<ul> -<li>Cellの機能の1つ</li> -<li>32bitのメッセージをPPE,SPE間でやりとりできる</li> -<li>送信ボックス、受信ボックスがSPEに設けられている。</li> -<li>それぞれMailボックスはキューになっている</li> -<li>受信ボックスのサイズは4</li> -<li>送信ボックスのサイズは1</li> -</ul> - -</div> - -<div class="slide"> -<h1>CeriumにおけるTask</h1> -<big><u>Mail機能</u></big><br> -<ul> -<li>送信ボックスのデータはPPEから、受信ボックスのデータはSPEから呼び出される</li> -<li>書き込みはその逆</li> -</ul> - -<table height="100%" width="100%" border="0"> -<tr><td align="center" valign="middle"> -<img src="gazo/mail.png" style="width: 60%%"></td></tr> -</table> - -</div> - -<div class="slide"> -<h1>Taskの送信</h1> - -<ul> -<li>Taskは1つ毎にSPEには送らない</li> -<li>いくつかのTaskをまとめTaskListとして送る</li> -<li>TaskListをすべて完了すると、SPEからPPEへのMailが書き込まれる</li> -<li>PPE側がMailをチェックし次のTaskListをMailで通知する</li> -</ul> - -<table height="100%" width="100%" border="0"> -<tr><td align="center" valign="middle"> -<img src="gazo/tasklist1.png" style="width: 40%%"></td></tr> -</table> - -</div> - - - <li class="slide"> <h1>Cerium Task Manager</h1> <p></p>