頭と尻尾はくれてやる!

iOSアプリなどの開発日記です


糖質制限とこむら返り(足がつること)の因果関係

糖質を控える生活を始めて体重や体脂肪にそれなりの改善があって今も続けているんだけど、、、

どうも寝てる時に足がつるってのが起きるんだよ。
ただ糖質制限を始めた頃と同じ時期に使い始めたスタンディングデスクのせいかな、くらいに思ってたんだ。つるのも月に1〜2回程度でそう深刻でもないし。
今ネットで調べても糖質制限で足がつるのは単にミネラル不足が原因で糖質制限と関係ないとかそういうページが目につくわけだけど、、、

今月のNewton(8月号)におや?と思う記事があったのよ。

足がつるのはなんでだって話の中にこういうのがあった。

Newton 8月号より

これによると、、、
血行が悪くなるとATPを作れなくなりつりやすくなる。
このATP(アデノシン三リン酸)の元になるのはグルコース(ブドウ糖)。
グルコースを多く含む食品はパンとかお米とか。

ということは、糖質制限したら足がつりやすくなるってちゃんと因果関係あるってことか。
って理解であってる?


ボクセルエディター MagicaVoxel を試してみた

3Dの表現もいろいろあるけど、こういう二次元でいうところのドット絵風のもあるよね。ボクセルって言うのかな?

Crossy Road スクショ

↑Crossy Road

Steppy Pants スクショ

↑Steppy Pants

Rodeo Stampede スクショ

↑Rodeo Stampede
あ、でもよく見るとSteppy PantsもRodeo Stampedeも直方体のみってわけじゃなかったな。

ともかく、こういう感じのモデルを作成しようと思ったら、今までならBlenderを使ってたところだろうけど、実際にBlenderでこれをやろうとすると結構面倒だったんだわ。頂点位置やボックスの位置をスナップで決めていくのがもうやりづらくて。

うーん、これは難儀だなあと思ってすがる気持ちで前にちらっとどこかで聞いてた MagicaVoxel ってエディターを試してみた。

MagicaVoxel

ダウンロードした時のバージョンは0.97.4。まだ頻繁にアップデートがあるみたいなのでここに書いてることもすぐに古くなるかもしれない。

試しに使ってみたところ、、、これがなかなかイイんだわ!

MagicaVoxelで作成

↑作ってみたのはこういうの。


いつもBlenderでモデルを作成したらobj形式のファイルを出力してXcodeで扱えるように変換してiOSで使ってる。
同様にMagicaVoxelで作成したモデルのデータをobj形式で出力。
iOSで読み込んだら、

iOSで表示

↑おおお!期待通り表示された!

それにしてもこのデータの座標はどうなってるんだ?
エディターでは端っこに座標軸が表示されてるが?
と思ってBlenderでobjファイルを読み込んだらこんな感じ。

Blenderで確認した画像

↑x,y座標に関しては中心が原点になってるっぽい。
このデータを見ると連続するところはちゃんと繋げてくれてるみたい。もしかしたら点の一つ一つの頂点座標が無駄にあるんじゃね?とか思ったけどそうではなさそうでひと安心。

しかもMagicaVoxelはテクスチャの画像も出力してくれるんだけど、それがめちゃ小さい。

MagicaVoxel出力テクスチャ

↑今回のだと256x1のサイズしかない。
Blenderを使ってやる方法ならオブジェクトをuv展開して、、、

Blenderのuv展開テクスチャ

↑こういう画像にドロー系ツールで色を付けてテクスチャ画像を作ってただろうから随分とサイズも手間も違う。ホント助かる。

そんなわけで、このMagicaVoxelはボクセルのモデル作成するのには重宝しそう!







傑作テニスゲーム Tennis Bitsの操作方法

App Storeのおすすめ新着ゲームにあった Tennis Bits ってテニスゲーム。
操作方法がよくわからなくてすぐ消そうかと思ったんだけど、このゲーム、とにかくよくできてるんだわ。
キャラやテニスコートやアイテムの種類も多いし、綺麗、可愛い。演出も凝ってる。

操作方法がよくわからないから最初のチュートリアルを再度見たいと思ったけど、見る方法がなさそうなので一度アンインストールして再度チュートリアルを確認したのよ。

Tennis Bits チュートリアル1

↑自キャラが左右に動く、これはええねん。


Tennis Bits チュートリアル2

↑上下のスワイプで上下へ行く、これもええねん。


Tennis Bits チュートリアル3

↑サーブの方向も選べる、、、さほど実感ないけどまあいいわ。


Tennis Bits チュートリアル4

↑サーブのタイミングね、これもええねん。


Tennis Bits チュートリアル5

↑これや、問題のは。
「その方向にボールをサーブするにはLまたはRをタップし押し続けてください」
ってあるけど、サーブの話じゃないよね?打ち返す時の話のはず。

しばらくやってて俺が勝手に理解した打ち返し方は、、、
相手側からこちらにボールが来る時に自分のコートのどこかに円が表示される。これが打ち返せる地点でプレーヤーは操作してこの円に入らないといけない。

Tennis Bits スクショ1

↑急いで自分のコートに表示されてる円の中へ行く!

Tennis Bits スクショ2

↑円に入ると画面を押し続けてても自キャラは左右に動かず、相手コート側にある小さい円が動く。これで打ち返すボールの飛んでいく方向を決めることができる。
なお、打ち返すタイミングで指を離すのかな?とか思ってたんだけど、そんなことはする必要なく勝手に打ち返してくれる。

Tennis Bits スクショ3

あと、自分のコート側の円に長い時間いるほど良い球を打ち返せるみたい(一番良いのが"パーフェクト"みたい)。つまり相手が打ち返してきたらすぐさま自分のコート側に表示される円に行く!ってのが良い球を打つための条件みたい。


ここまで理解するとね、このゲームはホントよくできてんだわ。
iPhoneでゲームするならこのくらいの簡単さが俺にはちょうど良いかなって感じ。
単純な操作で相手と息の抜けないラリーが続くとホント盛り上がるよ。


※書いた時のTennis Bitsのバージョンは1.5


iPhoneのマイクからの音をリアルタイムFFTで認識する

iPhone向けVRアプリを作る時に入力方法として加速度センサーを使うってのを考えてみたけど、
iPhone 6の加速度センサで移動した距離の計測
↑やっぱり使えそうにないって話をこの前書いたんだわ。

その次に思いつくのは音を利用するってアイデア。例えば手を叩くとミサイルを発射するとかそういう感じね。

そういうのを実現するにはどうするのかなあ、、、?といろいろ調べたんだけど、これが結構大変で。
とにかくフレームワークも(Apple外のも)いろいろあるし、当然用途によってどういうフレームワークを使うかもあるもんね。
かなりの時間さまよってた結果、ようやくいいページを発見。

Capture iPhone microphone | Stefan Popp
↑このあたりを参考にとりあえずiPhoneのマイクからの音をFFTで周波数ごとのスペクトルを得るってのをやってみたところ何やら数値は得ることができた。


iOSで高速フーリエ変換を使う - Qiita
↑ここみたいにiOSでFFTってのは調べたらいいページがいろいろあると思う。

ちなみにマイクから拾ってきたデータは(上記のサンプルコードだと)SInt16って2バイトの整数でもらうのでFFTするのにfloat(4バイト)でメモリを再割り当てしてる。

FFTがホントにできてるの?ってのを確認するため

トーンジェネレータ
↑この「トーンジェネレーター」ってアプリをiPadで実行。

FFT結果
↑イコライザーアプリにあるような周波数ごとのグラフみたいなのを作ればいいんだろうけど、それは面倒だったのでとりあえずUIViewの位置を変えてるだけ(縦軸が周波数(対数)、横軸がスペクトルとして)。
とりあえず音源の周波数を変えるのに従ってグラフも変化していくのは確認できた。


ここまではいいんだけど、、、
例えば手を叩いたってのを検出したいとするよ。最初にベースとする手を叩いた音のデータを取っておいて、後はマイクから入ってきた音と比べることになるんだろうけど、じゃあどうやって二つの音が「似ている」って評価すればいいんだろう?

周波数で区切って平均でも取って最初に登録しておいたデータとの差分の合計を見るとか?
なんてのがすぐ思いつくとこだけど、実際やってみたけどなかなかうまくいかないんだわ。

なんせ同じように作った音(手を叩くでも鉛筆で机を叩くでもいい)が周波数分析するとやるたびに結構ばらつくんだ。フィルターかけたりなんかノウハウあるんだろうなあ。

結局、大きい音は拾えるからある一定の音より大きかったら入力ありと判断する、なんてのが現実的だったりするというなんともねえ。ああ、情けない、、、orz



音に関する基本的な知識について、参考になったページ:
音(声)の高低を検出する方法を真面目に書く - キノコの自省録


ヨーグルトメーカーで低脂肪ヨーグルトをタネに使えるか?

ヨーグルトメーカーで何回複製できる?
↑ドリンクタイプのヨーグルトをタネに作ってたのが終わってしまったので、またタネ用のヨーグルトを買いに行ったんだけどいいのがこれしかなかったのよ。

R-1 低脂肪タイプ

↑R-1の低脂肪タイプのやつ。20%引きシール付いてるけど、あまり関係ないと思ってる(最初のは半額シール貼ってたし)。
ヨーグルトメーカーの説明書には使用する牛乳の方は成分無調整牛乳を使用すべきで、加工乳とかは使用しないよう書いてあるんだけど、タネの方はどうなんだろ?
ってことでやってみた。

だんじり牛乳

↑牛乳はちゃんとした牛乳。近所のイオンで買ったその名も「だんじり牛乳」。ローカル色がよく出ておりますねえ。
10時間弱ほど経った後、、、

うああああ、微妙。一応液体の牛乳ではない状態にはなってるけど、柔らかい。ホエーもなんだか多いし。
時間とか室温に問題があったのかも?ということで再度挑戦してみたところ、、、

2回目は普段程度。よしよしと思ったんだけど、、、

3回目はほとんど液状。味はヨーグルトの味が少しする程度。温度が低いなんてことはない季節だしなあ。雑菌でも入ったんだろうか?そもそもうまくいかない場合の原因がよくわからないよなあ。

ともかく今回はこれで終了。
今度からは低脂肪のはやめとくわ。











Copyright ©頭と尻尾はくれてやる!. Powered by FC2 Blog. Template by eriraha.