以前はスマホの画面も、16;9 のハイビジョン比率がほとんどでしたが、
最近は、様々な画面サイズの機種が登場しています。
16:9 を想定してビルドしたアプリは、それ以外の画面比率の
機種では、ゲームフィールドの縦横がはみ出たり、足りなかっ
たり、UI のレイアウトが崩れたり。自ずと不具合が出てしまいます。
それに対応する Tips です。
Unityの画面のアスペクト比と解像度を自動変換 全スマホ・複数解像度に対応させる
https://3dunity.org/game-create-lesson/clicker-game/mobile-adjustment/
説明を読み、掲載されているスクリプトを適用すると、様々な
スクリーンサイズ(アスペクト比)内にゲーム画面、UI をエディタ
での想定通りに表示してくれます。
2022年7月21日木曜日
(覚書)様々な画面サイズのスマホ全てに、ゲーム画面を対応させる
2022年7月19日火曜日
(覚書) Android 12 端末に Unity で Android ビルドしたアプリをインストールする。
Android 12 端末に Unity で Android ビルドしたアプリがインストールできない問題に対する対処
https://xrdnk.hateblo.jp/entry/2021/11/05/115104
AndroidManifest.xml
を作成し、上記リンク記事のようにするだけで対応出来ました。
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:theme="@style/UnityThemeSelector"
android:exported="true">
---
android:exported="true"
exported を 明示的に記述することが必要ということらしい。
---
初めて AndroidManifest.xml を作成する場合は、上記記事内
のテキストのコピペで良いよう。
2022年4月2日土曜日
(作成アクション)Create uuid
重複することが限りなく少ない一意な識別子
uuid を生成するアクションです。
ユーザー、端末の識別等に使用できます。
Create_UUID.cs
ファイルを
プロジェクト内 Assetsフォルダの中の
\Assets\PlayMaker_Custom_Actions\System 等、任意の場所において下さい
(unity2019.3.3f1 での動作を確認。)
アクションブラウザ内の [System] カテゴリーに表示されます。
-----
ステートに並べ開始すると、 id が作成され、指定した String 変数に格納されます。
id を PlayerPrefs にセーブする場合は、続けて標準アクションの
[ PlayerPrefs Set String ] を使うといいでしょう。
-------
インスペクタで、作成された id を表示しているところです。
不具合などは、コメント等にお願いします。
2022年3月25日金曜日
(アクション配布)WWWPOST
HTTP通信でデータを送受信するアクションを配布します。
以前はエコシステムで見つかったものですが、今は見当たらないようです。
WWWPOST のみの予定でしたが、他の3つも同封することにしました。
WWWPOST
WWWObjectRelative
WWWEscapeUrl
WWWPOSTMobile
WWWPOST を使うと、web上のCGI等にデータを送受信できます。
図の例では、https://anan.sakura.ne.jp/gamedata.cgi に
https://anan.sakura.ne.jp/gamedata.cgi?name=しののめ&score=5100
といった形でデータを渡します。
Perl のスクリプトでは
-----
#!/usr/local/bin/perl
use CGI qw(:standard);
use Jcode;
## 受信データを $name $score へ代入。
$name = param("name");
$score = param("score");
-----
のような形で受け取ることが出来ます。
(いずれ、別エントリで、もう少し詳しく書くことも…)
パラメータには、Texture や Audio もあるので様々な使い方があるの
かもしれません。改変してみるのも面白いのかも。
-----
WWWPOST
WWWObjectRelative
に関しては "MovieTexture" オブジェクトが unityでサポートされなくなった
ため、元のままでは最近のunityで、エラーになる状態でした。
配布のスクリプトは、 MovieTexture に関する部分を // つぶしておきました。
unity2019 では動作します。
WWWPOST.zip
詳しくは同封のReadme をお読み下さい。
不具合などは、コメント等にお願いします。
2022年3月11日金曜日
(作成アクション)Set Sprite Value
スプライト変数に、スプライト画像を代入するアクションが、エコシステムにも
無いようなので、作成してみました。
上の図の例では、プロジェクトの中の戦闘機の画像を選択し、設定した
スプライト変数 "spr 1" に代入しています。
-------
ノードはこのようです。
-----
スプライト変数は前もって作成しておきます。
-----
実行し、次のステートで、"Set Sprite" アクションを使い、
"spr 1" に代入された画像を自身に割り当てています。
( "Set Sprite" アクションはエコシステム [ Ecosystem ] にあるはずで
すが、見当たらないこともあるようです。"Swap Sprite"でも代用で
きます。欲しい方には再配布します。多分問題はないと思うので。)
Set Sprite で直接、画像を割り当てることが出来ますが、
意外と役立つ場面もあるかもしれません。
Set Sprite Value.zip
解凍して出来たフォルダ内の、SetSpriteValue.cs を
プロジェクト内 Assetsフォルダの中の
\Assets\PlayMaker_Custom_Actions\Sprite
等に入れてください。
PlayMakerのアクションブラウザのカテゴリ sprite 内に
SetSpriteValue アクションが追加されます。
不具合などは、コメント等にお願いします。



