Open nduplex opened 9 years ago
nduplex様
お世話になっております。 端的には可能です。
NULLノードそのものの(SS5上でNULLパーツにそのまま設定されている)アトリビュートの値(=直接の親パーツからの相対座標)を取得したい場合、 「そのNULLノードの名称がついていて・Script_SpriteStudio_PartsNULL.csのコンポーネントが付いているGameObjectのtransform.localPosition」 で取得可能です(x座標は.x・y座標は.yのメンバになります)
一方シーン内のグローバル座標(実際におかれている絶対座標=ワールド座標)を取得したい場合、 「そのNULLノードの名称がついていて・Script_SpriteStudio_PartsNULL.csのコンポーネントが付いているGameObjectのtransform.position」 で取得可能です(x座標は.x・y座標は.yのメンバになります)
以上となります。 お忙しい中お手数ですが、ご検証いただけますようお願い申し上げます。
nduplex様
追記となります。 上記方法で取得したtransformの座標は、取得を記載した関数もしくはスクリプトの実行順序によっては、1回前のUpdate処理時のものになります。
対処としては ・位置を取得する側のスクリプトの実行順序を、Script_SpriteStudio_PartsNULL.csよりも下げる(Monoに対して設定するスクリプトの実行順序値を大きくする) もしくは ・座標の取得をUpdate関数内ではなく、LateUpdate関数内で行う のどちらかが平易かと思われます。 (自力でアニメーションデータを解析するのは、ノードのアトリビュート設定値しか取れないのと・今後データ格納実装などが変更される可能性なども考慮すると、少々推奨いたしかねます)
以上となります。
MasamiYitsuse 様
おかげさまで無事に目的のデータを取得する事が出来ました。 素早い対応ありがとうございます。
お世話になります。 SS上でアニメーション毎に設置したNULLパーツの座標を取得したいと思っています。 座標を取得したいNULLパーツにはそれぞれ固有の名前が付けられているのですが それを元にUnity上でインスタンス化したデータからX座標とY座標を取得することは可能でしょうか?
以上よろしくお願い致します。