名古屋でアプリ・VR開発を行っています
ワクワクできるゲームをガンガン開発リリース中!

MAYAで一括で名前を変更する方法

こんにちはパンダです。

今日はMAYAで使える便利機能です。

オブジェクトが増えてくると名前を1つ1つ変えるのって面倒ですよね。

そんなときはこちらを使用してみましょう!

f:id:sat-box:20210524122402p:plain

修正>名前を検索して置き換え

 

f:id:sat-box:20210524122358p:plain

するとこのようなオプション出てきます。

上に現在の名前を入れて

下に新しくつけたい名前を入れます。

そして置き換えを押すと・・・

 

f:id:sat-box:20210524122354p:plain

名前が変わりました!

初期では階層にチェック入っていますので親を選んだら子の名前も一括で変わります。

ボーンをリネームする際にとても便利な機能です。

ちなみに

選択範囲にチェックを入れると選択しているオブジェクトの中で同じ名前のものリネームされます。

すべてにチェックを入れるとアウトライナにある同じ名前のものはすべて変わります。

 

1つ1つ名前を変えていると時間かかってしまいますので是非活用してみてください!!

ではまた〜ノシ

 

 

 

 

 

 

 

【Nintendo Switch】【新作】「Undead Battle Royale(アンデッド バトルロイヤル)」が配信開始!

みなさん、こんにちは!SAT-BOXのツバメです。

 

f:id:sat-box:20210506142651j:plain

NintendoSwitchの新作ゲーム

「Undead Battle Royale(アンデッド バトルロイヤル)」

配信開始されました!

 

タイトル:Undead Battle Royale(アンデッド バトルロイヤル)
配信開始日:2021年5月20日(木曜日)
プレイ人数:1~4人
ローカル通信:2~4人
価格:980円(税込)
※ 2021年6月1日(火曜日) 23時59分まで48%OFFの500円(税込)で購入できます!

 

購入はコチラから ↓

store-jp.nintendo.com

 

紹介動画はコチラ ↓

www.youtube.com

 

専用紹介ページはコチラ ↓

sat-box.jp

 

遊べるステージは12ステージ!

f:id:sat-box:20210506144510j:plain

建物が多く並んだ場所や絶海の孤島など多様なステージを収録!

地形が異なるステージを把握して生き残ろう!

 

1人プレイ時は敵をより多く倒してハイスコアを狙おう!

f:id:sat-box:20210506145029j:plain

1人プレイ時は敵を多く倒してハイスコアを狙おう!

画面左上のミッションをクリアすることで追加のスコアが獲得できるぞ!

 

最大プレイ人数は4人!ローカル通信も可能!

f:id:sat-box:20210506145130j:plain

誰が多くの敵を倒せるかみんなで対戦して盛り上がろう!

Switch本体を持ち寄れば近くにいる人とローカル通信で対戦も出来るぞ!

 

 

Undead Battle Royale(アンデッド バトルロイヤル)は手軽に遊べるゲームです。

友達や家族とワイワイ盛り上がること間違いなしです!ぜひ、遊んでみてください!

 

以上、ツバメでした!

自己ベスト更新なるか?!『サクっと!靴とばし』

皆さんこんにちは~きなこです♪

今日は久しぶりに『サクっと!靴とばし』をやってみました!

f:id:sat-box:20210520151751j:plain

場所がビーチで行きたくなりますね♪

f:id:sat-box:20210520151754j:plain  f:id:sat-box:20210520151757j:plain

右足から挑戦!

まずは思いっきりこいでパワーをチャージします。

溜まったところで頂上に上がる少し手前で靴を飛ばします!!

f:id:sat-box:20210520151801j:plain  f:id:sat-box:20210520151807j:plain

高くならずイイ高さで飛んでいきます!これは期待できそうです

40mまではいきませんでしたが37mも飛び好記録!!

f:id:sat-box:20210520151812j:plain  f:id:sat-box:20210520151815j:plain

右足に続けとばかりに左足も飛ばしていきます。

先程同様、パワーを溜めて~靴を飛ばします!

飛ばすとき少し位置が低かった気がします・・・

f:id:sat-box:20210520151819j:plain  f:id:sat-box:20210520151823j:plain

案の定、低い位置から靴を飛ばしてしまったので靴が飛んでいくときに

高さが出てしまいました(泣)

上に上がってしまった分距離はそこまで伸びず30m・・・

f:id:sat-box:20210520151831j:plain

結果37.92mで良い成績ではあると思うのですが

自己ベストも更新できずの悔しい結果に。

ベストタイミングで靴が飛ばせるように練習しまくります!

 

ぜひ皆さんも挑戦してみてくださいね♪

 

ダウンロード↓

play.google.com

サクっと!靴とばし

サクっと!靴とばし

  • SAT-BOX
  • ゲーム
  • 無料

apps.apple.com

クラフトアイランドで勝負!『消しゴム落としバトルロイヤル』

みなさんこんにちは~きなこです♪

今日は『消しゴム落としバトルロイヤル』の

新ステージクラフトアイランドで戦ってみました!

f:id:sat-box:20210518155009j:plain

f:id:sat-box:20210518154821j:plain

22人も敵がいるので頑張ります!

f:id:sat-box:20210518154824j:plain  f:id:sat-box:20210518154828j:plain

攻めの攻撃で戦っていこうと思っておりましたが、攻撃してもなかなか落ちず

むしろ押されて落ちそうになる瞬間が何度かありましたので

ここは逃げの作戦で行きます!

f:id:sat-box:20210518154831j:plain

机も徐々に減っていき、真ん中の机に密集して埋もれています(笑)

密集していると直接の攻撃を避けることができるので

埋もれながらひそかに攻撃していきます。  

f:id:sat-box:20210518154834j:plain  f:id:sat-box:20210518154838j:plain

文房具も落とされて、いよいよ最終決戦というところで

狙いを定めて飛ばします。見事落ちていきました。

f:id:sat-box:20210518154842j:plain  f:id:sat-box:20210518154845j:plain

なんとほぼ同時に5個も一気に落ちていき頂上決戦に突入!

押され気味でしたが、ようやく相手を縁に追い込み今だ!と弾くと

f:id:sat-box:20210518154848j:plain  f:id:sat-box:20210518154851j:plain

相手にするっと避けられ相手の角に当たり

むしろ自分が落ちていってしまいました・・・

逃げの作戦でここまでいけましたが、1位にはふさわしくないと

思われてしまってたのでしょうか(笑)

落とした消しゴムもたったの一個

 

でも2位という結果はとてもいいことなので喜びます♪

 

皆さんもそれぞれの作戦で楽しんでくださいね!

 

ダウンロード↓

play.google.com

apps.apple.com

オブジェクトのスケールなどの計算

こんにちはパンダです。

本日はUnity、MAYA、Photoshop等で使える小技?をお伝えしようと思います。

みんな知ってる常識でしたらごめんなさい。

どのソフトでも良いんですが、今回はUnityで説明していきます。

まず適当にオブジェクトを作成しました。

 

f:id:sat-box:20210517134411p:plain

現在ScaleがXYZすべて2.8にしてあります。

ScaleYを0.8倍したいとき

 

f:id:sat-box:20210517134408p:plain

2.8*0.8とします。(半角で入力してください。)

 

f:id:sat-box:20210517134405p:plain

すると勝手に計算してくれます。

 

今度はScaleXを3分の1にしたいとき

f:id:sat-box:20210517134402p:plain

2.8/3と入力します。

 

f:id:sat-box:20210517134359p:plain

すると3分の1にしてくれます。割り切れませんでしたが。

 

+:足し算

-:引き算

*:掛け算

/:割り算

というような感じでやってくれますので機会があれば使ってみてください。

一応冒頭で上げた3つのソフトでは同様に使用できました。

Photoshopの変形時など初期の値が計算面倒な場合は使用してみるといいかもしれません。

 

以上パンダでした。

 

 

 

 

UnityのInspector上のTransformをちょっとだけ機能を拡張する

みなさん、こんにちは!SAT-BOXのツバメです。

今回はUnityのInspector上のTransformをちょっとだけ機能を拡張するお話になります。
Transformの座標や角度を初期化する際はほとんどの人は手作業でやると思います。X,Y,Zをそれぞれ選択して0を記入…。座標、角度、スケールすべての値を手作業でやるにはちょっと面倒ですよね。
その面倒をちょっとだけ緩和する機能を実装してみようと思います。今回はボタン1つで座標のX,Y,Zをすべて0に初期化するものを作成してみようと思います。

1.コードを書いていきましょう
まずはスクリプトを作成しましょう(スクリプト名は何でも良いです)
作成したスクリプトに以下のコードを貼り付けてください

using UnityEngine;
using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(Transform))] // <- この処理でエディター拡張の指定をTransformにしています
public class スクリプト名 : Editor 
{
	private Vector3 tmpLocalPosition;
	private Vector3 tmpLocalRotation;
	private Vector3 tmpLocalScale;

	private const float BUTTON_WIDTH = 20.0f;
	private const float GUILAYOUT_WIDTH = 50.0f;
	private const float GUILAYOUT_HEIGHT = 20.0f;

	public override void OnInspectorGUI()
	{
		Transform targetTransform = (Transform)target;

		EditorGUI.BeginChangeCheck();
                {
			// Positionの表示
			EditorGUILayout.BeginHorizontal();
			{
				EditorGUI.BeginChangeCheck();
				{
					// XYZすべての値が0の場合はボタンを押せないようにする
					EditorGUI.BeginDisabledGroup((targetTransform.localPosition.x == 0 && targetTransform.localPosition.y == 0 && targetTransform.localPosition.z == 0) ? true : false);
					{
						// 初期化ボタンを表示
						if (GUILayout.Button("R", GUILayout.Width(BUTTON_WIDTH))) tmpLocalPosition = Vector3.zero;
					}
					EditorGUI.EndDisabledGroup();
				}
				if (EditorGUI.EndChangeCheck())
				{
					Undo.RecordObject(target, "Undo CustomTransform");
					targetTransform.localPosition = tmpLocalPosition;
				}

				EditorGUILayout.LabelField("Position", GUILayout.Width(GUILAYOUT_WIDTH), GUILayout.Height(GUILAYOUT_HEIGHT));
				tmpLocalPosition = EditorGUILayout.Vector3Field("", targetTransform.localPosition, GUILayout.Height(GUILAYOUT_HEIGHT));
			}
			EditorGUILayout.EndHorizontal();

			// Rotationの表示
			EditorGUILayout.BeginHorizontal();
			{
				EditorGUILayout.LabelField("Rotation", GUILayout.Width(GUILAYOUT_WIDTH), GUILayout.Height(GUILAYOUT_HEIGHT));

				tmpLocalRotation = EditorGUILayout.Vector3Field("", targetTransform.localEulerAngles, GUILayout.Height(GUILAYOUT_HEIGHT));
			}
			EditorGUILayout.EndHorizontal();

			// Scaleの表示
			EditorGUILayout.BeginHorizontal();
			{
				EditorGUILayout.LabelField("Scale", GUILayout.Width(GUILAYOUT_WIDTH), GUILayout.Height(GUILAYOUT_HEIGHT));
				tmpLocalScale = EditorGUILayout.Vector3Field("", targetTransform.localScale, GUILayout.Height(GUILAYOUT_HEIGHT));
			}
			EditorGUILayout.EndHorizontal();
		}
		if (EditorGUI.EndChangeCheck())
		{
			Undo.RecordObject(target, "Undo CustomTransform");
			targetTransform.localPosition = tmpLocalPosition;
			targetTransform.localEulerAngles = tmpLocalRotation;
			targetTransform.localScale = tmpLocalScale;
		}
	}
}

貼り付け終わったら保存をしてエディター上で何かを選択してInspectorを確認してみてください。以下の画像のような表示になると思います。
f:id:sat-box:20210514131315p:plain
座標に適当に値を入力してRのボタンを押してみてください。XYZすべてが0にリセットされると思います(Undo・Redoにも対応しています)

2.コードのざっくり説明
ボタンの表示と初期化を行っている処理は以下の部分です

// XYZすべての値が0の場合はボタンを押せないようにする
EditorGUI.BeginDisabledGroup((targetTransform.localPosition.x == 0 && targetTransform.localPosition.y == 0 && targetTransform.localPosition.z == 0) ? true : false);
{
	// 初期化ボタンを表示
	if (GUILayout.Button("R", GUILayout.Width(BUTTON_WIDTH))) tmpLocalPosition = Vector3.zero;
}
EditorGUI.EndDisabledGroup();

「EditorGUI.BeginDisabledGroup()」では対象のTransformの座標の値どれかが0以外だとボタンを押せるようにしています(すべて0だったら押せないです)
中には「GUILayout.Button()」を表示しており、ボタンが押されたらTransformの座標すべてを0にするだけの処理です

3.注意点
今回はTransformのInspector上の表示を変えるものですので、座標だけの表示を行ってしまうと角度やスケールが表示されなくなってしまいます。
角度やスケールの表示もコード内に書く必要があるので、注意してください。
また、複数選択時にはボタンが押せないです。これは改良の必要あり!な所なので、改良できたらまた記事にしようと思います(出来る方はぜひ実装してみてください!)

4.最後に
今回は座標だけを初期化する機能を実装しましたが、角度やスケールも座標と同じようにコードを書けば初期化出来ますので、興味のある方はぜひ実践してみてください!
また、Transformのこれ以上の改造も可能ですので今後も紹介できそうな機能があれば紹介しようと思います。

以上、ツバメでした!