Google

2015年2月19日木曜日

RuntimeSTLLoader ver1.1.0

当商品をバージョンアップしました。
基本的な部分はあまり変化がありませんが、使いやすさと変換機能を搭載しました。
更新内容はこちら。
  1. STL生成先をルートか既存オブジェクトの下から選択可能
  2. デモシーンの大幅変更
  3. お手持ちのSTLをデモシーンで簡単に表示
  4. プロジェクト上のSTLパス抽出機能を追加
  5. Mesh抜き出しとプレハブ化
順を追って説明していきます。


1.STL生成先をルートか既存オブジェクトの下から選択可能

これは本体へのちょっとした修正です。
以下は前回書いた呼び出しの手順。

 public GameObject m_stl_base_prefab;
 void Start() {
  // RuntimeStlLoaderインスタンスの呼び出し
  RuntimeStlLoader loader = RuntimeStlLoader.getInstance();
  // STL生成
  GameObject obj = 
   loader.loadStlToScene(
     loader.getPlatformPath() + "RuntimeStlLoader/Stl/" + "angework_logo.stl",
     m_stl_base_prefab,
     gameObject);
 }

呼び出しの引数の最後の部分、parentを指定すべき部分にnullを入れるとシーンルートに生成を行うようにしました。
これはちょっとした使い勝手向上という感じ。


2.デモシーンの大幅変更

デモシーンを色々と強化して当プラグイン自体にも役立つユーティリティとして使って頂く形にしてみました。


デモシーンを起動すると上のような画面になります。
画面上のボタン構成はこうです。
  • 埋め込んだ弊社ロゴSTLを表示するボタン
  • プロジェクト上のSTLパスを記載してもらうエリア
  • (b)のパスからSTLを読み出すボタン
  • 現在表示中のSTLをMeshとプレハブに吐き出すボタン
  • 現在表示中のSTLをクリアするボタン
これらが機能を持っている訳ですが、説明は順繰りで。


3.お手持ちのSTLをデモシーンで簡単に表示
4プロジェクト上のSTLパス抽出機能を追加

この2つはグループです。
デモシーンは今まで同梱されていた弊社ロゴしか表示しませんでした。
(a)のボタンは1.0.0と同一で、予めデモに埋め込んだ弊社ロゴSTLを出すだけの機能で、それを踏襲しています。
なので押せば単純に前回とほぼ同じ結果になるだけです。

ロゴが出るだけ
ですがデモとしてはそれも不便だったので、プロジェクトに別のSTLを追加してパスを指定して簡単に表示するようにしてみました。
これが(b)と(c)のGUIに関係します。

まずはその辺で拾ってきたSTLファイルをこのPluginが入ったプロジェクトにインポートして下さい。
プロジェクトへのインポートは通常通りD&Dで問題ありません。
インポートしたら必ずUnityEditor上でデモシーンを「実行」する必要があります。
そして、実行状態のままで、そのSTLファイルを右クリックして下さい。

するとこんな風に追加されたメニューがでてきます。
この時、間違った選択をしていると正しく動作しません(エラーにはなりませんが)。
そしてこのメニュー項目を選択すれば、デモ画面の(b)、テキストエリアにそのファイルパスが埋め込まれます。

こんな感じに文字列が入ります。
後はそのテキストエリアの下にある(c)ボタンを押すだけ。
要はこの(c)のボタンは、テキストエリアに指定されたプロジェクト上パスから読み出すというボタンになります。

ご存知の方も多いかとは思いますが、このパスはAssetsから始まる形式です。
当然ながら自力で指定してもいいのですが、それを毎回書くのも嫌だろうと勝手に思い込んで付けた訳です。



5.はサンプルとして同梱したテストシーンに追加した便利機能です。
STLからMeshとプレハブを生成するという代物です。
では実演。


このSSのようにSTLを表示した状態で下から2番目のボタン(d)を押すと、、、

こんなメッセージが出て
プロジェクトにMeshとプレハブが生成されます。
エクスプローラーで見るとこんな感じ
プロジェクトのルートに生成するのですが、その際のファイル名はこういう法則です。

  • StlMesh.asset
  • (インスタンス名).prefab

既に同一名のファイルがあると失敗します。
そして、一旦プレハブ化してしまえば、それはそのままシーンに持っていけるようになります。
ある意味このツール要らずになるのですが。

コンバートしたプレハブのプロパティはこんな感じ
FBXに比べれば自由度は減りますが、Maya等の3Dツールが不要な変換機能が追加されたという事になりますでしょうか。


今回のまとめ

要はこのデモシーンを使って、STLファイルをインポート、パス指定、プレハブ化というシーケンスを簡易に行うツールになるという訳です。
別の見方をすれば、わざわざSTLを表示するツールなのに、プレハブにすることでその存在意義が無くなるというバージョンアップでもありますがw

なお、デモシーン自体はUnityEditor上でしか正しく動作しませんのでご注意を。
本体はWebPlayerを除く大抵の環境で動作します。


宜しければ弊社公式サイトも併せて御覧ください。
http://www.angework.co.jp/products/Unity/RuntimeStlLoader.html

0 件のコメント:

コメントを投稿