【Unity】NativeList自作
概要
NativeArray
、ECSやJobSystemとセットで紹介されることが多いけど、普通の配列との違いとしてGCに負担をかけないので、使えるところは積極的に使っていけばよさげ。
そうすると可変長となるNativeList
も欲しい。が、未実装。てなわけでここでは最小限のものを自分で作ることにする。正式にリリースされたら差し替えよう。
コード
さしあたりAdd
とClear
とインデクサとイテレータがあれば役には立つだろ、という感じでやった。
(あまり気の利いた機能をつけるとあとで正式版に差し替えるとき面倒が起こりかねねーな、という逃げの姿勢でもある)
GC軽減を目的とするためにクラスではなく構造体なんだけど、これだとコピーした際に配列を共有したままCount
がずれることがあり得るのでちょっと気を付ける必要がある。まあ、メソッド内で使い捨てる作業用バッファとかに使うなら安全なんじゃないでしょうか。
Unity2018.2.8f1
ちなみに
T where : struct
と書かれているけど、構造体であれば使えるわけではない。
どうやら構造体のメンバに参照型が含まれてるとダメっぽくて、実行時にnot blittable
だかエラーが出る。
中国語版リリースとセールのこと
MagicScrollTacticsの中国語対応ができました。
DLSiteやitch.ioなんかは後日更新していきますが、とりあえずSteamでリリース。そしてバージョンアップ記念で一週間の割引セール中です。
という感じなので、中国語とか知らねー!という人でもとりあえずセールってことで買うのはアリなんではないでしょうか。
宣伝でした。
コミケお疲れ様でした
もう2週間経過!はやい。 というわけで冬コミの申し込みも終えました。
次のゲームも考えたいんだけどちょっと精神的にこう、負担が。というわけで水面下でごにょごにょ考えつつ何はともあれSwitch版MST決めないとな!という感じ。冬コミはどうなるんだ?
今回の出し物について
今回はSteamキーが印刷されたDLカードというわけで、どこで印刷すればいいのかわかんねえな……からスタート。
で、おなじみのconcaさんに相談したら注文フォームにはないけど対応できますよ、ということでやっていただきました。
次回以降も対応していただけるかは知らないけど、ともあれ同じことを考えてるサークルさんは相談はする価値あると思われます。
貼っていきます pic.twitter.com/ztx7KVwj0A
— enu@C94金曜西ら32a (@_enu) August 7, 2018
シールは自分で貼らなきゃいけないので、数が多いとわりと辛い。でも何かの拍子にカードの裏が見える、みたいなのはあるので完成版には欲しい。
秋葉原のイベント
あとコミケ2日目に秋葉原のラジオ会館でやってたイベントにも行きました。展示系なので電源使えるし試遊もできる!冷房効いてる!
けっこう人は来てる感じだったので良いんじゃないでしょうか。次回とかもあれば。
設営ヨシ! pic.twitter.com/7ORIsa0mYj
— enu@C94金曜西ら32a (@_enu) August 11, 2018
【Unity】GooglePlayで配信したときのつまづき
備忘録的に書いておきます。
環境
- Unity2018.2.3f1
- Google Play Games plugin for Unity 0.9.50
- UnityAds 2.0.8
つまづき箇所
UnityAdsが表示されない
症状
Editor上ではちゃんと広告画面(開発用)が出るんだけど、実機だとUnity Ads is not initialized
とかでエラーになる。
アプリ起動してすぐに広告表示を呼び出したときになるっぽいので、初期化に時間がかかってるのかなーと思ってこんな感じでisInitialized
を待ってみたけど変化なし。
IEnumerator Start() { while (!Advertisement.isInitialized || !Advertisement.IsReady()) { yield return null; } Advertisement.Show(); }
対応
仕方なく「広告を出すのは起動してから少し待ってからにする」ことで解決。1秒とか。
PlayGameにログインできない
症状
PlayGamesPlatform.Activate()
しようとすると、こんな感じのエラーが出る。
Could not register one or more required Java classes.
対応
Proguardがだめっぽい。
ので、PublishingSettings.Minify
の項目はNone
にしとく。(ちゃんと設定すれば動くのかもしれないけど……)
まだPlayGameにログインできない
症状
PlayGamesPlatform.Activate()
しようとすると、こんな感じのエラーが出る。
Application ID ( 123456789012) must be a numeric value. Please verify that your manifest refers to the correct project ID
対応
ApplicationIDがまずいとのこと。
Assets\GooglePlayGames\Plugins\Android\GooglePlayGamesManifest.plugin
フォルダにあるAndroidManifest.xml
を開いて、修正する
- android:value="\ 123456789012" /> + android:value="\123456789012" />
↑のようにバックスラッシュの隣にある半角スペースを削除してやると正常に動作するようになる。
※ApplicationIDは仮のものです
そんな感じで
アプリよろしくお願いします(宣伝)
Androidのゲーム公開しました
というわけでGooglePlayで完全無料です。たまに広告が出るのは多めに見て欲しい。
ちなみに夏コミのやつ(PC向け)はitchで公開してる。
あ、夏コミお疲れさまでした。次はデジゲー博かな?
C94のこと
再掲ですが、スペースは金曜日 西ら32a オートリ電子 です。
出すもの
MagicScrollTacticsのDLカード
Steamキーが印刷されたものです。1000円。
ARROW KEYS ONLYのペーパー
夏コミ新作のミニゲームです。
とはいってもCDとかで頒布する気もなくて、itch.ioでリリースしてしまって、コミケでは紹介ペーパーを頒布するのであとはWebでダウンロードしてね!とかそういう良く分からないことをします。
とくにペーパーにシリアルが付いているとかではないので、公開ページに行けば遊べます。(コミケでやる意味ある?)
その他
土曜日に秋葉原でイベントがあるので、そっちにも行きます。コミケとかうるせー!知らねー!という人でもいいんではないでしょうか。
Webカタログページ
チェックしよう!
追記
そうそう、取り置きについて。
頒布物が欲しいけど間に合わんかも、みたいなので万全を期したい人はTwitterのDMを頂ければ対応できるかもしれません。
追記2
夏コミおしながきです pic.twitter.com/XodhAgEkF0
— enu@C94金曜西ら32a (@_enu) August 8, 2018