XNA Framework

Similar documents
目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1

自己紹介 池原大然 デベロッパーエバンジェリスト INETA 登録スピーカー Blog

TFTP serverの実装

第1回 マインクラフト・プログラミング入門

1. 目次 PixiModule ターミナルアプリ (ios 版 ) ソース説明 2. ios 版ご利用の前に ソースファイル内の用語の説明... 4 サンプル 4. ソースファイルの構成 Main.storyboard の説明 ViewControlle

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

InstallShield FAQ < 独自の InstallShield 前提条件を作成する > 注 ) このドキュメントは InstallShield 2014 Premier Edition を基に作成しています InstallShield 2014 以外のバージョンでは設定名などが異なる場合

Java言語 第1回

ArcGIS Runtime SDK for .NET アプリケーション配布ガイド

ミーティング記録の管理

10th Developer Camp - B5

RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for

ホンダにおける RT ミドルウェア開発と標準化活動 株式会社本田技術研究所基礎技術研究センター関谷眞

Mindjet MindManager Version 9 for Windows サービスパック 2 リリースノート : 2011 年 4 月 20 日

Windows Liveメールの設定

Microsoft PowerPoint - Skype for business の概要.pptx

novas HOME+CA WEB 設定画面アクセス方法 novas HOME+CA の WEB 設定画面接続方法 本製品の設定は WEB 設定画面から変更できます WEB 設定画面のアクセス方法は以下のとおりです 1 本製品と有線または無線 LAN で接続した端末で WEB ブラウザを起動します

インターネット132 インターネットに接続する パケット通信または無線 LAN(Wi-Fi ) 機能を使用してインターネットに接続できます LTE NET または LTE NET for DATA に加入していない場合は パケット通信を利用することができません パケット通信を利用する 本製品は LT

PowerPoint プレゼンテーション

Windows7 Windows Live ムービーメーカーで スライドショー作成しよう! PC 教室山下 0

REX-USB56 「FAX送信」編 第6.0版

Cisco ViewMail for Microsoft Outlook クイックスタートガイド (リリース 8.5 以降)

JACi400のご紹介~RPGとHTMLで簡単Web化~

Singapore Contec Pte Ltd. Opening Ceremony

プログラマブル LED 制御モジュール アプリ操作説明書 プログラマブル LED 制御モジュール設定アプリ操作説明書 適用モジュール 改訂番号 エレラボドットコム 1

各種パスワードについて マイナンバー管理票では 3 種のパスワードを使用します (1) 読み取りパスワード Excel 機能の読み取りパスワードです 任意に設定可能です (2) 管理者パスワード マイナンバー管理表 の管理者のパスワードです 管理者パスワード はパスワードの流出を防ぐ目的で この操作

Microsoft Word - USB60BCR_10.doc

BricRobo V1.5 インストールマニュアル

啓林館データベースソフト KeirinkanDB System インストールマニュアル 啓林館中学校 DB システムのインストール 啓林館中学校 DB システムは 算数 数学 と 理科 は別メディアとなります 1 教科をインストールしている場合 追加で別の教科をインストール可能です ( 教科追加イン

V-CUBE Gate 管理者用マニュアル

AppsWF ワークフロー設定ガイド Ver.1.1 株式会社オプロ

Microsoft Word - WebMail.docx

REX-C56EX FAX送信 第5.0版

スライド 1

SCPIサンプルプログラム クィックレファレンスガイド

目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発... 7 手順 1. アプリケーションの作成... 7 手順 2. データソースの作成と代入... 7 手順 3. テンプレートの作成 手順 4. レポートビューアの追加

本体内のメモリの合計容量と空き容量などを確認できます a ホーム画面で [ 基本フォルダ ] [ 設定 ] [ ストレージ ] マイファイルを利用する 本体に保存されている静止画や動画 音楽や文書などのデータを表示 管理できます a アプリ一覧画面で [ ツール ] [ マイファイル ] カテゴリ一

UNIVERGE SG3000 から SG3600 Ver.6.2(2012 年モデル ) への 移行手順 All Rights Reserved, Copyright(C) NEC Corporation 2017 年 11 月 4 版

アナリシスパターン勉強会 責任関係事例紹介 株式会社オーエスケイ小井土亨 (CBOP COM 分科会主査 ) 2000/07/19 1

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

本体内のメモリの合計容量と空き容量などを確認できます a ホーム画面で [ 基本フォルダ ] [ 設定 ] [ ストレージ ] マイファイルを利用する 本体に保存されている静止画や動画 音楽や文書などのデータを表示 管理できます a アプリ一覧画面で [Tools] [ マイファイル ] カテゴリ一

目次 1. ユーザー登録 ( 初期セットアップ ) を行う Office365 の基本的な動作を確認する... 6 Office365 にログインする ( サインイン )... 6 Office365 からサインアウトする ( ログアウト )... 6 パスワードを変更する... 7

本文書は、SAP ERP(以下、SAP)の消費税機能の概要について説明したものです

グラフィックトレーニング 概要.NET のグラフィック描画は どんなことができるのでしょうか? グラフィックオブジェクトやグラフィック環境 概念を理解するためには クラスを使って馴れることが近道です 本 書に記載されているコードをカットアンドペーストして 一つ一つの機能を体験してください 前提 グラ

Windowsユーザでも 手軽に作れるiPhoneアプリ

Enterprise Architect 12.1 機能ガイド

VB.NET解説

第 8 回の内容 クライアントサイド処理 JavaScript の基礎

メールデータ移行手順

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

1 POP 系の設定 重要事項 Windows10 のメールアプリで CCNet のメールを利用する場合 以下の点にご注意ください Windows 10 に標準でインストールされている メール アプリは 弊社のメール方式 (POP) に対応はしておりますが 本マニュアル制作時点 ( バージョン 17

1 目次 本書の構成 2 体験版申請用総合ソフトの機能 3 申請用総合ソフトとの相違点 体験版申請用総合ソフト ver.3.0 は, 本番用の申請用総合ソフト (3.0A) の機能に擬似データを加えたものです

Android Layout SDK プログラミング マニュアル

インストール手順 2 セットアップの種類 [ 標準インストール (S)] [Thunderbird を既定のメールプログラムとして使用する (U)] にチェックを入れ [ 次へ (N)] をクリックします インストール手順 3 セットアップ設定の確認 [ インストール (I)] をクリックします 2

UMLプロファイル 機能ガイド

PowerPoint プレゼンテーション

1. インストール方法 STEP 1 ダウンロードしたファイルを任意の場所に解凍します Windows 標準の機能を用いて解凍する場合は ファイルを選択して 右クリックメニューから [ すべて展開 ] を選択し 表示されたメッセージに従って解凍します STEP 2 解凍されたフォルダにある Setu

これらの情報は 外部に登録 / 保存されることはございません 5 インターネット接続の画面が表示されます 次へ > ボタンをクリックしてください 管理者様へ御使用時に設定された内容を本説明文に加筆ください 特に指定不要で利用可能であった場合は チェックボックスを オフ していただきますようご案内くだ

フォント・ロゴ作成ツール説明書

Microsoft Word - ModelAnalys操作マニュアル_

SpringSecurity

Rubyでゲーム作り!! Miyako vs StarRuby

conf_example_260V2_inet_snat.pdf


登録手順 1 の 2 Microsoft Outlook 2010 スタートアップ 参考 スタートアップ画面が表示されない場合 Microsoft Outlook 2010 の起動画面から [ ファイル ] タブを選択し [ 情報 ] をクリックします [ アカウント設定 ] [ アカウント設定 (

パケットモニター (Wireshark) の使い方 第 1 版 1.Wireshark とは ネットワーク上 (LAN ケーブルに流れている ) のパケットを取得して その中の情報を画面に表示するソフトウェア (LAN アナライザーまたはパケットモニター ) の 1 つに Wiresh

(Microsoft PowerPoint -

Cisco Jabber for Windows のカスタマイズ

1. ボイステクノに問い合わせ スマホで議事録 Pro のご利用に際して 専用のお問合せページ(Ctrl キーを押しながらクリック ) ページを開き 必要事項を入力し 送信してください 手動で URL を入力する場合は を

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料

Oracle DatabaseとIPv6 Statement of Direction

Transcription:

XNA Framework 2.0 M@STER SESSION 01

XNA Framework の技術的背景 システム基盤は.NET Framework マネージ環境で実行 クロスプラットフォーム Windows, Xbox360, Zune DirectX, MDX から独立している

開発 実行環境の構造 XNA Game Studio (Visual Studio 2005) XNA Framework XNA Game Studio Visual Studio 2005 を拡張したゲーム開発環境 コードの他に 画像などのコンテンツ管理機能も備わっている.NET Framework CLI.NET Compact Framework for Xbox 360 XNA Framework クロスプラットフォームのゲーム開発用フレームワーク Windows PC Xbox 360 CLI 共通言語基盤 ISO で承認されている国際標準規格

主な名前空間 Microsoft.Xna.Framework 基礎的なゲームの機能 Microsoft.Xna.Framework.Graphics グラフィック関連 Microsoft.Xna.Framework.Content コンテンツ管理 Microsoft.Xna.Framework.Audio オーディオ再生 Microsoft.Xna.Framework.Input コントローラ マウス キーボード入力 Microsoft.Xna.Framework.Storage ストレージ選択 Microsoft.Xna.Framework.GamerServices ゲーマーサービス Microsoft.Xna.Framework.Net ネットワーク

ゲームの起動 Game クラスを継承する コンストラクタ 継承クラス固有の初期化 Initialize() メソッド Game に関連した初期化処理 LoadContent() メソッド リソース コンテンツの生成 読み込み 初期化 ゲームループ Update() メソッド ゲームデータの更新 Draw() メソッド ゲームの描画 UnloadContent() メソッド リソース コンテンツの破棄 解放

ゲームの流れ Run ゲーム起動 Initialize 初期化 LoadContent コンテンツの読み込み BeginRun 開始前処理 Upload データ更新ゲームループ Draw フレーム描画 EndRun 終了前処理 ゲーム終了 UnloadContent コンテンツの解放

Update() メソッド ゲームループ ゲームデータを 次 の状態に更新する コントローラなどの入力を受ける 関連するコンポーネント 機能の更新 他のあらゆる処理よりも優先される Draw() メソッド ゲーム画面 ( フレーム ) を構築する 処理が遅れている場合は省略される

固定ステップ 固定と可変ステップ デフォルトの設定 1フレームを呼び出す時間間隔を固定する 常に一定の速度でゲームを進行できる 処理が遅れた場合は Draw() を省略 可変ステップ 可能な限り早い速度でフレームを描画する

パフォーマンス 安定したゲームループの実行が重要 ゲームはリアルタイムシステム 目標の時間内に処理を終わらせる 秒 60 回の Draw() が目標 1 フレームの描画は 16.6 ミリ秒 メモリ管理が重要 インスタンス化と破棄の効率化 変換処理の効率化

グラフィックス Microsoft.Xna.Framework.Graphics 名前空間 高度な 3 次元グラフィックス処理が可能 基本的な機能は BasicEffect でサポート HLSL を使用したエフェクトの記述 モデルの描画 (X FBX に対応 ) 擬似的に 2 次元グラフィックスを描画できる ( スプライト )

SpriteBatch クラス 画像の描画 擬似的に 画像やフォントを描画する Draw() メソッド 画像を指定座標に描画する DrawString() メソッド 文字列を指定されたフォントで描画する Texture2D ビットマップ画像を表す

デバイス管理 GraphicsDevice の管理は複雑 適切なデバイスの選択 デバイスの初期化 設定 画面モードの遷移 GraphicsDeviceManager デバイスの生成 管理を代行 手動管理も可能だが まずやらない

コンテンツ パイプライン 事前コンパイルによる最適化 画像 3D モデル 音声 フォントなどには ゲームに関係のないデータが含まれているため冗長である ビルド時に データをオブジェクト表現可能なバイナリに直列化し 実行時の負担を軽減する Windows 用プロジェクトと Xbox 360 用プロジェクトでリソースを共有できる 独自のデータ形式を組み込むことも可能 アセット ビルド時にリソースをコンパイルし 直列化したデータ アセット名から 実行時にデータを読み込むことができる

ContentManager アセットの読み込み ゲームのコンテンツを管理する Load<T>() メソッド 実行時にアセット名からファイルを読み込み 適切なオブジェクトとして返す

コンポーネント化とサービス 再利用可能なゲームの部品化 ゲームコンポーネント GameComponent クラスを継承して作成 データ更新 描画の移譲 ゲームに対し 任意に追加 削除できる ゲームサービス サービスプロバイダの提供 疎結合でコンポーネントを連携させる仲介機能

ガイドの提供 ゲーマーサービスの機能 アカウントのサインイン サインアウト メッセージの表示 キーボード入力 ストレージの選択

ゲーマーサービスへの対応 GamerServicesComponent XNA Framework の開発モデルに従う コンポーネントとしてゲームに登録可能 GamerServicesDispatcher のラッパー GamerServicesDispatcher ゲーマーサービスの提供 Initialize() と Update() の呼び出しが必須 開発モデルに依存しない

ネットワーク LAN ( システムリンク ) Live に対応 クロスプラットフォーム セッション単位による通信管理 ホストによるセッションの作成 セッションの検索 参加 信頼性のある UDP プロトコル パケット単位のデータ送受信 低水準なパケット管理は不要 信頼性の制御が可能

セッション プレイヤーを接続させる部屋 ホスト セッションを作成したゲーム ゲームの状態 参加者数などを管理 他の参加者の参加を待機 セッションへの参加 セッションの検索 セッションの参加

セッション検索 セッションは GUID に関連付けられる 実行中のアセンブリと同一の GUID のゲームによって作られたセッションを検索する GUID を一致させれば 異なるプロジェクトによって作られたゲームの間での通信も可能 Xbox Live アーケードの制限 ゲームは GUID によって識別される 同じ GUID のゲームを複数配置できない 同一タイトルでも GUID が異なれば配置可能

バイト配列の送受信 データの送受信 最もシンプルな方法だが データを直列化する必要がある PacketWriter によるデータ送信 BinaryWriter を継承するクラス 基本的なデータ型の Write() メソッドを実装 PacketReader によるデータ受信 BinaryReader を継承するクラス 基本的なデータ型の Read~() メソッドを実装

参考 XNA デベロッパーセンター http://www.microsoft.com/japan/msdn/xna/ XNA Game Studio で作るマインスイーパ http://www.microsoft.com/japan/msdn/vstudio/ express/learn/xna/ XNA Japan Team Blog http://www.microsoft.com/japan/msdn/vstudio/ express/learn/xna/ XNA Team Blog ( 英語 ) http://blogs.msdn.com/xna/