andante

2014-10-19

1019

昨晩はFacebookのAPIを叩く方法を調べるのにずいぶん時間を使ってしまいましたあいつせっかくiOSと連携しているのにプロフィール画像一枚とるのにも開発者登録とアプリIDを要求してくるのですねもっとうまい方法があるはずと思っていろいろ調べたけど無駄な時間ぽかったはー

あと自作ダイアログビューのレイアウトエンジンLayoutConstraint作るだけですがを書きなおすのにも時間を使ってしまったこっちは完全に趣味が高じたばっかりにという感じなので完全にではなくて以前のものに現実的な不満はあったのだけどなにやってんだという感じまあ夜中にテンション上がっちゃうことってのはあるよねはー


今日も夕方に起きて仕事Googleの周辺検索APIを叩くところこれで一応画面は出揃ったはずであとはシナリオ待ちあとで直すってほったらかしてたところをぷちぷち潰してゆくあんまりおもしろくない作業をしようかしら設定画面のこと忘れてたけどあそこは僕の分担から一旦外れてるしな相談しないとわからないや


昨晩寝る前にふと思ったのだけど連続量将棋ってのはどうだろうか普通の将棋は時間と空間とが離散化されているけれどもそれを連続的に行うどんな風に拡張するかというと普通の将棋の1ターンを時間Δtごとに自分の駒の一つを選びΔt×駒の速度だけ移動すると考えてあとはΔt→0の極限っぽい感じにするすごく素朴な直観に従うとそうすることで自分と相手が交互にプレイするのではなくて同時に進行するようになるし自分の駒も一度に一つではなく自分の駒全体で合計が1.0になるような重みを各駒に割り振って各駒は各々の移動可能速度に重みを掛けた量だけ移動するようになる

移動方向についてももともとの駒の移動可能方向の重ね合わせで書ける方向にはすべて移動できるようになる速度は将棋の駒が伝統的にムーア近傍を採用していることからたとえば王将ならば斜め方向への移動がちょっと速くなるだろう直進と斜めの中間についてはタンジェントが有理数ならば直進と斜めの必要回数から算出することができる

ところで駒の移動速度を定義するにあたって問題になるのが飛車や角でなぜならば彼らは移動量に制限がないからであるなので便宜的に実質最大値の9マスを速度としてやるほかないだろう彼らは全方向に移動できるまた先に述べた理由から角のほうが飛車より斜めへの移動の分だけ強い香車はあいかわらず直進しかできない

あとは駒を取るイベントであるがもはやターン制ではなくなるためにどちらの駒が相手を取ったという区別はできなくなる従って駒同士が衝突した際には互いの駒を交換して手駒にするなどの対応が妥当であろう当たり判定は適当な半径の円でよい

ここまで書いたところ桂馬はどうするのかという指摘をもらった確かにこれは重要な問題で僕は将棋にまったく造詣がないのでなんとも言えないけれど飛び越えることができる性質はきっと戦術上重要だろうしかしこれはどうしたって連続性と相性が悪いなにか溜めのような仕組みを導入して溜まっているパワーの分だけ瞬間移動ができるというような対応がいいだろうか悩ましい

というところまで考えたのであとは誰かがどうにかしてくれるといいかなと


はーなんかまた具合悪くなってきた気がするうー