どうもです~。

「なかまばんく」iOSアプリ制作中のぼくです。

17日には完成する予定だったけど、結局今日までかかちゃいました。
で、大体、できましたー。
まだ、申請はしていなくて、明日最終チェックをしようかなってとこなのですが、たぶん、今度こそ、明日には申請に出せる予定デス。。

もう既にWEB版はあるので、同じことをアプリでやればいいだけじゃん、って思ってたけど、そういうつもりでいるとイタイ目をみるのだな、ってわかりました。
でも、それもどっちかというと、いい方向のことが多くて、
WEBだとできないような表現とかもできるので、それだけ選択肢の幅が広がるし、こんな風にもできるんだなーって新たな発見があったりが多かった。
いままで、ほとんどゲームとかしたアプリ作ってなかったし、WEBでできるんだからアプリにする意味ってなんなのかな?って思ってたけど、WEBでできていることでも、アプリにすることで、新しい可能性が見えてくるかも、って気がしました。

最初はぱぱぱっと作っちゃって、さっさとリリースしちゃえばいいや、って思ってたのだけど、こだわりがでてくるんですよね。。。いかんいかんと思いつつ、なんとかこんな風にできないかなーとかやり出すと、時間過ぎてたりして。。

奮闘記をいろいろ書きたいのですけど、あれこれ奮闘しすぎて、何に奮闘してたのか、わかんなくなってる感じもあるので、もうちょっと整理しないとまとまんないかも。。


グラフィック的なことでひとつちょっとしたお話を。

ただの好みの話ですけど、角丸の四角とか、矢印とか、吹き出しとかをパスで書くのが好き。
角丸は

        CGContextBeginPath(g);

        CGContextMoveToPoint(g, _round, 0);

        CGContextAddLineToPoint(g, w-_round, 0);

        CGContextAddQuadCurveToPoint(g, w, 0, w, _round);

        CGContextAddLineToPoint(g, w, h-_round);

        CGContextAddQuadCurveToPoint(g, w, h, w-_round, h);

        CGContextAddLineToPoint(g, _round, h);

        CGContextAddQuadCurveToPoint(g, 0, h, 0, h-_round);

        CGContextAddLineToPoint(g, 0, _round);

        CGContextAddQuadCurveToPoint(g, 0, 0, _round, 0);

        CGContextClosePath(g);

こんな感じ。
gはCGContextRefの変数、w,hは幅と高さ、_roundはまるっこさ。
これをフィルするなりストロークするなりして角丸完成!

矢印は、

        CGContextBeginPath(g);

        CGContextMoveToPoint(g, 0, h*0.3);

        CGContextAddLineToPoint(g, w*0.4, h*0.3);

        CGContextAddLineToPoint(g, w*0.4, 0);

        CGContextAddLineToPoint(g, w, h*0.5);

        CGContextAddLineToPoint(g, w*0.4, h);

        CGContextAddLineToPoint(g, w*0.4, h*0.7);

        CGContextAddLineToPoint(g, 0, h*0.7);

        CGContextAddLineToPoint(g, 0, h*0.3);

        CGContextClosePath(g);

こんな感じ。

自分で書いて思った通りにいくとなんかうれしい~。

吹き出しは、向きとかとんがりの場所とかをゴリゴリに複雑なロジック書いてつくったので、ちょっと載せられません。。。

・・・だからなに?って話ですけどね。


あとちょっとなので気を抜かず。
でもほぼ終わりが見えてだいぶ気持ちラクになったよぅ。

ではでは~