はてなブログに移転します

最早はてな記法で書くのがつらいので、はてなブログならmarkdownで書けるという事で、移転する事にしました。

http://rnkv.hatenadiary.jp/

また、その際に、ゲーム開発の記事を書く事を重視する事にしました。

(そもそも、最近ほとんど記事を書いてなかったのもあるので)

古い記事はここに残したままにしておきます。

関西ゲーム勉強会に行ってきた

これ。 https://ksgs.doorkeeper.jp/events/31863

取ったメモの一部を残しておく。

例によって、メモの内容は正確でない可能性が普通にあります(聞き間違い等)。

また、自分が興味を持ったポイントしかメモしていないので、場合によっては講演された方の意図と違ったメモになってしまっている可能性も普通にあります。

公開NGの情報は全部伏せた筈で、何回も文章チェックしてから投稿してますが、もし漏れがあったらごめんなさい。

続きを読む

iDC大塚家具に、椅子を座りにいってきた

http://gigazine.net/news/20110904_idcotsuka_showroom/

座りに行く前に考えていたチェック項目

  • キーボード操作しやすい
    • 上下に調整可能なアームレストがついてれば、大体は大丈夫そうな感じだった
  • 猫にボロボロにされなさそうだとベター
    • といっても、布でもメッシュでも皮でも爪を研がれたら駄目そうではある。とりあえずメッシュだと爪がすぐ引っかかりそう
    • しかしこればっかりは分からないので、この条件はあまり気にしない事にした
  • 前傾姿勢ではなく、もたれるタイプがよさそうに思える。ただし実際に座ってみての確認が必要
    • 実際に見に行ってみたら、どれももたれるタイプだった。問題なさそう
  • オフィスチェアじゃなく、リクライニングチェアでもよい(ただし当然デスクワークできる事)
    • カタログ見たら、オフィスチェアより値段高かったので今回は見送り
  • できればヘッドレスト付き
    • 首も結構痛くなる為

現地について

  • 休日は非常に混むとの事。平日推奨
  • 梅田から、無料のシャトルバスに乗る。事前に時刻表をチェックしておく事
  • 到着したらバスの人から札をもらい、あとは案内の人に着いていけばok
  • 最初に受付を行う。さっきもらった札を渡す。はじめての場合は登録が必要。そうでなければ以前に登録した際の電話番号等を伝えるだけでよい。
    • 受付で、今回きた目的(オフィスチェアみにきた等)を伝えておく

座ったメモ

  • スピーナ(アームレスト付き、エラストマータイプ)
    • http://www.soho-st.com/fs/itoki/22091764s
    • アームレストはアジャスタブルとそうでないものの二種類あるが、アジャスタブルじゃないとキーボード操作しにくいので、アジャスタブルの方を選ぶ
    • エラストマーは、試す前はどうかと思っていたが、座ってみると非常に気持ち良い。夏にも風通しが比較的良さそうなのと、掃除が楽そうなのも良い。猫耐性も強そう(ただし座面は普通に布)
  • バロンチェア(アームレスト、ヘッドレスト付き)
    • http://www.okamura.co.jp/product/seating/baron/
    • 布地はメッシュと普通のクッションが選べる(どっちも猫耐性は良くなさそうだが…メッシュよりは普通の方がよい?)
    • ランバーサポートは普通に腰に良い感じだった
    • この椅子の同じ会社(オカムラ)の上位機種(?)のサブリナ、コンテッサにも座ってみたが、同じ会社だからか、座り具合はそんなに変わりばえはしなかった
  • エルゴヒューマンチェア
    • http://www.ergohuman.jp/products2.html
    • アームレストあり、調整可能。ヘッドレストあり
    • ヘッドレストを一番上に上げても、後頭部と微妙に合わない。背もたれをそこそこ後ろに倒した状態だと合う。しかしこの姿勢でキーボードを叩くのは厳しいような…
    • 布地はメッシュと皮しかない。皮は値段が高くなるので選ぶならメッシュの方で
    • 座面が前後に移動できる。これとは別に腰部分も動くので、最適なポジションに合わせられる
    • 置いてなかったので試せてはいないが、別売のオプション品としてタブレットスタンドがあるらしい。
  • デュオレスト、デュオレストα
    • http://www.duorest.jp/lineup/dr-7550gd.html
    • アームレストあり、調整可能。ヘッドレストあり
    • 肺のような外観が特徴
      • この後ろに板のあるモデルとないモデルがあるが、店員の人いわく「かざりみたいなもの」らしいので、値段の安い、板のないモデルの方でよい
      • 座った感触は結構良かった。背骨が背もたれに当たる事が全くない
    • 可動部分が多いので、耐久性に不安がある
      • 調べたところ、背もたれの耐久性には問題ないようだが、アームレストがすぐにボロボロになるらしい…
    • 布地は、無印デュオレストが合皮、αがメッシュ。猫耐性は合皮の方が良さそう?
    • その他の無印とαの違いは、無印は背もたれを倒すと座面も斜めになるが、αはそうではない、ぐらいらしい

まとめ

  • 座ってみた中ではスピーナが一番よかった

Clojure Cup雑感

Clojure Cup 2014 に参加していたので、そのまとめ。

雑感

  • Clojure Cupの「事前に作るものを決め」ておいて、「コーディング実装作業のみ48時間でやる」というルールは、前者部分があんまり好きではない、という事が分かった
    • 個人的には「今回のお題はこれです」と開始時点で発表されて、それに沿う何かを作る、みたいな方が好きなようだ、自分は。
  • 「設計等はしてもよいが、開始前にコードを書くのはcheatとみなされる」というルールも地味にいやらしい
    • 前述の通り、「開始してから今回のテーマが明らかになる」みたいな要素は特にないので、やろうと思えばいくらでもcheat可能なのも微妙
    • とりあえず事前に、JSである程度のコードは書いてみたものの、きちんと書く気にならず、どうにもきちんとした設計まで進まなかった
      • js-objをcljsのmapの代わりに使って、本番では使わないコードを書いて、それで問題ないか確認する、という作業がどうにも不毛に感じられて…
    • しかし、今思うと、事前に、モジュール間/サバクラ間でやりとりするデータ仕様ぐらいは先に決めておくべきだった
      • 今回、自分が担当していた部分の進行状況は予定より悪く、結構な部分をチームの人に手伝ってもらってしまった
  • 締切直前には睡眠不足等で頭が回らなくなるので、「完成タグを付ける前に確認すべき項目」を、事前にリストアップしておくべきだった
    • 受け取ったデータのvalidation等。普段なら忘れずにやっていても、徹夜明けだと忘れる
  • コメントを書くのに英語縛りにしたのもよくなかった
    • 後から見て意味が分からなかったりした
    • 後半になって、頭が回らなくなってきた時につけたコメントが特にやばい
    • とは言え、こういうコンテストで日本語でコメント書くのもそれはそれで微妙…英語力をつけるしかないのか
  • 腰が痛くなった
    • 普段より椅子に座る時間がずっと長かった為か。なかなか痛いのが取れない
    • 椅子に座る時間が長くなるようなら、良い椅子を用意しなければならないが…
      • 調べたところ、イトーキの椅子がよいようなので、ヘッド部付きのスピーナがほしいが、なかなか高価
      • http://blog.inouetakuya.info/entry/20110405/1302002014 は一通り読んだ。中古の、旧型番の奴ならイトーキの椅子でもかなり安くなるようだが、探すのが面倒。前述のURLに「試座は必須」とあるが、これも面倒…
    • 椅子は諦めて、座らずにすむ方法を考える方向で対応したいところ
  • せっかくgithubなんだから、issueをもっと活用すべきだったかも
    • 今回はissueを全然使わなかった
    • イベントが一通り終了した後に、判明している不具合を直すのに、某社の社内gitlabでissue作りまくって対応した。コンテスト中でもこれやっとけばよかった?
      • しかしこれまた、issueを英語で書くのが手間という例の問題がある。日本語で書くのもちょっと

もし次回に参加するなら、開始前までにやっておいた方がよさそうな事一覧

  • 扱うモノのデータ仕様の確定
  • モジュール間/サバクラ間でのコミュニケーション仕様の確定
  • 完成タグを付ける直前にチェックすべき項目の一覧の洗い出し
    • 不正データ入力チェック、DoS対策、その他セキュリティ的な安全性の確認など含む
    • 各項目には優先順位度もつけておく事(時間がないなら優先順位の低い項目はスルーできるように)
  • スポンサー提供の各種のサービスの利用上限の確認
    • 作成するもののジャンルによっては、あっさり利用上限を突破する

発想力トレーニング講座「想像と言葉」に参加

発想力トレーニング講座「想像と言葉」( http://blog.lv99.com/?eid=1081738 )に参加した。



感想:

  • 楽しいイベントで、普通に実用できそうな内容ではあったけれど、去年の京都でのイベント「タロットとループ、意志はどのようにして決まるか」(自分の記録→ http://d.hatena.ne.jp/ranekov/20131015/1381775845 )がすごすぎて、どうしてもそれと比較してしまう。
    • 上の記録ではあっさり書いているけど、後になればなるほど「ものすごいイベントだった」と感じている。詳細に説明する事はできないけれど、こっち側とあっち側がつながってしまった。ゲーム作ろうという自分にとっては猛烈な衝撃だった。これぐらい衝撃のあるものを作る事を目論みたいが、果たしてできるのか、しかし挑戦はしたい。すごかった。
  • 同じテーブルの人もゲームを作っていて、自分もやる気(ゲーム作る気)が出た。とりあえず次のあほげー( http://ahoge.info/ )がんばる。

内容メモ:

  • 「想いを発する」「相手の感情を動かす」「届ける相手との距離」
    • …というのが、最初の方に猛スピードで質問とスライドで出てた
  • 発想ゲーム1(名称不明?)
    • 「丸いもので『ち』」(で始まるもの)
    • 後でやる「想像と言葉」とは違い、なるべく他の人とかぶらないものを出す。「地球」のような、ありきたりのでは駄目(自分は地球を出してしまった)
  • 発想ゲーム4(名称不明?番号はスライドに書いてあったもの)
    • 「残酷なもので5・3」(俳句の5・7・5的に)
    • 自分のいたグループでは「チャラいのが モテる」というのを選出
    • 他のグループから、ものすごいのがあったが、メモを取り損ねたので、正確なのが出てこない…
  • サウンドスケープ
    • 聴こえる音を全部書き出す
    • 人によってかなり違う
    • (自分の感想:)煮詰まって何も書き出せなくなった時にやってみるとよさそう?
  • 自分マトリクス
    • 関連付けを気にせず、とにかく素早く、思い付いて出てきたものを全部書き出す
    • 自己紹介的な
  • 「想像と言葉」
    • 元々のモチーフは「検索エンジン
      • その人の名前が思い出せない時に「ぷよぷよ」「ゲームデザイナー」「立命館大学講師」で検索したら米光さんの名前が出てくる、みたいな
    • 「他の人と同じ答えになったら点数もらえる」ので、なるべくみんなで共通しそうな言葉を考える。
      • これが「届ける相手との距離」を考えるという事につながっている?
    • 時々、非常に難しい組み合わせになる。忍者が強敵。ナンデ!
      • 今回の参加グループでは、忍者含む組み合わせの時に、三人が忍者漫画を挙げたが、全部違う作品だった。世代差…なのか?

clojureのシリアライズ補助手続きを書いた

http://d.hatena.ne.jp/ranekov/20140127/1390842604 の結論のところで

  • 「間接的に参照を保持する」
  • 「object-arrayを使う」

と書いたが、どう考えても不便そうなので、結局、「java array, atom, ref類を含む構造体を、トポロジカル構造を再現できるようにしつつ、edn安全な要素だけで構成されたvectorとしてpack/unpackする」というモジュールを書いてしまった。

とりあえずゲーム用に必要な最小限の実装だが、100行ぐらいでできた。
こんな簡単ならさっさとやればよかった。


このモジュール自体は文字列やバイト列に書き出す機能は持っていないので、これを使ってpackしたvectorを、ednやnippyで更に文字列やバイト列に書き出して保存する。
リストアする時も同様に、ednやnippyでvectorに戻してからunpackする。


将来的にはリポジトリを分けてclojarsとかに登録したいが、まず先に二月中にゲームを完成させてから!
(上のURLやファイル構成がすごい適当なのは、このモジュールの実際の保存先が作りかけゲームのプライベートリポジトリの中の為。)