c#でゲームを作る2016 第7回

23
C#でゲームをつくろう 第柒回 06/04 担当: suzusime

Upload: -

Post on 11-Jan-2017

386 views

Category:

Technology


0 download

TRANSCRIPT

C#でゲームをつくろう第柒回 06/04

担当: suzusime

自己紹介

京都大学理学部理学科二回生

ID: suzusime(すずしめ)

物理学徒

人生の道をどこで間違えたんだろうなぁ

近況報告

解析学の中間試験……むり

統計力学ゼミ発表……はやく準備しなきゃ

量子力学・微分幾何・確率統計あたりの勉強がしたい

でも微積も線型もなにも分かってない……

電磁気学の授業わからず

S自評どうするんや……

ゲーム作りたい

お絵かきもしたい

CTF……

死ぬしかないじゃない

自己紹介をしましょう

名前(もし部員であればID)

所属(学部、回生など)

出身地

好きなゲーム、本、音楽等

一言

(※全て任意です)

Slackチャンネルに入ってね

Slackに#csgameというチャンネルを作ったので、部員の人はここに入ってください。質問などをここでも受け付けます。

まだ部員でない方も、もし質問があれば口頭で説明するので、安心して下さい。

初めての人のために

このプロジェクトでは最後(夏休み前か後を予定)に作ったゲームを発表してもらおうと思っています。

みんなで遊んで品評会をしましょう。

実際に作る段になってから考え初めても大変なので、どういうものを作りたいか予め考えておいて下さい。

高度なものは求めません。3分ゲーのようなもので結構です。

提供素材

Id: hakurin君がこのプロジェクトのためにキャラ立ち絵をかいてくれました!

自分としての目標を

自分として目標をもってやってみると良いのではないでしょうか。

ゲームを完成させること

一つの例として「ゲームを完成させること」を目標にしてみるのはいいのではないかな、と思います。

誰かゲーム会社の人がツイッターで「どんな稚拙なものでも、ゲームをエンディングまできちんと完成させた学生さんはどれほどいるだろう?」みたいなことを言っていたのを見た記憶。

ちなみに私は完成させたことがないのでこれを目標にしたいと思います。

今回の内容

オブジェクト指向の話

コーディング規約の話

デバッグのやり方

実習:キャラクターを動かしてみる

キャラクターのクラスを作る

キー入力を受け付けるクラスを作る

オブジェクト指向の話

レジュメを読みます。

コーディング規約の話

http://dobon.net/vb/dotnet/beginner/namingrules.html

デバッグとは

バグ:プログラムが想定したとおりに動かないようになる欠陥のこと。

デバッグ:バグを潰すこと。

デバッグしないと死んでしまう!

デバッグしないと死んでしまう!

デバッグの基本手法

「メモリを覗く」「1ステップずつ実行する」などの手法があります。

プログラムはメモリ上に展開され、それをCPUが順番に読み取ることで実行されます(C#の場合はCLIという規格に基づいた仮想環境上で実行されます)。

そこを覗いて動作を確認したり、直に書き換えて動作を変更したりすることでバグを探します。

デバッグの基本手法

実行ファイル(*.exe)だけが与えられたときにデバッグするのは、かなり難しいです。

やりたいひとはCTF勉強会へ!

今回はソースコードを自分で書いているので、デバッグに適した形式でコンパイルできるなど、とてもやりやすいです。

Visual Studioは最高。

デバッグの基本手法

ということで実際にやってみましょう。

実習タイム

キャラクターを動かしてみましょう。

実は前に一度画像を動かしていますが、あれは座標や画像をGame1クラスに直接指定していて設計としてはあまりにも初歩的でした。

もう少しオブジェクト指向らしく、キャラクターのクラスをつくって、そこにキャラクターの座標や画像をもたせてみましょう。

設計案

Game1クラス

キャラクターを入れるList

(時間があれば)キーボードの状態を持つクラス

設計案

Characterクラス

キャラクターの座標

キャラクターの画像

設計案

Keysクラス

各キーが押され続けているフレーム数

Monogameの初期装備のキーボード入力クラスは「この瞬間に押されているか否か」しかとれないので、長押しの情報をとるためにこのようなクラスを作る。

実習タイム

では今から残りの時間でやってみてください。

分からなかったらググるなりTAのひとに聞くなり。

次回予告

次回は6月11日です。

予定は未定。

以上です

おつかれさまでした。