関西ゲームプログラミング勉強会で発表してきた!

資料

発表資料: http://goo.gl/EpAXm
プログラム及び加算器: http://goo.gl/eeYix

概要

ゲームプログラミング勉強会ということで、ゲームを作るということについて話しました。
最近ゲームというと見た目が派手ですごい分、自分には難しそう・・・という人がいると思い、実際にはそうではなく、簡単なものであればすぐに作れるよという内容でした。


・・・というのは建前で実際はライフゲームで(簡易)計算機を作ったというのが主題。

内容

発表資料を参照してください。
また作成したプログラム及び作成した回路も上記資料を参照してください。

プログラムについて

作成したプログラムはライブラリとしてQt4を使用しています。
書くプラットフォームに合わせてQtをインストールしてください。

プログラムの仕様

基本的にはボタンに書いてある通りです。
このプログラムは起動時にカレントディレクトリにあるdata.pngを読み込みそれを盤面をして表示します。
また終了時にはその盤面をカレントディレクトリにdata.pngという名前で保存します。

付属の画像ファイルについて

halfadderは半加算器の実装です。
赤色で示した部品が入力A、入力Bに相当します。
付属の状態では各入力がオフの状態にしてあるので、入力をオンにするためにはイーターと呼ばれるブロックを消去した上で実行してください。
入力A,Bの各状態で実行した結果がプレゼン資料に含まれているためそれを参考にすると解るやすいかもしれません。


また、作成において使用した部品をディレクトリにまとめておきました。
参考にしてください。

ウラ話

本来は特に時間指定がなかったため気軽にスライドを作っていたら30枚ほどいったので発表時間は10分ちょっとを考えてました。
しかし、意外と時間が遅れたため5分ほどでしゃべることになり、内容もゲームプログラミングからは少し外れていたため高速(光速?)で発表してしまいました。
終わって時間見たらあまりにも速すぎて、さすがに雑に発表しすぎたかなぁ〜って反省してます。。。


発表の内容としては、何気に力を掛けたので見てもらえたらうれしいです。
一番時間をかけたのはここで、むしろライフゲームを作る時間は何もかけてないぐらいです。


また、ライフゲームのプログラム自体は結構適当に書いているためコードは汚く、さらに効率の悪いプログラムとなっています。
あまり突っ込まないでください><

参考資料

Gentooでカレーなパーティー

Gentooカレーに行ってきました!
http://www.cne.info.hiroshima-cu.ac.jp/15/1039

内容としてはGentooの講演会らしいのですが、Gentoo自体ほとんど触ったことなかったので今回はいろいろと楽しみでした。
具体的に何をしたかというとGentooとは何かやGentooのインストールに関して、さらにはカレーなどなどたくさんのことが行われました。

あまり勉強会の報告を書くのは得意ではないし面白くない(主に自分が)ので(ry

ということで最後に私が感じたことを列挙しておきます。

  • Gentooユーザはそこそこ多い
  • 最近広島もGentooが熱いらしい
  • 入れるの迷ったらGentoo
  • OSのインストールに5時間とか普通
  • ご飯を食べながらインストール
  • とりあえずemerge
  • Xのインストールは最近早くなったよ!

※この列挙したものは主にネタで激しく偏見が入っています。
実際には(ry

あとカレーおいしいよカレー!


#前回の記事と同じとかそんなことはナイデスヨ?

UbuntuにF#を入れる

合宿中にF#のコンパイラの入れ方を教わったので備忘録に書いておきます。

環境

インストール

F#のコンパイラをダウンロードしてきます。
http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/release.aspx
ただし、最新版ではMono 2.8以上を要求され、Ubuntuのデフォルトでは現在Mono 2.6.7なので1つ前のバージョン(F# August 2010 MSI/ZIP (version 2.0.0.0))のzipを落とします。
次にunzipしたあと展開したディレクトリに入り次のコマンドでmono.snkをダウンロードします。

> wget -O mono.snk http://github.com/mono/mono/raw/master/mcs/class/mono.snk --no-check-certificate

署名が合わないらしく--no-check-certificateを指定しなければなりません。
#どうにかならないのかなぁ・・・

そして展開したディレクトリのルートにあるinstall-mono.shを実行します。

これで一通りの作業は終わりで、コンパイラ自体は展開したディレクトリのbinにfsc.exeやfsi.exeがあるので必要に応じてパスを通してください。

リリカルで関数な合宿

リリカル合宿に行ってきました!

内容としてはハッカソンらしいのですが、ハッカソン自体参加したことなかったので今回が初ハッカソンとなりました。
具体的に何をしたかというとF#やgit、OCaml、Coq、またScalaAndroid、さらにはICカードの読み取りを用いたものなどなどたくさんのことが行われました。

あまり勉強会の報告を書くのは得意ではないし面白くない(主に自分が)ので、合宿で何が作られたのかなどは他の方のを探してください。←

ということで最後に私が感じたことを列挙しておきます。

  • F#、OCaml、Coq、gitがメイン
  • ScalaAndroid
  • それ以外は少数どころかいないレベル
  • 手続き型言語なにそれ?
  • 関数型の説明の次はモナドの証明
  • すごく前提条件高し(**知ってるよね?的な)

※この列挙したものは主にネタで激しく偏見が入っています。
実際には他の言語も使うし、優しく教えてくれる方ばかりでした

あとなのはかわいいよなのは

第一回 カーネル/VM探検隊@関西で発表してきた!

第一回 カーネルVM探検隊@関西(http://atnd.org/events/9074)で発表してきました。
カーネルVMも話せるような技術は持ってないので自分ができそうなネタで話してきました。
ここでは発表では話さなかった(話せなかった)詳細を書きます。

※更新しました(2011/02/23)
 詳細はひとつ下の見出しから

詳細は続きを読むから。

続きを読む