だらだら〜自由自在〜

インディーゲーム制作チーム GAME GABURI でプログラム担当してます

Swiftでなんかゲームを2

  • Swiftの仕様もよくわからないけど、SpriteKitの仕様のほうがもっとわからない。
    • でもSpriteKitで頑張る!
  • Spriteアニメーションをしたい。
  • Swiftの仕様がガンガン変わっていたお陰で、ネット上の以前の言語仕様に基づいて書かれた記事を見て書いてもビルド通らないとか...。今から入った人間だと状況がわかってないからキツイ
  • Floatにキャストする時でもやもやする。
    • intとCGFloatの値が混ざった式でintをFloatにキャストしたらエラー。 SwiftでObjCも利用したアプリ開発のときにハマったこと - Qiita こちらの記事にあるようにCGFloatでコンバージョンすればOKだった。これすごいモヤモヤする。Architectureにarm64含めてビルドしたからCGFloatがDoubleのエイリアスになっているためだと思うが。arm64ってなんやねん。
      • 64bitアーキテクチャか...。てことはもし切るとしたらarmv7とかになるのかな?(そっちのほうが古いやつだと思うので)となるとCGFloat==Doubleになるわけでめっちゃキモくない?って思ったりするわけだけど。
  • Spriteアニメーションできた。 アニメーション - SpriteKit.jp こちらの解説をSwiftで書きなおしただけ。
  • とりあえずGithubに上げる
  • ボタンをおいて、それで自機移動してみよう
    • ボタンはSkLabelNodeで文字を置いて、touchBeganメソッド中でNodeとの衝突をチェックするやり方なようだ。
    • LabelのPositionは、スクリーンの左下が原点なようだ
      • Nodeのhorizontal/verticalAlignmentを調整しても思ったような座標に表示できない...。SceneのFrameサイズが1024/768とかなってるのでそれな気がする。Sceneのsksを編集したいが方法がわからない・・・。ちょっと他のゲームのコードをみてみよう
      • 何かで fullstackio/FlappySwift · GitHub こちらが参考に良いと聞いた気がするのでこれでGameScene.sksがどうなってるのかみてみる
        • ビルドエラーでるなぁ。Nullable(という言い方で良いのか。。。)でエラー。!をつけてやるとOKぽいが数がおおい。
      • 結局良くわからんかった;放置しよ