概要 MayaでのPythonの基本的なスクリプティングについて覚えたことのメモ 環境 Pythonバージョン3.7.7 シーン シーン内のオブジェクトを列挙 オブジェクトにtransformは必ずあるのでtype="transform"で絞るとシーン内のオブジェクトが取れるって感じですね…
git管理したい独自のpythonスクリプトフォルダを指定するには userSetup.pyに下記のように指定する。 print("UserSetup..") import sys myscripts = "Pythonスクリプトのフォルダパス" sys.path.append(myscripts) print("added path:" + myscripts) 追記し…
概要 ジオメトリのスカルプトツールとマテリアルのフラクタルを使用すれば簡単に地面が作成できたので メモします。 環境 Maya2022.3 作業 Planeを作成(縦と横の分割数は50くらい)します。大きさは適当にスケールし、トランスフォームのフリーズをします。 …
概要 Mayaでシンプルなローポリツリーを作成した際の作業の備忘録になります。 木 シリンダーを作成 軸の分割数(subdivisionsAxis)を 7 に Shift + 選択でシリンダーを全選択 Shift 押しながら横面を選択で上の面だけ選択に Shift押しながらフェース移動で押…
Python import maya.cmds as cmds objs = cmds.ls(sl=True) for o in objs: print(o) cmds.parent(o, "新しい親オブジェクト名" ) 備考 親にしたいオブジェクトを最後に選択して p を押しても可能。 (むしろそっちのほうが楽かも..)
概要 URPでアウトゲームとインゲームでRendererを切り替えたい場合、 UniversalAdditionalCameraData のSetRenderer で切り替えられる。 using UnityEngine; using UnityEngine.Rendering.Universal; [ExecuteAlways] public class URPSetRenderer : MonoBeh…
概要 コード using UnityEditor; using UnityEngine; using UnityEngine.UIElements; public class ExampleWindow : EditorWindow { [MenuItem("Window/ExampleWindow")] static void Init() { GetWindow<ExampleWindow>(); } void OnEnable() { var button1 = new Button((</examplewindow>…
概要 EditorWindow.GetWindowの引数desiredDockNextToにtypeofでタイプを指定すると、そのタイプの隣に ウィンドウがくるサンプル。 コード using UnityEditor; using UnityEngine; using UnityEngine.UIElements; public class ExampleWindow : EditorWindo…
概要 Unityでコンソールウィンドウの行をダブルクリックしたときにコードにジャンプしますが それと同じことをUnityのインターナルなメソッドを呼ぶことでできるのでメモ コード static void OpenFileOnSpecificLineAndColumn(string filePath, int line, in…
概要 Unity2019.2からTypeCacheを使用すると、あるベースクラスから継承されている派生先のクラスのTypeを取得することができる。 サンプルコード public interface IHoge { } public class HogeA : IHoge { } public class HogeB : IHoge { } foreach (var …
概要 Unityでシンプルな会話パートが作成できるUniNovelを作ってBitbucketに公開しました。 機能 かなりシンプルなことしかできません^^ BG表示・非表示 キャラ表示・非表示 メッセージ送り バックログ GUIエディター 上でコマンドを選択して+ボタンで追加…
概要 MayaのMELのシンプルなサンプルスクリプト。 MEL string $toolCreate = "createTool"; string $toolName = "UI Tool"; if( `window -exists $toolCreate`) { deleteUI $toolCreate; } window -t $toolName -w 500 -h 500 $toolCreate; frameLayout -lab…
MayaLTを触り始め、基本操作を少し覚えたのでメモ。 添って移動させる ・オブジェクトを選択して移動モードでC押しながらドラッグ ・オブジェクトを選択して移動モードでV押しながらドラッグ Pivotの操作 ・オブジェクトを選択してInsertキーまたはDキー グ…
概要 MayaのMELでオブジェクトを複製する。 使い方 下記をスクリプトエディタに貼り付け実行する。 // トランスフォームのフリーズ makeIdentity -apply true -t 1 -r 1 -s 1 -n 0 -pn 1; // pivotを原点に移動 string $objs[]=`ls -sl`; for ($obj in $objs…
概要 github.com を導入することで のようなエフェクトを簡単に作れます。 設定例 Materialを作成し、シェーダーは Sprite ( Pixel Lit Dissolve ) を選択します。
例えばタイトル画面からホーム画面に遷移するとして、基盤を使う側のコードはこんな感じとなります。 コード using UnityEngine; using UnityEngine.UI; using UniRx; using Zenject; public class Title : SceneBase { [Inject(Id = "start")] Button start…
// SerializeFieldをゲットする。componentはなんらかのComponentを指定する。 var fields = component.GetType() .GetFields(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy) .SelectMany(x => x.CustomAttributes.Where…
UnityでUniRxとZenjectを使ってのソシャゲを意識したシーン遷移基盤を趣味で作ってます。 初めに 仕事ではUniRxは使っているのですが、Zenjectは仕事では使ったことがありません。 最近はやりのZenjectの練習もかねて、UniRxとZenjectを組み合わせればいいも…
はじめに ShaderGraphで炎が揺らゆくエフェクトを作成してみましたのでその作成方法をご紹介します。 炎の画像をゆらゆらと揺らしつつ、炎の下のほうは揺らめきを抑えています。 ShaderGraph 全体 画像のように大きく3つの部分から構成されています。 3つ…
コード https://bitbucket.org/macnaga/scriptwizard/src/master/Assets/Editor/ScriptWizard.cs 確認バージョン Unity2018.2.4f1 Windows 10 Window/Script Wizard .. Exposed ReferencesにSerializeFieldをAddボタンにて追加します。 フィールドにオブジェ…
Unityシーン遷移時に引数(パラメータ)を渡したい時ってあると思います。 インターフェイスを実装したら引数が渡されてくれれば便利かなと思ったので実装してみます。 環境 Unity2018.3.0b6 Windows10 コード このようなインターフェイスを定義します。 usi…
using UnityEngine; public class NewBehaviourScript : MonoBehaviour { void Update() { if(Input.GetMouseButtonDown(0)) { Debug.Log("Hoge"); } } } というスクリプトがあるとします。マウスの左クリックで Hoge と表示します。 UniRxを使用することで …
デモ 作成したものがこちらです。 RPGとかでボスが死亡するときの演出に使えるかと思います。 ピクセルを散らしつつ、ついでに小刻みに震えながら消滅していきます。 開発環境 Unity2017.3 Windows10 Androidは実機で動作確認しましたが、iOSでは未検証です…