windowsappで楽しむゲームプログラミングのセカイ

23
Windowsで楽しむゲームプログラミングのセカイ 2015/5/10 @garicchi 2015/5/10 1

Upload: ryota-togai

Post on 22-Jul-2015

755 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: WindowsAppで楽しむゲームプログラミングのセカイ

Windowsで楽しむゲームプログラミングのセカイ

2015/5/10 @garicchi

2015/5/10 1

Page 2: WindowsAppで楽しむゲームプログラミングのセカイ

栂井 良太Togai Ryota

@garicchi

がりっち

Shizuoka Univ

JAZUG

Microsoft MVP for Windows Platform Development

Microsoft Student Partners

対話システム

コーヒー

経済、教育

ゲームプログラミング

http://garicchi.com

Page 3: WindowsAppで楽しむゲームプログラミングのセカイ

普段はここに住んでます

2015/5/10 3

Page 4: WindowsAppで楽しむゲームプログラミングのセカイ

最近考えていること

›どうやったら学生がWindowsAppsを作ってくれるのか

2015/5/10 4

Page 5: WindowsAppで楽しむゲームプログラミングのセカイ

なぜ学生はWindowsAppsを作らないのか

2015/5/10 5

›市場› ✕

› WindowsAppsで儲けるのは難しい

›人気› ✕

› 一時は人気が出かけたがWindows <<超えられない壁<<iOS,Android

›所持デバイス› △

› WindowsならまだしもWindowsPhone

Page 6: WindowsAppで楽しむゲームプログラミングのセカイ

なぜ学生はWindowsAppsを作らないのか

› (人気がない&&ユーザーが少ない) != 作らない› 趣味レベルに限っては必ずしもそうとは言えない

›学生を2種類にわけて考えてみる

1. プログラミングをすることで得られる利益を目的とする学生› iOS、Androidなど人気プラットフォーム

2. プログラミングをすること自体を楽しむ学生› 人気があるプラットフォームよりもむしろ自分が持ってるデバイス、環境で楽しめるプラットフォームを好む

› ゲームが好きな学生も多い

2015/5/10 6

Page 7: WindowsAppで楽しむゲームプログラミングのセカイ

Windowsとゲームプログラミング

›意外とWindowsで動くゲームを作りたいと思っている学生は多い› 利益を求めているわけではない

› 自分の持っているPCで動くオレオレゲームを作ってたまに友達と遊ぶぐらいのことがしたい

›なぜWindows?› FPSや東方Project、フリーゲームなど、Windows上で遊ばれる

› ↑のようなものを自分も作って配布したいと思っている

2015/5/10 7

Page 8: WindowsAppで楽しむゲームプログラミングのセカイ

自分の過去を思い出す..

›東方Projectに激ハマリ› 作者が自分でゲームを作っていることを知って自分も勉強

2015/5/10 8

Page 9: WindowsAppで楽しむゲームプログラミングのセカイ

自分の過去を思い出す..

›寮務主事を倒すゲームを作成(ボスは校長)› 友達にexeを配布して楽しんだ

›思えばあの頃、めちゃくちゃプログラミングスキルが向上したし、楽しかった

2015/5/10 9

Page 10: WindowsAppで楽しむゲームプログラミングのセカイ

2015/5/10 10

ゲームプログラミング

プログラミングスキルの向上

プログラミングの楽しさ

WindowsApps

Windowsゲームプログラミング

→コレいけそう

Page 11: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングのメリット

›インディーズゲームプログラマーに持って来いの市場› 企業がソシャゲ参入をしていない

› ぶっちゃけちょっとおもしろいもの作れば余裕でランキング入りできる(と思う

› つまらないアプリを作っても低評価で落ち込むことが少ない

›ストアアプリが全画面なの嫌なんだけど› ゲームって全画面でやるじゃろ?

2015/5/10 11

Page 12: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングのメリット

›ゲーム配信インフラ› 今までのexe配布は負担が出かかった

› サーバーの用意

› バージョン管理

› インストールの説明書作成

› Windowsストアでは› ゲーム配信ストアを利用

› ハッピー

›課金インフラ› アプリ内課金で小遣い稼ぎもできるかも?

2015/5/10 12

Page 13: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングのメリット

›Windows10のOne Windows› 僕の友達1/1にアンケートをとった結果

› ゲーム用ハードで動かせるとすごくうれしいらしい

› Windows10→Xbox One

› さまざまなデバイスと選択肢

›コントローラの重要性› 今どきコントローラ操作って…

› →コントローラで動くゲーム作れたら楽しい!

2015/5/10 13

Page 14: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングのメリット

›プログラミングスキルの向上› ツール系アプリケーション

› アルゴリズムの実装の必要性が薄い

› ボタン配置してイベント処理書くだけではスキル向上が難しい

› ゲームプログラミングの場合› アルゴリズム一つによって結果が見違えるほど変わる

› メモリ管理、高速化、などなど意識することができる

›情報教育› 情報学において習得すべき分野をほぼすべてカバー

› オートマトン、アルゴリズム、データ構造、ネットワークプログラミング、オブジェクト指向、線形代数学、コンパイラ、人工知能etc…

2015/5/10 14

Page 15: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングの障壁1

›DirectX› Microsoftが標準で推奨しているゲームプログラミング方法

› 自由度が高い分非常に難しいAPI郡

› 引数の多さもあるがその型名の長さ

2015/5/10 15

Page 16: WindowsAppで楽しむゲームプログラミングのセカイ

WindowsAppsゲームプログラミングの障壁2

›公式がゲームプログラミング入門者にやさしくない› ドキュメントがろくなものではない

› サンプルもまともなものがない

› プロジェクトテンプレートもない

› →なぜか?

›私の推測だけど› そもそも公式が入門者に向けたものではない

› すでにDirectXでゲームフレームワークが構築してある企業がフレームワークをWindowsAppsに移植しやすいようにしているから?

2015/5/10 16

Page 17: WindowsAppで楽しむゲームプログラミングのセカイ

›こうなるのは仕方ないとして(実際右側は優れているし)

2015/5/10 17

›Windowsでゲームを作りたいと思っている人の障壁はなくすべき

›じゃないと↑の状態が加速するばかり

Page 18: WindowsAppで楽しむゲームプログラミングのセカイ

では私達になにができるのか?

›ゲームプログラミングの技術スタック(考案: 俺)

2015/5/10 18

グラフィックスAPI(例 DirectX、OpenGL)

ゲームライブラリ(例 XNA、MonoGame、DxToolkit、Dxライブラリ)

ゲームフレームワーク(例 Cocos2dx)

ゲームエンジン (例 Unity、Unreal)企業が提供(非常にHot)→

MSが提供している部分→

オープンソース→

オープンソース→

ツール化されたゲーム制作ツール

激ムズ自由度MAX API

グラフィックAPIを使いやすく

ゲームの実用的な処理を管理

Page 19: WindowsAppで楽しむゲームプログラミングのセカイ

Shiztex

›静岡大学情報学部の学生を中心としたゲーム開発コミュニティ› 今言ったようなゲーム開発の障壁をなくして、楽しくゲームを作ることを目的

› したいなぁと思ってること› ゲーム開発の入門記事の執筆

› ゲーム開発フレームワークの作成

› サンプルコードの作成

› 現実› アクティブユーザー俺一人

2015/5/10 19

Page 20: WindowsAppで楽しむゲームプログラミングのセカイ

なんとなくやったこと

›ホームページ作成› http://shiztex.com

›Google+ コミュニティの作成› https://plus.google.com/communities/112153060056010608391

›MonoGame用フレームワークの作成› https://github.com/garicchi/CobaltFrame

2015/5/10 20

Page 21: WindowsAppで楽しむゲームプログラミングのセカイ

MonoGame

› Version 3.4で公式よりも早くWindows10対応

› CrossPlatform(iOS,Android,Windows,Linux)

› Xamarin環境で開発できる› VisualStudio、XmarinStudio

› XamarinのAPIが使える

›個人的に一番注目したい

2015/5/10 21

Page 22: WindowsAppで楽しむゲームプログラミングのセカイ

CobaltFrame

› MonoGame用のクロスプラットフォームゲームフレームワーク

› めざせCocos2dx

2015/5/10 22

Page 23: WindowsAppで楽しむゲームプログラミングのセカイ

まとめ

›WindowsAppsはWindowsAppsで利益を求めない学生や趣味ゲームプログラマーこそ楽しめるプラットフォームである可能性を提示

›↑のようになるためにはゲームプログラミングに対する障壁を消す› 勉強会、フレームワーク作成、記事執筆etc…

›コミュニティをよろしくお願いします!

2015/5/10 23