Swiftでなんかゲームを4
SpriteKit放り出してMetalやってるのですが。3次元ベクトルや4x4行列のデータ構造とそれを操作する関数群ってどこにあるんですかね・・・?
OpenSourceのライブラリかなんかを使うものなんでしょうか?さっぱりわからん。
Swiftでなんかゲームを3
- クローンしたFlappySwiftがエラーで動かないので別のFlappySwiftをClone gscalzo/FlappySwift · GitHub こっちは動作した。けどSimulatorで動かすと激重
- PlayerのSprite処理関係をクラスに分離したり。ボタンつくったり
- Next: ボタンのコールバックとPlayer移動
- Swift ボタンを作る UIButton - Three.jsを使って、作ってみた UIButtonというのがあるのか...!
- ただこれ、Node構造に適合できるのだろうか...。
- Swift ボタンを作る UIButton - Three.jsを使って、作ってみた UIButtonというのがあるのか...!
Swiftでなんかゲームを2
- Swiftの仕様もよくわからないけど、SpriteKitの仕様のほうがもっとわからない。
- でもSpriteKitで頑張る!
- Spriteアニメーションをしたい。
- Swiftの仕様がガンガン変わっていたお陰で、ネット上の以前の言語仕様に基づいて書かれた記事を見て書いてもビルド通らないとか...。今から入った人間だと状況がわかってないからキツイ
- Beta1〜6で変わったswiftの仕様 超簡単まとめ こういうところをみて追ってみたり
- ていうか、発表当初からこれだけ注目されて記事も書かれるってすごい言語だよな(いまさら...)
- Floatにキャストする時でもやもやする。
- intとCGFloatの値が混ざった式でintをFloatにキャストしたらエラー。 SwiftでObjCも利用したアプリ開発のときにハマったこと - Qiita こちらの記事にあるようにCGFloatでコンバージョンすればOKだった。これすごいモヤモヤする。Architectureにarm64含めてビルドしたからCGFloatがDoubleのエイリアスになっているためだと思うが。arm64ってなんやねん。
- 64bitアーキテクチャか...。てことはもし切るとしたらarmv7とかになるのかな?(そっちのほうが古いやつだと思うので)となるとCGFloat==Doubleになるわけでめっちゃキモくない?って思ったりするわけだけど。
- intとCGFloatの値が混ざった式でintをFloatにキャストしたらエラー。 SwiftでObjCも利用したアプリ開発のときにハマったこと - Qiita こちらの記事にあるようにCGFloatでコンバージョンすればOKだった。これすごいモヤモヤする。Architectureにarm64含めてビルドしたからCGFloatがDoubleのエイリアスになっているためだと思うが。arm64ってなんやねん。
- 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ぽいが数がおおい。
- 結局良くわからんかった;放置しよ
いいなーと思ったUnityPluginメモ
Hierarchy2 - https://www.assetstore.unity3d.com/#/content/14032
Build Report Tool - https://www.assetstore.unity3d.com/#/content/8162
DocuMaker - https://www.assetstore.unity3d.com/#/content/16257
Enhanced Edtor - https://www.assetstore.unity3d.com/#/content/135
2Dのタイルマップエディタを探しているわけなんですけど
Unity4.3でドラクエ6とか、FF6とかの街マップみたいなものを作りたくて、そのためのタイルマップエディタを探しているわけなんですけども、結論からいうとどうも微妙な気がする。
Unityの拡張を最初にあたったんですけども、2D Map Factoryなんかがいいのかなぁと思って買って試してみたんですけどね、慣れの問題というのはものを評価するときにちゃんと気にしてはいるんですけど、ちょっと意味分かんない。Layerがね、増やせないんですね(こわいなーこわいなー)
まぁそれで「もういい」って思って視点を変えてWindowsのフリーソフトとかでMapEditorって無いかな?ッて思って探してみたんですね。Tiled Map Editorってのがありました。結構操作しやすい感じます。Eventエリアなんか設定したくなってくるんですが、それはObjectでRectをおいてObjectPropertyでEventIDやらを設定してやればいいのかな?まぁちょっと使えそうなんで検証したいんですが、肝心なのはUnity上での再生ですね。C#のパーザなんかがあれば超ありがとうなのですが。
あとこの方が自分と同じ思いからの同じ帰結でおもしろい。そうなんですよね、画面上下で奥行きのある見下ろし型マップの作成が楽にできそうなUnity拡張さがしてたんですが、どれも真横から見る感じの2Dアクションのマップばっかりつくってて(デモで)、なんだかなぁと思ってるところ。
PSM UISystem
昨日から悩んでいた、UISystemとGameEngine2Dを一緒に使うとクラッシュする件。進展があった。
GameEngine2Dはどうやら無関係、おもいっきり濡れ衣を着せていた、ごめんね。
いろいろ削って削って最小構成だろう、というものでもUISystem.Initializeでクラッシュしてしまう。
正確に言えば
・F5デバッグすると
・Launchしたゲームウィンドウが白画面のまま動作が停止して
・しばらくすると、「psm.exeは動作を停止しました」というダイアログが表示され
・TTYには下記ログが出力されている状態
app.info : memory : resource_heap_size=67108864, managed_heap_size=33554432
app.info : require feature : Touch
C# Assembly Loading [ C:\\Users\\Public\\Documents\\PSM\\sample\\UI\\DemoGameUI\\bin\\Debug\\GameUI-unsigned\\Application\\app.exe ]
Loaded assembly: C:\Program Files (x86)\SCE\PSM\mono\lib\psm\Sce.PlayStation.Core.dll
Loaded assembly: C:\\Users\\Public\\Documents\\PSM\\sample\\UI\\DemoGameUI\\bin\\Debug\\GameUI-unsigned\\Application\\app.exe
Loaded assembly: C:\Program Files (x86)\SCE\PSM\mono\lib\mono\2.1\System.dll
Loaded assembly: C:\\Users\\Public\\Documents\\PSM\\sample\\UI\\DemoGameUI\\bin\\Debug\\GameUI-unsigned\\Application\\Sce.PlayStation.HighLevel.UI.dll
Sony Computer Entertainment America LLCOpenGL ES 2.0 Piglet(0.1.1)
OpenGL ES GLSL ES 2.0
Thread started:
Thread started:
で、もうわけわからんなー。もしかしてGraphicsAPIにグラボが対応してない?とおもって対応OpenGLバージョンをしらべてみたけど、OpenGL4.2まで対応している様子。
そういえばサンプルはコード見ただけで実行してないなとおもって、C:/Users/Public/Documents/PSM/sample/UI/DemoGameUIをデバッグ実行。
やっぱりクラッシュする…。
えー、それはさすがにおかしい。と思って普通に「実行(Ctrl+F5)」してみる…ちゃんと動いた。
もう寝よう
PSM
ゲーム作成中
https://github.com/nyakagawan/PSM-kabuto
PSMStudio割合不安定だな…。ビルド中にフリーズしたり、デバッグが満足にできなかったり(これは自分のやりかたが悪いのか???)
DocumentかどこかにVisualStudioに対応予定です。と書いてあったけど、頑張って対応して欲しいところ。
調査中
Sce.PlayStation.HighLevel.UIとSce.PlayStation.HighLevel.GameEngine2Dって、もちろん共存できるよね?
調査中
…
うーむ、何故かUISystem.Initializeでクラッシュする。そしてデバッガが一つも有益な情報を出さずにただただ起動しているだけなので、直接の原因も不明。というかPSMStudioのデバッガがあまりに役に立たないのだが、変数の中身は見れないし、ブレークポイント貼るとクラッシュするし。…さすがにクオリティとしてありえないレベルだから、自分の環境のせいなんだろうが