いんでぃーづ

ゲームいろいろ、いろいろ自由

Unity

Unityシェーダー:ハシゴの3DモデルからDNAのらせん構造を作る

完全に一発芸です。

Unityアセット:吸い付くスクロール MagneticScrollView

リスト構造のUIを作ったときに、選択したものが定位置に ヒュイっと吸い付く の実装したかったのですが、すでにいい感じのアセット売ってました。 使い方 まず何はともあれUIを配置しましょう。 ヒエラルキービューで Create > UI > MagneticScrollView と選…

Unityシェーダー:マニュアル操作で波っぽくウネウネさせるシェーダーを書く

前回に引き続きシェーダー話です。 製作中のゲームに 自由にうごかせる波 がほしいなあと思っていて、なんとなくそれっぽい動きが実装できたのでバンザイバンザイ。 波の高さ、細かさ、波の状態を自由自在に操れるという会心作ですゲッヘッヘ

Unity UI:一部分だけ残してフェードアウトさせる

チュートリアルなど作るときに、タップやクリックさせたい部品だけ残して他を暗転させるのはよく見ると思います。 Unityでは デフォルトシェーダでステンシルバッファを使えば 意外と簡単に実現できます。

Android用Unityゲームの署名にGoogleAppSiningを使う

Androidアプリを公開したことがある方は、アプリ作成時に キーストア の作成をしたことがあるでしょう。 この鍵は自分で管理しなければならず、 無くしたら二度とアプリをアップデートできない という、慎重に扱わなければならないものでした。 しかし、2017…

Unity : カードゲームのカード内のキャラを動かす

トレーディングカードゲームとかで、カードの中のキャラが動いて必殺技とか繰り出すとかっこいいですよね。 こんなふうにね。 ...がんばればもうちょっとかっこよくできます。

Unity : Anima2D で一枚絵からアニメーションを作る

RPGなりアドベンチャーゲームなりで2Dキャラを描画したときに、なんか動きをつけたいなーと思ったら Anima2D が便利です。 スプライト一枚のイラストにも、それっぽいアニメーションをつけることができます。

Unityショートカット : シーンビューカメラの位置にCameraを移動する

どういうことかというと 下の左の画面がシーンビュー、右がゲームビュー。 シーン内に配置した MainCamera から見えているのが右ですね。 これを一瞬で というように、シーンビューで見えている景色の位置にカメラを一瞬で持ってくる ことができます。 やり…

Unityショートカット : エディタ上でオブジェクトを密着させて配置する

3Dオブジェクトをシーンに配置するときに、オブジェクト同士を密着させて配置させたい場合のTips。 隙間なく詰めたり、接地させて置きたい場合などはよくあります。 Windows Shift + Ctrl ボタンを押しながら、Transformの中央の四角をドラッグ Mac Shift + …

遊戯王デュエルリンクスのタップエフェクトを作る

いやー、おもろいですね 遊戯王デュエルリンクス ! つい最近 ラーの翼神竜 とラヴァゴを手にいれてオモシロデッキを試行錯誤する毎日です。勝ちは二の次。 で、このゲームやってると常時目にするのが タップエフェクト です。 指を押し付けてる間ずっと ピ…

Unity : uGUIにエフェクトをかけるアセット UIEffect

uGUIでブラーエフェクトかけられないかなーと思ってググっていたら、劇マブエフェクト群スクリプトアセットを見つけました github.com Imageコンポーネントに UIEffect スクリプトをアタッチするだけで、さまざまな視覚効果をUIに付与できます。 よく使いそ…

Unity : MonoBehaviour, ScriptableObject をJSONファイルに保存する [C#]

まあ、ごくたまになんですけど、Unityをバージョナップしたりアセットをインポートしなおしたときに、シリアライズされたデータがふっとぶ時があったんです。 けっこうショックがデカいんですよね。いろんなデータをそこに入れてたりすると。 こんなときバッ…

Unity : iOS 10.3以上でレビューダイアログを表示するプラグインを作る

iOS10.3からレビュー依頼の方法が変わり、アプリ内で星を評価するダイアログが標準で用意されました。 なんでも、このダイアログを使わないレビュー依頼は リジェクト対象になる とか。 ということでUnityで作ったゲームでもこの機能を使いましょう。 Unity…

TextMeshPro でアウトラインの太さが思い通りにいかない場合

TextMeshProでテキストのアウトラインの太さを思ったとおりにするには、フォントアセット作成の時点から気をつける必要があります。 それは Font Asset Creator の Font Padding 設定です。 まず、フォントアセット作成時の、次の二つの画像を見比べてみてく…

Unity2017新機能のSpriteAtlasには、旧スプライトパッカーからすぐ移行するべき

Unity2017でスプライトパッキングの仕組みが刷新されました。 docs.unity3d.com 「今開発中のはスプライトパッカーで十分だし、まだいいかなー」などと思わず、すぐ移行すべきだと思います。 というのも、アセットストアで購入したスプライトにありがちな問…

UnityIAP : NonConsumableなアイテムの購入状態をクリアする

UnityIAPを使っている場合、一度しか購入できない商品は NonConsumable として定義する。 が、テスト中は何回も買いたいので購入状態を戻す方法を調べていたのだが、どうも見つからなかった。 この関数 でクリアするのかなと思ったが、やっぱり購入しなおせ…

Unity : デバッグ用のシーンを挟み込んでビルドする

端末でのデバッグ中に、各種パラメータ値を書き換えられるデバッグ用シーンを入れてビルドしてテストしたりすると思いますが、リリースしたいときにBuild Settings からシーン外したりするの手間なので、メニューから一発でやる方法を考えました。

Unity : プレハブの値をエディタスクリプトから変更・保存する

エディタ拡張書いたときに、プレハブの値を読むのは以下の記事の方法でできる。 indie-du.com 読んだ上で 書き換える には一工夫必要になる。

Unity : 自作エディタウインドウにプレハブを擬似シリアライズ

エディタウインドウを自作したときに、EditorGUILayout.ObjectField で受けたプレハブ情報を保存しておく場合の方法。

Unity : uGUIのボタンをフワフワ強調表示させてタップを促す

チュートリアルなどでボタンをクリックさせたいとき、下のようにボタンに拡大縮小のアニメーションを使ったりすると効果的です。 Unity標準の機能で実現できるので紹介します。

Unity : テクスチャからGetPixelしたときにエラー

Textureからピクセルデータを取得したく、 Texture2D#GetPixels を使って以下のように読み出そうと試みた。

コマ切れのスプライトアセットに出会ったときの対処法

城っぽい背景のテクスチャアセットを探してたら、バッチコイのアセットに出会いました。 いざ配置しようとスプライトをチェックしたら、下のように小さいタイルの集合になっているではありませんか。 ※画像は盗用防止のため加工してあります。 元の画像は大…

TextMeshProで、必要な日本語データだけ吸い出して使う方法

ついこのあいだ無料化された TextMeshPro ですが、このアセットを使うにはフォントファイルからフォントテクスチャ(画像)として専用のテクスチャを作成する必要があります。 この際、必要な文字だけテクスチャに焼き込んで使う機能があり、そのぶんデータ…

Unity : グローバルなイベント通知の仕組み(EventBus)を自前実装する [C#]

例えば、敵を倒したタイミングで、プレイヤー、UI、他の敵が何らかのアクションを起こしたい場合、どのような経路でイベントを通知するか悩みます。 敵を各オブジェクトが監視したりするのは、参照が絡み合って管理がめんどうくさいです。 そこで便利なのがE…

Unity : ゲーム性を持たせるAnimationCurveの小技3選

こういったウインドウを見たことがあると思いますが、これは AnimationCurve 型のメンバ変数を持つことで、インスペクタから設定することができます。 AnimationCurve - Unity スクリプトリファレンス public class AnimationCurveForRandom : MonoBehaviour…

Unityエディタウインドウを自作する

エディタウインドウ作成方法をよく忘れるのでメモ

Unity : フォントデータから必要な文字だけインポートし、容量を軽くする

フォントファイル(ttf, otf)をそのままアプリにブチ混むと、そこそこの容量になる。 あらかじめ使用する文字がわかっているなら、その文字だけインポートすることで大幅な容量の節約になります。

Unity : プレハブに保存した値を Instantiate せずに直接読む

プロジェクトフォルダにあるPrefabから、Instantiate せずに各種コンポーネントを取得したかったメモ。

Unity : アニメーションのポリモーフィズム - AnimatorOverrideController

たとえばオッサンキャラとJKキャラには同じ「歩く」というアニメーションが必要ですが、実際に適用するアニメーションクリップは異なるでしょう。 *下は同じアニメーションを適用したオッサンとJK(?)の例 そんなとき AnimatorController を共通化しつつ…

Unity : ScriptableObject解体新書(?)

共有データ保存になんとなく使っていた ScriptableObject について、いろいろ研究してみました。 そして、今までいろいろ間違った使い方をしていたことに気づきました。


“Unity” and Unity logos are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere, and are used under license.


免責事項

当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。

また、当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。

すべて自己責任でお願いします。