目次
Softimage SDK プログラマー ガイド
SDK ポータル
新機能と変更点
Softimage 2012 Subscription Advantage Pack
Softimage 2012
新機能
オブジェクト モデルの変更点
C++ API の変更点
スクリプティング コマンドの変更点
SDK コンポーネントの紹介
SDK によるカスタマイズ
Softimage でのカスタマイズ
自己インストール プラグイン
自己インストールプラグインの概要
プラグイン ウィザードを使って作業する
プラグイン プロパティの設定
プラグイン用ヘルプファイルの指定
プラグイン項目の登録
プラグイン項目の命名
カスタム プロパティでのプリフィックスの使用
コールバックの書き出し
自己インストール プラグインを配布する
自己インストール プラグインのコールバック
プラグイン タイプによるコールバック
コールバック リスト
カスタム コマンド
カスタム コマンドとは
カスタム コマンド ウィザード
コマンドの登録
コマンドの機能の設定
コマンドのユーザ インターフェイス テキストの提供
引数の追加
引数の操作
値を返す
C++ コールバックの書き出し
スクリプトからの C++ カスタム コマンドの呼び出し
メニューへのコマンドの追加
カスタム コマンドを元に戻す/やり直す
カスタム プロパティ
カスタム プロパティとは
カスタム プロパティを作成する
ダイアログのビルド
カスタム プロパティの定義
自己インストール プロパティの作成
プロパティの自己インストール式への移行
プロパティ コールバック
プロパティ ページ コントロール
ラベル
固定テキスト
ビットマップ ウィジット
編集可能テキスト ボックス
単一行テキスト
複数行テキスト
テキスト エディタ ウィジェット
Enum コントロール
リスト ボックス
コンボ ボックスとドロップダウン ボックス
ラジオ ボタン
アイコン ボタン
ビットフィールド
パス コントロール
ファイル ブラウザ ウィジット
フォルダ ウィジット
数値コントロール
スライダ付き数値編集ボックス
RGB カラー コントロール
RGBA カラー コントロール
F カーブウィジット
GridData ウィジット
シノプティック ウィジット
チェック ボックス
コマンド ボタン
コントロール属性を設定する
グループ コントロール
ラッピング コントロール(行)
複数ページ(タブ)の使用
コントロールウィンドウのサイズ変更
カスタム プロパティの動的変更
処理中のプロパティページの定義
ヘルプ ファイルの提供
カスタム プロパティ ページのサンプル
カスタム オペレータ
カスタム オペレータとは
オペレータの登録
カスタム オペレータ ウィザード
接続を作成する
カスタム パラメータの追加
スタティック オペレータとダイナミック オペレータ
Softimage でのオペレータの適用
制限事項
ランタイム オペレータと自己インストール カスタム オペレータ
ヒントとテクニック
カスタム ICENode
カスタム ICENode とは
処理フェーズ
実装の概要
カスタム ICENode の登録
ICENodeDefオブジェクト
登録の例
カスタム ICENode の処理
ポートデータへのアクセス
ポート データのインデックス処理
ポート データの繰り返し適用
マルチポート接続
ポートのポリモーフィズムの処理
ユーザ データ
CustomVector3ToScalarの例
カスタム ICENode のカテゴリ
標準カスタム ICENode
シングルスレッド カスタム ICENode
マルチフェーズ カスタム ICENode
エレメント ジェネレータ カスタム ICENode
シングルスレッド/エレメント ジェネレータ カスタム ICENode
マルチフェーズ/エレメント ジェネレータ カスタム ICENode
カスタムICENodeの適用
カスタム ICENode ウィザード
ポート
カスタム タイプ
オプション
コード
カスタム ICENode のアイコンのカスタマイズ
制限事項
カスタム レンダラ
カスタム レンダラとは
レンダリング エンジンの登録
プロパティの追加
ファイル形式の指定
イメージのレンダリング
アーカイブの書き出し
単一フレーム/複数フレームのアーカイブ
シーンのサブセットのレンダリング
カスタム シェーダ
Softimage カスタム シェーダについて
シェーダ定義のインスタンス化と ProgID
シェーダ定義プラグインを作成する
シェーダ言語パーサ定義を作成する
リアルタイム(ハードウェア)シェーダ プラグインの作成
Preset Manager を設定する
シェーダ ファミリ
シェーダ ファミリの検出
ネイティブ Softimage シェーダ ファミリ
カスタム シェーダ ファミリの作成
シェーダ パラメータ定義
パラメータ データ タイプ
パラメータ定義を追加する
パラメータ定義の UI コントロールを調整する
VBScriptの例: レンダツリーでのポートのグループ化
JScript の例: UI のないパラメータ定義
ShaderDef 属性を設定する
レンダラ情報の提供
Softimage でのシェーダコードの編集
シェーダ定義とパーサの例
mental ray シェーダ ウィザードを使用する
グラフィックシーケンサ
Softimage でのハードウェア ディスプレイの制御について
Softimage グラフィック シーケンサ(XGS)プラグインの作成
ビューポート コールバックのタイプ
カスタム フィルタ
カスタム フィルタとは
フィルタ タイプ
フィルタ コールバック
フィルタの作成
3D オブジェクトフィルタの記述
SubComponent フィルタの記述
プロパティ フィルタの記述
オブジェクト フィルタの記述
コード内でのカスタム フィルタの使用
フィルタの登録
カスタム イベント
イベントとは
対応イベント
イベントの作成
イベントハンドラの登録
イベント コールバック
コンテキスト属性
イベントのミュート
イベントハンドラをプログラムによってインストールする
標準メニューとコンテキストメニュー
メニューでカスタマイズできる内容
ユーザ独自のメニューの作成方法
Softimage でのカスタム メニューの登録
カスタム メニューのパッケージング
カスタムメニューのサンプル
カスタム ディスプレイ ホスト
カスタム ディスプレイ ホストについて
開発環境のセットアップ
カスタム ディスプレイ ホストのコンポーネント
キャラクタ開発キット
キャラクタ開発キットを使用する
二足、ドッグレッグ、および四足からリグへのコマンド アクセス
カスタマイズリグの作成
例: カスタム リグ スクリプトの分析
デフォルト ガイド内のガイド オブジェクトの識別
頭と首
胸部とスパイン
腹部と腰
尾
腕、手、および指
脚と足
スキン
戻り値を使った作業
例: タコリグの作成
CDK オブジェクト リファレンス
二足
Quadruped
Head
Arm
Hand
腹
Spine
胴
尾
Leg
DogLeg
足
Joint
シャドウ
BicepRoll
ForeArmRoll
ControlSpline
PointSlide
ThighSlide
UI
デバイス ドライバ
デバイス ドライバとは
デバイス ドライバの作成
Softimageでのデバイスドライバの登録
デバイス ドライバのパッケージング
デバイス ドライバの例
スプレッドシート クエリ
スプレッドシートクエリとは
クエリ対応の関数の記述
スプレッドシートクエリのインストール
カスタム Fx オペレータ
カスタム Fx オペレータとは
ソース コードの例
UFO の用語
実装
定義
ラスターの入力と出力
ユーザ データ
レンダリング
画面描画と画面インタラクション
メモリ割り当て
Fx オペレータのコンパイル
UFO のインストール
カスタマイズのビルドおよび配布
個人用配備オプション
実行した操作に対する情報の表示
Softimage User Interface Toolkit(XSIUIToolkit)の使用
ウォークスルー: プラグイン マネージャ
プラグイン マネージャを使った作業
プラグイン ツリーを使った作業
プラグインの競合を解決する
UsingWorkgroups
ワークグループの管理
ウォークスルー: アドオンのビルド
アドオン パッケージ
アドオン ディレクトリ
アドオンの記録
アドオンをパッケージングする
アドオン パッケージを編集する
アドオンをインストールおよびアンインストールする
アドオン パッケージの内容
Install Shield を使った Softimage プラグインのインストール
パッケージ ダイアログを使用する
ファイルのインストールなどにおけるコマンド ラインの使用
オブジェクト モデルでのアドオン操作
制限事項
クロスプラットフォームの配備
1 つのライブ ラリファイル(.DLL/SO)に複数のハンドラをバンドル
プラグイン開発
Softimage SDK アーキテクチャについて
Softimage API の構造について
Softimage オブジェクトモデルと C++ API の違いについて
Softimage シーン グラフを使った作業
3D オブジェクトの検索
ツリー内の移動
特別なナビゲーション ツール
フルパスによるエレメントの検索
選択
選択範囲のアクセス
現在選択されている内容の確認
選択されているオブジェクトのリストへのアクセス
オブジェクト モデルを介した選択されたコンポーネントのリストへのアクセス
C++ API を介した選択されたコンポーネントのリストへのアクセス
CRefArray としての選択リストの操作(C++ API の場合のみ)
現在の選択フィルタの取得
選択の操作
単一のアイテムの選択(選択範囲への追加)
項目のリストを選択する
特定のアイテムの選択解除(選択範囲からの削除)
すべての選択の解除(選択範囲のクリア)
階層の操作
パラメータを使った作業
パラメータとは
パラメータ値へのアクセス
コンパウンド パラメータ
プロキシ パラメータ
シーンのロード完了後の値の設定(補助ファイル)
戻り値および出力引数の操作
戻り値の概要
出力引数の概要
各言語でサポートされている出力引数
ISIVTCollectionの概要
関数がすでに値を戻している場合の処理について
戻り値および出力引数の処理の例
VBScript の例: 出力引数と ISIVTCollection
VBScriptの例: メソッドから出力引数を取得する
JScript の例: メソッド「2」の回避策の使用
JScript の例: ISIVTCollection の使用
Python の例: コマンドから戻された ISIVTCollection を使用した作業
Python の例: メソッドから出力引数にアクセスするためにタプルを使用する
例: 出力引数と戻り値のカスタム コマンドによる回避策
オペレータでの作業
オペレータとは
オペレータを適用する
コネクション セットについて
オペレータとその他へのアクセス
モデリング
ジオメトリのデフォーム(コンポーネントの変更)
トポロジの変更(コンポーネントの追加と削除)
クラスタを取得する
テクスチャUVへのアクセス
頂点カラーへのアクセス
ポリゴン アイランドの列挙
ローカルリファレンスフレームの取得
モード値の操作
アニメーション
アニメーション レベル
エクスプレッション
エクスプレッションを作成する
エクスプレッションのアクセス
リンクパラメータ
F カーブ
F カーブの補間と外挿
コンストレイント
シェイプ アニメーション
エンベロープ
ソースとクリップ
DataSource
相対名
Animation Mixer
再生コントロール
PlayControl プロパティ セットのアクセス
現在のフレームを取得および変更する
タイムライン上の移動
目的の方向への再生開始
PlayControl オプションを変更する
フレーム レートおよびフォーマットを制御する
再生中の各フレーム変更におけるコマンド実行
ICE ノード
ICE とは
ポート ポリモーフィズムとデータの整合性
配列ノードのデータへのアクセス
ICE グラフをデバッグする
ICE ノード パーティクル
パーティクル クラウドの作成
シミュレート ICE ツリーのコンポーネントのアクセス
カスタムデータ(ユーザデータ)の格納
ユーザ データとは
バイナリ ユーザ データのオブジェクトにアタッチする
コンポーネント上のバイナリ ユーザ データへのアクセス
コンポーネント上のユーザ データ テンプレートへのアクセス
シーン内のユーザ データの検索
SOFTIMAGE|3D のユーザ データの読み込み
ユーザ設定を使った操作
ファイルとパスを使った作業
外部ファイルの情報の取得
UNC パス
バッチ スクリプトの実行
Softimage の稼動モードを確認する方法(バッチ モードまたはインタラクティブ モード)
バッチ スクリプトに引数を渡す方法
バッチ モードでスクリプトを実行する
リモートでのスクリプト実行
コマンド ウィンドウを自動的に閉じる
リアルタイム メッセージ ログ
スクリプト開発
Softimage スクリプト入門
サポートされるスクリプト言語
Softimage オブジェクトモデルの使い方(初心者向け)
詳細情報の参照先
Python スクリプト
Python を取得して Softimage 定数(enum)を認識する
メソッドからの出力引数の取得
Python クラスをコマンドボタンにリンクする
SoftimageでPython カスタム モジュールを使って操作する
カスタム コマンドからの戻り値として特殊な Python の型を使用する際の制限事項
「Module Has Already Been Processed」というメッセージを取り除く方法は?
Python のショートカット
Script Editor の使用
Script Editor について
スクリプトを編集する
コーディングの簡素化
スクリプト環境のカスタマイズ
コマンドヒストリの使用
ヘルプの取得
スクリプト ファイルを管理する
スクリプトを実行する
シーン エレメントへのアクセス
文字列式
オブジェクト名
コンポーネント
エレメント タイプ
パラメータ
オブジェクト リスト
マーク パラメータ リスト
スクリプト コマンドによる選択
データ型と戻り値
「型」について
言語間でデータ型を比較する
Integer
Long
Float
ダブル
文字列
ブール
Variant
配列
KeyValue
値を返す
戻り値に関する必要な知識
オブジェクトおよびコレクションに関する注意事項
戻り値が有効であるかどうかを確認する
戻り値の型のチェック
Softimage で配列(およびその他のコレクション)を使った作業
ネイティブ配列の使用
GridData オブジェクトの使用
カスタムプロパティセット内での GridData オブジェクトの使用
GridData オブジェクトの一時的な使用
コレクションと配列
コレクションを使用する
コレクションを作成および追加する
コレクションとコレクション項目の削除
グループとコレクションおよび配列
Softimage ネイティブ コマンドによるグループへのアクセス
オブジェク トモデルを使用してグループにアクセスする
特殊なスクリプト関数およびオブジェクト
ActiveX オブジェクトの作成
グローバル(ネイティブ)オブジェクト
他のアプリケーションとの互換性
最適化されたコードの記述
GetValue および SetValue の代わりにオブジェクト モデルを使用する
現在のフレームを変更する代わりに EvaluateAt()を使用する
オブジェクト モデルでグローバル変数を使用する
文字列式とオブジェクト ポインタの間の不要な変換を回避する
スクリプトのデバッグ
Microsoft Script Debugger の使用
PyWin Debugger の使用
エラー メッセージについて
ERROR : 2001-<function_name> - Argument <#> is invalid
ERROR : 2038 - Bad Variable Type
ERROR : 2000 - Argument <#>(<parametername>)is invalid
ERROR : Cannot use parentheses when calling a Sub
ERROR : Expected end of statement
ERROR : Invalid argument specified
ERROR : <enum_name> is not defined
ERROR : <tuple_name> is not defined
ERROR : ’tuple’ object has no attribute
ERROR : Object doesn't support this property or method:
ERROR : Object not a collection
ERROR : Object required
ERROR : (Python)dict can not be converted to a COM VARIANT
ERROR : Syntax error
ERROR : Type mismatch
ERROR : Wrong number of arguments or invalid property assignment
C++ API 開発
C++ API について
C++ プラグインのビルド
C++ プラグインの作成
プラグインのコンパイル
プラグインのデバッグ
プラグインのリビルド
ビルドに関する一般的な問題
環境変数およびビルドフラグ
C++ API を使用したプログラミング
Softimage オブジェクトの参照: CRef
CRef キャスト オペレータについて
Softimage での操作
Variant および SafeArray の使用
UV順序
パラメータパフォーマンスの最適化
C++ からのコマンドの呼び出し
戻り値へのアクセス
出力引数の操作
レガシー プラグイン コールバック
レガシープラグインの移行
C++ API と Softimage オブジェクト モデルの混在
C# 開発
Softimage で C# を使用する
C# プラグインのビルド
C# プラグインの作成
プラグインのコンパイル
プラグインのデバッグ
プラグインのリビルド
ビルドまたはロードに関する一般的な問題
共有ネットワークからプラグインをロードできない
Softimage で .NET プラグインをロードできない
C#を使用したプログラミング
Softimage での操作
C# のデータ型とキャスティングについて
列挙型定数と文字列定数の使用
オブジェクトモデルメンバの呼び出し
C# からのコマンドの呼び出し
C# による Softimage プラグインのビルド
XSICollectionオブジェクトの作成