• 検索結果がありません。

独自ツールキットによるスケーラブルなCGとゲーム開発の教育的実践

N/A
N/A
Protected

Academic year: 2021

シェア "独自ツールキットによるスケーラブルなCGとゲーム開発の教育的実践"

Copied!
8
0
0

読み込み中.... (全文を見る)

全文

(1)Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 1. は じ め に. 独自ツールキットによるスケーラブルな CG とゲーム開発の教育的実践 渡 辺 三 上. 大 浩. 地†1 司†1. 竹 内 近 藤. 亮 邦. 大学での CG 技術の教育において,プログラミングによる演習は大変有効である.国内 外において,その実践方法は多くの成果が発表されている.筆者らが所属する東京工科大学 メディア学部では,CG に関連する教育や研究で本学独自のツールキットやアニメーション 作成用ツールを用いており,独特の成果を挙げている.本論文では,その特徴を述べると共. 太†1 雄†1. に,汎用的なツールや環境を用いる場合との比較を論じていく.特に,ツールキットやアニ メーションツールの特徴を重点的に述べる.また,それらを教育現場で用いることが有用で あることを示す.. 東京工科大学メディア学部では,CG 制作やゲーム開発に関する教育や研究が盛ん に行われているが,その際に独自で開発を行っているツールキットを用いている.本 ツールキットは初学者が 3DCG プログラミングにおいて敷居の高い部分を学びやす くすると共に,実践的なゲーム開発や CG 研究にも有用な効果を上げるものである. また,当ツールキットと連携できるモーション作成ソフトウェアも開発した.本ソフ トウェアによる CG 制作やゲーム開発での効果を,その他の汎用的な環境を用いた場 合との比較を含めて述べる.. 本文では,まず第 2 章でリアルタイム 3DCG の開発環境を分類する.第 3 章では本学独 自のツールキットについて解説する.第 4 章ではツールキットと連携できるモーション・ア ニメーション作成ツールについて述べる.第 5 章ではツールキットやアニメーションツール での教育現場での利用実践について述べ,第 6 章では多システムを利用した場合との比較 を行う.. 2. リアルタイム 3DCG の開発環境. Educational Practice for CG and Game Development using an Original 3DCG Toolkit and Animation Software. リアルタイム 3DCG を用いたプログラミングは,大きく分類すると 3 種類に分けること ができる.第 1 に,各種プラットフォームのグラフィックス機能を直接的に用いることを目 的とした API を利用するものがあり,代表的なものに OpenGL1) と Direct3D2) がある.. Taichi Watanabe,†1 Ryota Takeuchi,†1 Koji Mikami†1 and Kunio Kondo†1. この方法は,最も汎用性が高い方法であるが,一方で 3 次元を扱うための様々な数学理論 や,C 言語,C++言語を用いるプログラミング技術に関する知識を必要とするため,初学 者には敷居が高い.第 2 の方法として,補助的なツールキットやライブラリを利用するとい. This paper describes an original Real-Time 3DCG toolkit. Features of this toolkit is easily programmed 3DCG contents conduct beginner. In addition, the availability of advanced game development and 3DCG research. We have also developed software to create 3D motion, that can work with our toolkit. We also present the comparison in the case of using our system and other development environments.. う方法がある.この方針をとるシステムとしては,3 章で紹介する本ツールキットの他にも. Microsoft 社の XNA3) や DX ライブラリ4) など,数多く公開されている.第 3 の方法とし て,ゲームエンジンやシミュレーションシステムを用いるというものがある.近年ゲーム開 発の現場でよく用いられるゲームエンジンとして,Unity 3D5) や Unreal Engine6) がある. これらを用いる場合,事前に準備された様々なスクリプトを組み合わせることでコンテン ツを開発することができるため,あまりプログラミングを必要としないという特色がある. その反面,環境が想定していない機能を持たせるためにはやはり高度な知識と実装力を要求 するということや,パフォーマンスのチューニングなどが困難になるなどの側面も持つ.. †1 東京工科大学 Tokyo University of Technology. 1. c 2012 Information Processing Society of Japan.

(2) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 3. 独自ツールキットについて 本章では, 「Fine Kernel ToolKit System」という独自ツールキット(以下「FK ツール キット」)について解説する.FK ツールキットは筆者らが開発しているリアルタイム 3DCG 用のツールキットであり,オープンソースソフトウェアとして一般に公開している7) .FK ツールキットは C++ 言語での利用を想定したクラスライブラリ群であり,内部 3D API と して OpenGL1) を採用している.基本的には,C++ と OpenGL が利用できる環境におい ては FK ツールキットを構築することが可能であり,現在のところ主に Windows,MacOS. X,Linux,FreeBSD といった各種 OS 上で動作確認と検証を行っている.ウィンドウや GUI の生成,デバイス制御についても FK ツールキットのクラスで行うことは可能である が,依存部分はわずかであり,様々なシステムを選択することが可能である.現時点では 図 1 FK ツールキットと CUDA を用いた研究例 Fig. 1 Sample Image of Research using FK ToolKit and CUDA.. FLTK8) と Qt9) を念頭に置いている.FLTK,Qt 共に先述した各プラットフォームに対 応した GUI ライブラリであるため,結果的には FK ツールキットを用いて作成したソース コードは全てのプラットフォームでビルドすることが可能である.2 章で紹介した XNA や. DxLib などは Windows 上でしか開発や実行が行えないが,FK ツールキットにおいては そのような制約はない.これは学生同士での共同開発のように,様々な異なる環境下で開発 を進める必要がある場合に都合が良い.. FK ツールキットは,元々は筆者の一人である渡辺が自身の研究を支援する目的として構 築したものであり,現在においても本学における 3DCG の研究で多く用いられている.研 究においては,様々な他のライブラリやシステムと連携を取る必要が多いが,コンテンツ作 成を目的とするツールキットやシステムではその点が念頭に置かれておらず,不可能であっ たり困難である場合が多い.FK ツールキットでは,できるだけ他のシステムとの共存が可 能であることを前提として設計を行っており,たとえば Cg10) や GLSL11) といったシェー 図 2 FK ツールキットと Cg 用いた研究例 Fig. 2 Sample Image of Research using FK ToolKit and Cg.. ダ技術や,CUDA12) や OpenCL13) といった GPGPU 技術についても問題なく利用する ことができる.図 1 に FK ツールキットと CUDA を用いた研究実行例14) を,図 2 は FK ツールキットと Cg を用いた研究実行例15) を示す.図 1 の研究では,レイキャスティング. 教材として採用している.これについては 5 章にて詳しく述べる.. FK ツールキットの設計としての特徴に座標変換の扱いがある.座標変換は,3DCG プロ. の積分演算において CUDA を用いて GPGPU による高速化を実現した.図 2 においては,. グラミングの初学者が最初に遭遇する難関と言える.これは,平行移動・回転・拡大縮小の. Cg を用いたポイントレンダリングという技術によって点群描画を高速に行っている.. 各種変換を組み合わせるために線形代数の知識が必要となることや,空間内で扱っている対. また,近年注目されている立体視表示もサポートしており,容易に実験環境を構築でき 16). る. 象物と座標変換の関係が複雑になりがちになるためである.そこで FK ツールキットでは,. .一方で,煩雑な初期設定やコールバックを初めとする複雑なフローを用いる必要が. 空間内の個別の座標系に「モデル」という概念を与え,そのモデルの方向や位置を具体的に. ないので,初学者の学習教材としても望ましいと判断し,本学の CG 系の科目においても. 2. c 2012 Information Processing Society of Japan.

(3) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 指定することで想像を容易にし,かつ各座標系間の関係(=モデル間の関係)をインスタン ス同士で明確に指定する機能を持つこととした.これにより,利用者は座標系概念を意識す ることなくオブジェクトの移動制御を行える.また,モデルと幾何形状を階層的に扱うこと ができるため,オブジェクトのグルーピングやモーション制御といった技法も容易に扱うこ とができる. また,多様な画像フォーマットや 3D 形状フォーマットの入力に対応しており,サポート されているデータフォーマットであれば利用者はインポーターをプログラムする必要はな い.また,利用者自身が新たなインポーターを作成することも可能である.. 4. モーション・アニメーション作成ツールについて. 図 3 FK Performer の実行画面 Fig. 3 Sample Image of FK Performer.. リアルタイム 3DCG を用いたコンテンツにおいて,重要な要素の 1 つにアニメーション がある.3DCG におけるアニメーションは,キーフレームごとに人物などを表現した 3 次. と呼称する.FK Performer によって作成したモーションデータを簡易に再生可能な API. 元形状モデル(以下,モデル)の姿勢を入力し,キーフレーム間の姿勢を補間することで一. を用意することで,モーションを伴うゲームや映像などのコンテンツ制作が容易な環境を構. 連のモーションを生成するキーフレームアニメーションが主流である.キーフレームアニ. 築した.なお,この FK Performer 自体も FK ツールキットを用いて開発した.. メーションの元となるデータの作成方法としては,モーションキャプチャを用いた手法や,. 4.1 FK Performer 実装の概要. Digital Content Creation(DCC)ツールと呼ばれるソフトウェアによって手付けを行う手. 図 3 に,今回開発した FK Performer の実行画面を示す.. 法などが多数存在する.. FK Performer は,フリーのモデリングソフトであるメタセコイア17) のファイル形式に 対応しており,複数のオブジェクトで構成されたテクスチャ付きのモデルデータを扱うこと. FK ツールキットは,形状変形に関しては高度な処理を提供しているが,形状全体の平行 移動,回転移動に関してはプリミティブな命令しか用意しておらず,一連のモーションとし. ができる.基本的な使用方法は次の手順の通りである.. ての動作は逐次プログラミングを行う必要がある.ゲームや映像作品においてキャラクター. (1). メタセコイアのモデルデータを読み込む.. やオブジェクトを表現する際には,1 つのモデルに対して様々なモーションを用意すること. (2). 各オブジェクト間の親子関係を設定する.. が一般的であるため,直接モーション制御をコーディングすることは非効率的である.その. (3). 各オブジェクトにキーフレームを設定する.. ため,モーションをデータとして保持し,任意のタイミングで再生できるような構造が望ま. (4). キーフレーム間の状態遷移に要するフレーム数を設定し,調整を行う.. 親子関係とは,FK Performer にモデルデータを読み込んだ後,各オブジェクト間の接続. れる. 前述したように,モーション制作においては高機能な DCC ツールが多数存在する.しか. 状態をツール上で指定することで,腕の動きに手先が追随するといったオブジェクト同士の. し高機能なソフトウェアは,単純なモーションの製作用途には過剰とも言えるスペックを. 関係のことを指す.この親子関係はモーションとは別にデータとして出力するため,1 体の. 持っているため,操作方法が困難になりがちである.また,DCC ツールが出力するデータ. モデルに対する親子関係の構築作業は 1 回行えばよい.このため特定のモデルに対して大. 形式は扱いが困難であることが多く,自作のプログラム上で自在に制御可能な環境を整える. 量のモーションデータを作成する際にも,効率よく作業を進めることができる.一般的な. には多大な労力を要する.. DCC ツールではリギングと呼ばれている工程に相当するが,FK Performer ではアニメー ションをオブジェクト単位に限定し,とにかく簡単にポージングができることを最優先と. そこで,我々は FK ツールキットと連携が可能なモーション&アニメーション作成ツール. した.. を開発し,ツールキットの利用者に提供することとした.このツールを「FK Performer」. 3. c 2012 Information Processing Society of Japan.

(4) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. キーフレームを設定する際には,各オブジェクトの位置・姿勢・スケールを,それぞれ位 置座標・オイラー角・XYZ 軸ごとの倍率によって入力し,その状態に移行するのに要する 時間と,状態の補間方法を指定することができる.補間方法は,直線的な変化や,三角関数 や 2 次関数による曲線的な変化も選択することが可能である.これらの操作は画面上のス ライダーや,モデル上に表示された操作ハンドルによって制御可能である.また各オブジェ クトに設定されているキーフレーム情報は,モデルを表示しているメインウィンドウ上にタ イムラインを表示させることで視覚的に確認することができる.これにより,微細な角度や タイミングの調整が柔軟に行えるようになっている.. 4.2 FK ツールキットとの連携 図 4 FK Performer によって制作したゲームの実行画面 Fig. 4 Sample of Game using FK Performer.. FK Performer によって作成したモーションデータは,アスキー形式による独自データ形 式で出力する.FK Performer を構成するクラスコンポーネントを再利用することで,FK ツールキットによるプログラム中で独自データを容易に再生できる API を提供した.コン. FK ツールキットは,2 年次向けの講義科目「コンピュータグラフィクスの基礎理論」に. テンツ開発者が利用するのは,メタセコイア形式のモデルデータと親子関係の構築データを. て,主に 2D ベクトルグラフィクスの理論を習得するための教材として利用している.当科. 読み込んだ後,作成したモーションデータを複数読み込ませることが可能なクラスである.. 目では,線分同士の交点の求め方や領域内外判定,パラメトリック曲線の学習を主体として. モーションの再生処理は,1 フレームごとにモデルの状態を更新する形式で行うため,コン. いる.ベクトルや行列は FK ツールキット内のクラスライブラリを用いて学習を進めるた. テンツの内容に応じてモーションの中断や切り替えなどが柔軟に制御可能になっている.. め,成分の扱いや逆行列演算といった初学者のプログラミングで煩雑になりがちな部分が. 4.3 応 用 事 例. すっきりとした記述となる.C++は標準文法で演算子オーバーロードをサポートしている. FK ツールキットと FK Performer を利用して,本学学部生の有志によりアクションゲー. ため,数式をそのままプログラミングとして表現することに相性が良く.数学的な理解がそ. ムを制作した.図 4 にその実行画面を示す.左側が対戦型アクションゲーム,右側がマル. のまま式として記述できる面では都合が良い.. チプレイヤーアクション RPG のスクリーンショットである.. 一方で, 「メディア基礎演習」という演習科目で 4 章で紹介した FK Performer を利用し,. 両作品とも,全て本ツールキットと FK Performer が提供する機能を利用して構成され. アニメーションコンテンツを制作する授業を 2 年次生向けに設けている.この科目では,理. ている.FK Performer によって製作されたモーションは総計して 200 パターン以上にのぼ. 論的な面よりもモーションに関する基本的な機能を教え,その後に 3,4 人毎のグループご. る.その大半はモーション制作の経験が浅い学生によって,プログラムやモデリング,ディ. とに自由作品を制作する.図 5 は本演習科目での学生制作作品のスナップショットである.. レクションと言った本来の役職の傍らで制作されたものであるが,ゲームを構成するのに十. 本学ではさらに,3DCG プログラミングの理論技術を深く学習し,より進んだ内容を習. 分な素材を用意することができた.. 得するための演習科目として「リアルタイム 3DCG プログラミング」という演習科目を 3 年次向けに開講している.この科目では,FK ツールキットを用いて自由作品を作成するも. 5. 授業・演習での利用について. のである.. 本章では,3 章にて説明した FK ツールキットや,4 章にて説明した FK Performer を用. 前述の標準的なカリキュラム体系とは別に,本学部では「プロジェクト演習」というユ. いた教育実践について述べる.CG の学習では,プログラミングによる演習が大きな効果を. ニークなカリキュラムを設置している.これは,標準的なカリキュラムだけでは物足りない. 持つ.本学においても,多くの CG 系の科目においてプログラミングを用いた教育を行っ. 学生を対象とした発展的学習を進めるために,各教員が独自に内容を設定する演習であり,. ている18) .. 感覚的には「道場」や「部活動」に近い.筆者らは「インタラクティブゲーム制作」という. 4. c 2012 Information Processing Society of Japan.

(5) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 図 5 演習科目学生作品の実行画面 Fig. 5 Student Works Images. 図 6 FK ツールキットを用いたゲームの実行画面 Fig. 6 Sample Image of Game using FK ToolKit.. プロジェクト演習を担当している.詳しい教育内容および成果分析については筆者らによる 論文19) にまとめた.本稿では概要のみ説明する.. • 言語は,多くは C++であるが,例外的に「C# + XNA」という選択肢も多い.. プロジェクト演習では,まず 1 年次前期にアナログな題材で「遊び」についての本質を学 ぶ.具体的には,新たなトランプゲームの創作や,割り箸鉄砲を題材とした遊びの提案な. • ゲームエンジン系はあまり採択されない.. どを通じて「面白さ」の原因を探求する.1 年次後期では,全員にプログラミングを必修と. • ゲーム用コントローラによる操作を前提とすることが多い.. し,インタラクティブなゲームに必要な技術的基盤を身につける.この段階では全員に FK. • 高スペック PC での贅沢な CG 表現よりも,ノート PC などのタイトな環境で快適に. ツールキットを用いて少人数グループにてゲーム制作を行う.2 年次からは,企画,プログ. 動作する方を優先する傾向がある.. ラマ,グラフィック,音声音楽などの役職を明確にしつつグループに分かれて制作を行って. 図 6,図 7,図 8 は,2011 年度のプロジェクト演習成果作品である.開発環境はそれぞれ,. いく.最終的には,3 年次の秋の段階での作品を毎年開催されている「東京ゲームショウ」. 図 6 のチームは FK ツールキット,図 7 のチームは DxLib,図 8 のチームは XNA を採用. に出展し,制作した学生自らが展示場で見学者に対応する.. した.. 2 年次から取り組むゲーム制作では,開発に利用する環境,言語,ツールは全て学生が自. 6. 各開発環境の差異. 由に選択することとしている?1 .調査や学習も全て個々に任せるものとしている.ただし, 教員や上級生による助言はある.時には,本来の企画に沿わない技術を採用する場合や,学. 5 章の後半で, 「プロジェクト演習」という科目で FK ツールキットやその他のシステムに. 生の持つ素養では対応できないような難しい技術を採用することもあり,場合によっては制. よるデジタルゲーム制作について述べた.数年の実践を経て,独自に制作用システムを開発. 作自体を取りやめてしまうことも生じる.プロジェクト演習は必修科目ではないので,その. していくことの長所と短所が浮き彫りになってきた.本章では,各環境を用いた制作の比較. ような「成功の保証がない道程」というのを経験する貴重な機会であるというのが,本科目. を定性的にではあるが述べる.. の指針の一つとなっている.そのような状況下で学生が選択する開発環境には,以下のよう. 6.1 FK ツールキットによる開発の特徴. な興味深い傾向がある.. FK ツールキットを採用したチームの強みは,なんといってもツールキットの開発者が学 内にいることである.初学者にとっては,どのようなシステムも資料は膨大となるものであ り,疑問が生じた場合の解決は難しい.また,ツールキットやゲームエンジンを利用した開. ?1 ただし,ノベル系の制作環境については本科目の趣旨にふさわしくないとして,選択肢からは外すように指示し ている.. 発を行う場合,システム内部での挙動に不審点を感じることが多々ある.このような状況の. 5. c 2012 Information Processing Society of Japan.

(6) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. その一方,欠点としては参考となるサンプルソースや事例の不足が挙げられる.現時点に おいて FK ツールキットは学外での知名度は高いとは言えず,Web 上の検索や書籍といっ た手段で得られる情報は限られる.近年の学生においては,学習を進める上で Web の検索 性を重要視する傾向があり,直接の対話を敬遠するタイプの学生にとってはかえって敷居 が高い.また,有名な開発環境においては大抵 Tips と言えるような事例サンプルソースが. Web などで手に入ることが多いが,独自のツールキットを用いる場合はプログラマ自身が 機能を組み合わせて実現する方法を考えなければならず,そういったことが得意でない学生 にはやはり「既にできることがわかっている環境を選択したい」という思考が生じるようで ある.. 6.2 DxLib による開発の特徴. 図 7 DxLib を用いたゲームの実行画面 Fig. 7 Sample Image of Game using DxLib.. DxLib は,最近のバージョンでは 3D 形状の表示にも対応したが,基本的には 2D での 描画に最適化したライブラリである.設計モデルはイベントドリブン型で描画ルーチンを呼 び出すというものである.描画ルーチン内で常に全描画要素の再描画を行うというシンプ ルな構造を持つため,初学者にとって最初は理解しやすく扱いやすい.そのため,本学では プロジェクト演習以外でも学生によるゲームの自主制作においても採用される実績が多い. また,3D は PC による性能差が激しく,特に学生が所有するノート PC ではあまり満足な パフォーマンスが得られない場合が多いが,2D 処理による表示性能は現在の PC において は飽和状態と言えるため,5 章の後半でも述べたように処理の軽さを優先するようなチーム には重宝されている傾向がある. ただし,そのシンプルな構造ゆえに,ソースプログラムの規模増大や複数人による共同開 発の段階で問題が生じることも多い.FK ツールキットや XNA 等ではそのような破綻が生. 図 8 XNA を用いたゲームの実行画面 Fig. 8 Sample Image of Game using XNA.. じにくい構造を念頭に設計しているが,DxLib では手軽さを優先し高度な構造を犠牲にし ている側面があり,初学者が多いチームにおいては途中から苦戦を強いられることが多く見. ときに,実際の分析をツールキット開発者に頼むことができるということも大きなメリット. 受けられる.また,途中からの別システムへの移行が困難な場合が多く,その段階で事実上. である.. 一からのやり直しとなる場合が多い.これは,DxLib が持つ問題というよりも,その容易. また,作品制作上で必要な機能がツールキットで実装されていない場合に,その対応を直. さからあまりプログラミングの経験がない学生が安易な設計のまま素材を増大させてしま. 接依頼することができる.無論,どのようなシステムにおいても開発者に機能追加や性能改. うことや,機能を無頓着に付加してしまうことに起因すると言える.. 善を依頼することは可能であるが,直接のコミュニケーションがとれることは互いに大きな. また,当然ながら DxLib がサポートしていない機能がある場合,開発元がサポートしな. モチベーションにつながっていく.FK ツールキットにおいても,当初は研究支援用という. い限りはそういった機能を利用することはできない.多くの場合,技術力があればそういっ. こともあり,多くのゲーム制作上で必要な機能が不足していたが,このような学生からの要. た機能を追加することや代替手段を用意することは可能ではあるが,学生の技術力がそれほ. 望で実装された機能も数多い.. ど高くない場合でお手上げとなるケースが多く見受けられる.このような自体は,外部で開. 6. c 2012 Information Processing Society of Japan.

(7) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 発されているライブラリやツールキット,あるいはゲームエンジンを利用する場合は潜在的. に,より効果的な教育についても追求していきたい.. に存在する問題である.. 参. 6.3 XNA による開発の特徴. 考. 文. 献. 1) Khronos Group: OpenGL, (online), available from hhttp://www.opengl.orgi (accessed 2012-1-1). 2) Microsoft: DirectX デベロッパーセンター, (オンライン), 入手先hhttp://msdn.microsoft.com/ja-jp/directx/i(参照 2012-1-1). 3) Microsoft: XNA Game Studio 4.0, (online), available from hhttp://msdn.microsoft.com/ja-jp/library/bb200104(XNAGameStudio.40).aspxi (accessed 2012-1-1). 4)  山田巧:DX ライブラリ置き場, (オンライン), 入手先hhttp://homepage2.nifty.com/natupaji/DxLib/i(参照 2012-1-1). 5) Unity Technologies: Unity, (online), available from hhttp://unity3d.com/japan/i (accessed 2012-1-1). 6) Epic Games: Unreal Technology, (online), available from hhttp://www.unrealengine.com/i (accessed 2012-1-1). 7) Fine Kernel Project: Fine Kernel ToolKit System, (online), available from hhttp://fktoolkit.sourceforge.jp/i (accessed 2012-1-1). 8) Bill Spitzak and others: Fast Light Toolkit, (online), available from hhttp://www.fltk.org/i (accessed 2012-1-1). 9) Nokia Corporation: Qt - クロスプラットフォームのアプリケーション開発フレーム ワーク, (オンライン),入手先hhttp://qt.nikia.com/title-jp/i(参照 2012-1-1). 10) NVIDIA Corporation: Cg Tookit, (online), available from hhttp://developer.nvidia.com/cg-toolkiti (accessed 2012-1-1). 11) Khronos Group: OpenGL Shading Language, (online), available from hhttp://www.opengl.org/documentation/glsl/i (accessed 2012-1-1). 12) NVIDIA Corporation: 並列プログラミングおよびコンピューティングプラットフォー ム, (オンライン),入手先hhttp://www.nvidia.co.jp/object/cuda home new jp.htmli (参照 2012-1-1). 13) Khronos Group: OpenCL, (online), available from hhttp://www.khronos.org/opencl/i (accessed 2012-1-1). 14) 阿部雅樹,渡辺大地:エネルギー波表現のリアルタイムレンダリング,芸術科学会論 文誌, Vol.9, No.3, pp.93–101 (2010). 15) Takeuchi, R., Watanabe, T. and Yamakawa, S.: Sketch-based Solid Prototype Modeling System with Dual Data Structure of Point-set Surfaces and Voxels, International Journal of CAD/CAM, Vol.11, No.1, pp.1–16 (2011). 16) 杉山直隆,竹内亮太,渡辺大地,三上浩司:立体視ゲームにおける HUD の視認性に 関する実証実験 (2011). CEDEC2011 インタラクティブセッション.. XNA を採用するチームの多くは,技術に対して意欲的な意識を持つ学生が所属している 傾向がある.そのためか,XNA を採用したチームの作品は高度な技術を用いたものとなる ことが多い.XNA は Microsoft 社がゲーム開発環境として頻繁に更新しており,発表以来 常に最新の技術が駆使できるゲーム制作環境であり続けている.資料も豊富であり,学習の 負担を厭わないのであれば非常に優れた開発環境と言えるものである. その一方で,XNA を採用することによる支障は大きく 2 点が挙げられる.第 1 は,C#と いう言語の習得に関する問題である.C#言語は C++ と比較すると本学では利用者数,利 用頻度共に少数派であり,Web や書籍のみで理解できる学生でないと習得は難しい.従っ て,プログラミングを担当した学生の素養に大きく依存してしまう面が強い.第 2 の問題と して PC のスペックの問題がある.XNA が頻繁にアップデートされていることは前述した が,アップデートの際に必須の PC スペックが引き上げられることが多い.その場合,こ れまで利用していた PC が急に開発に利用できなくなるという状況が発生してしまうこと がある.旧バージョンは Microsoft のダウンロードセンターからも削除されてしまうため, 開発に必要なインストーラやデータを個々で保存していない場合,学生が PC 自体を買い換 えなければならない自体となり,場合によっては制作チームから離脱せざるを得ないという こともある.これは学生に特有の問題ではあるが,システムの開発母体が外部にあることの 潜在的問題ともいえる.. 7. ま と め 本論文では,本学にて開発を進めているリアルタイム 3DCG 用のツールキットとモーショ ン・アニメーション制作ツールを紹介し,その教育や研究での実践例を述べた.また,独自 のツールキットを教育で用いることの長所と短所についての定性的な分析を行った.最も大 きなポイントは,独自のツールキットやソフトウェアを用いた開発体制であれば,需要のあ る機能を自前で準備できることが可能であるということである.一方,短所としてはサンプ ルコードや Tips が不足がちになることや,自習教材なども自前で準備する必要があり,よ く知られている環境に比べて自習環境が劣悪となるということである. 今後,資料を充実すると共に,さらにシステムの機能充実と使いやすさの改善を進めてい く予定である.また,学外においても利用されていくような優れたシステムを目指すと共. 7. c 2012 Information Processing Society of Japan.

(8) Vol.2012-CG-146 No.5 2012/2/7. 情報処理学会研究報告 IPSJ SIG Technical Report. 17) O.Mizno: Metasequoia, (online), available from hhttp://www.metaseq.net/metaseq/i (accessed 2012-1-1). 18) 近藤邦雄,伊藤彰教,三上浩司,渡辺大地:Example Based Programming に基づく CG 制作の入門教育,図学研究, Vol.45, No.3, pp.3–10 (2011). 19) Mikami, K. et al.: Selected Papers from the SIGGRAPH Asia Education Program: Construction trial of a practical education curriculum for game development by industry-university collaboration in Japan, Computer and Graphics, Vol.34, No.6, pp.791–799 (2010).. 8. c 2012 Information Processing Society of Japan.

(9)

Fig. 1 Sample Image of Research using FK ToolKit and CUDA.
図 5 演習科目学生作品の実行画面 Fig. 5 Student Works Images.
図 8 XNA を用いたゲームの実行画面 Fig. 8 Sample Image of Game using XNA.

参照

関連したドキュメント

[r]

A fast and fine position control method of an ultrasonic motor has been already studied which uses phase shift input and applies a linear control system.. However this method has

例えば,わが国の医療界と比較的交流の多い 米国のシステムを見てみよう.米国では,卒後 1 年間のインターンの後, 通常 3

本来的自己の議論のところをみれば、自己が自己に集中するような、何か孤独な自己の姿

  「教育とは,発達しつつある個人のなかに  主観的な文化を展開させようとする文化活動

ダウンロードファイルは Excel 形式、CSV

This product includes software developed by the OpenSSL Project for use in the OpenSSL

As the input files of different types arrive in an online fashion, we need to choose between the available compression methods, incurring the processing costs for each input, as well