はじめに 今回はMobiVMでCreate IPAを実行した際にIBAgent-iOS failed to launchが発生し、ビルドが失敗した際の対処法について説明します。このエラー自体はMobiVMを利用しないiOSアプリ開発でも発生することがあり、エラーメッセージで検索するとXcodeの再…
はじめに 今回は、MobiVMでビルド時にAssertion Failed: (aliasSectionNum == sectionNum && "alias and its target must be located in the same section")という、アサーションチェックに失敗した旨のエラーメッセージが表示された場合の対処法について共…
はじめに 本題に入る前に、まず、レイヤ分けについての話をします。ゲームを作っていると、通常の3D描画と、UI表示等の2D描画を任意の順序で実行したい場合が出てきます。例えば、ポストエフェクトが良い例で、UIを含めた上からぼかしやモザイクをまとめて掛…
はじめに 今回は、MobiVMでビルドしたアプリが、GKSavedGame等の機能の利用時にiCloud Driveにアクセスできるようにする方法を共有します。 MobiVMについては以下の前回記事をご確認ください。 deep-verdure.hatenablog.comMobiVMでビルドしたアプリが、本記…
はじめに 2018年11月に、RoboVMが開発終了し、iOS12が非対応となったため、libGDXのiOSバックエンドをIntel-MOEに変更しなければならなくなった旨について記事を書きました。 deep-verdure.hatenablog.comIntel-MOEも大元のIntel側での開発が終了し、有志に…
はじめに 今回は、DirectWriteを利用して実現をしたいものの、Web上や書籍で情報が少なく実装に迷った、あるいは時間がかかったものについてまとめました。なお、前回説明したフォントファイルからのフォントデータの読込みは実装済みの前提で話を進めますの…
はじめに 今回は、DirectWriteでttf等のフォントファイルを読みこんで、フォントデータを抽出する方法を説明します。 ゲーム内でDirectWriteで文字列を描画する際、ユーザの環境にその文字列のフォントがインストールされていない場合があります。そのため、…
はじめに 今回は、DirectX12でガンマ補正ありのテクスチャとガンマ補正なしのテクスチャを混在して利用する方法について説明します。ガンマ補正そのものについては読者がご存知のものとして話を進めます。 プロジェクトによっては利用する全てのテクスチャが…
はじめに 本記事では、DirectX12でのステンシルテストの実行方法を解説します。 ステンシルテストはDirectXに昔から備わっている機能ですが、DirectX12での実行方法については書籍、Webサイトはおろか、Microsoft Docsにも解説がありません。また、サンプル…
はじめに DirectXで文字列描画をしたい時、古来から2つの方法が紹介されてきました。1つは、文字や文字列のテクスチャを用意して、文字コードやその他の変数によってテクスチャ内の描画範囲を特定し、描画する方法です。そしてもう一つは、DirectXが持つ機能…
はじめに DirectX12でゲームを作ろうとすると、リソースをどのように管理するかという問題が巨大な壁として立ちはだかります。私も趣味でDirectX12でゲームを制作しているのですが、リソースの管理方法には1ヶ月くらい頭を悩まされました。DirectX12は近年に…
はじめに Androidアプリをリリースする場合、Google Play Storeにて、AAB(Android App Bundle)を提出する必要があります。しかし、AABにはサイズ制限があり、150MBを超過すると、そのままではアップロードできなくなってしまいます。以前は、APK拡張という方…
かなり短いですが、嵌ったのでメモ。Gradleのバージョンを6.7.1にしてから、libGDXのmoeIpaBuildや、moeLaunchといった、ios-moeプロジェクトのビルドを含むタスクが失敗するようになってしまいました。 暫定対処策 一度、手動でios-moeプロジェクトのother…
Appleの審査で嵌ったので記事にしてみました。 Wi-Fiでインターネットに接続できない問題? 趣味開発のiOSアプリをAppleの審査にかけたのですが、Wi-Fi接続時にインターネットに接続不可のエラーメッセージが出るという理由で却下の判定を受けました。ここで…
新年一発目は超絶短い記事ですが、地味に嵌ったのでメモ。libGDXでSpriteの座標の初期位置としてSprite#setPosition()に正方向の十分大きい数を渡し、画面内に描画させないようにすることを考えます。この時、KotlinのFloat.MAX_VALUEを設定すると、なぜか座…
Intel MOEについては以下の記事を参照してください。deep-verdure.hatenablog.comまた、Intel MOEのプロジェクトをGradle 5.1.1でビルドする方法については以下を参照してください。deep-verdure.hatenablog.com はじめに Intel MOEのプロジェクトについてGr…
Intel MOEについては以下の記事を参照してください。deep-verdure.hatenablog.com はじめに Intel MOEをGradleでビルドする際は、build.gradleのbuildscriptのdependenciesで、moe-gradle pluginをimplementationしておく必要があります。 しかし、このmoe-g…
はじめに 2019年6月に、Google Play Servicesの各種ライブラリがバージョンアップされ、それを契機としてGoogle Drive Android APIの各種クラスに@Deprecatedが付与されました。 もともと、Google Drive Android APIは2019年12月に廃止される告知が2018年12…
動作環境構築 絶望のjava.lang.NoClassDefFoundError KotlinコードのJavaコードへの書き直し Retrolambdaとの共存のための対応 バインディングライブラリのリンク おわりに RoboVMやIntel-MOEについてご存知でない方や、RoboVMのコード移植が完了していない…
はじめに -libGDXでのiOSアプリケーションの作成について- 基本的なランチャーコードの移植 RoboVM関連のimport文の修正 メソッド名の変更 ジェネリッククラスインスタンスの共変指定 配列取得コードの変更 NSMutableArrayが必要なコードの対応 特殊なコード…
経緯 Android Studio 3.2にアップデートすると、Gradle 4.6未満のプロジェクトは扱えなくなります。私はlibGDXを利用してAndroidアプリケーションをKotlinで書いていたのですが、gdx-setup.jarによるlibGDXプロジェクトセットアップ時のデフォルトのGradleは…
Google Play Servicesの利用可否の確認 サインイン処理の流れ GoogleSignInクラスとGoogleApiClientクラス サインインクライアントの生成 サイレントサインインの実装 インタラクティブサインインの実装 サインイン処理成功後の処理 サインイン処理成功時の…
Google Play Servicesの利用準備 Google Play Servicesとは build.gradleの設定 AndroidManifestへのパーミッション追記 フィンガプリントの生成 準備完了 Google Play Games Servicesの利用準備 Google Play Consoleでの設定 Google API Consoleでの設定 Fi…
前提条件 ゲームエンジンを使わず、フルスクラッチでの開発でGoogle Play Games Servicesを利用したい場合を想定しています。 ただし、今回はlibGDXとは関連性はありませんので、あらゆるライブラリにて参考になるのではないかと思います。 ※環境設定編は、…
はじめに AndroidアプリはAPKのサイズが100MBを超過すると、そのままでは開発者コンソールにアップロードできなくなります。 そこで必要となるのが、アセットファイルの一部または全部をAPKから拡張ファイルとして切り出し、APKそのもののサイズを大きく減ら…
はじめに libGDXでモバイル端末向けゲームを開発時にチュートリアルや入門記事通りに進めると嵌る可能性が高いのが、画面内のボタンをタッチして押そうとしてもタッチ位置がずれるため、正常に判定ができないという問題です。 私も開発中期の頃に嵌ったので…
経緯 libGDXを用いて制作したアプリの更新版IPAをApplication Uploaderから、App Storeにアップロードしようとしたところ、ITMS-90035エラーによってアップロードが却下されました。 ググるといろいろ記事は出てくるのですが、なかなか解決策までたどり着け…
前提条件 Android Studio for Mac 3.1 RoboVM 2.3.3 Gradle4.4 対象のiOSはiOS11 経緯 libGDXを用いたプロジェクトのiPhone実機デバッグを試みたところ、 @NotNull method org/robovm/idea/running/RoboVmRunProfileState.startProcess must not return null…
前提 Android Studio for Mac 3.1 RoboVM 2.3.3 Gradle4.4 経緯 libGDXを用いてiOSアプリを作成し、いざエミュレータで実行しようとしたら、 Could not run build action using Gradle installation のエラーが発生。 Gradleのバージョンを変えてみても解決…
蓋を開けてみたら滅茶苦茶初歩的なミスが原因でしたが、エラー内容から原因を推測できず、ググっても対処法が分からず、時間をかなり浪費したので自戒の意味も込めて記事にしておきます。 経緯 libGDXを用いてAndroidアプリ開発をしていましたが、 Mac, iPho…