さて、Texture Set が作れたら、めあてのアイテムに移って Biped Model の横のEdit押して、Alternate Textures の一覧で差し替えてやる。 ボディキャップとかその辺のは部位破壊の時のゴア表現用だから変えなくて良い。 まぁ、プレビューみながらやれるから説明はいらんか。
新しいNifscriptでExportしようとしてみたけど ValueError: Some faces of [Object "Cube"] not assigned to any body part. The una ssigned faces have been selected in the mesh so they can easily be identified. ってエラーが出るな どの頂点にもウェイト設定してあんのに面がアサインされてねーってどういうこった
ポリゴン(メッシュ)に貼り付ける絵を一枚の板にべろんと アジの開き状に展開したのがテクスチャですが、そのテクスチャの 凹凸を擬似的に表現するのが、ノーマルマップです。 で、RBGの各色のチャンネルは R = X軸方向(画面左から右)に光線が走るときに出来る面の明暗(※落とす影じゃないよ) G = Y軸方向(画面上から下)に〜 B = Z軸方向(画面手前から奥に…つまり画面に対して正面から光を当てる)〜
>>188 武器の詳細を見るとアートアンドサウンドタブにImpact Data Set というのがある。 で、Inpact Data set を見ると、当たった相手ごとの処理がリストしてある。 で、各々のImpact Data を見れば、Impact Sound というのがあって、そこで選べるようになっていた。
>>133をGIMPでいじってdds保存しようとしたら DDS: It appears your image may be a volume map, but not all layers are the same type, thus a volume map cannot be written (Perhaps some layers have transparency and others do not?). と、エラーが出て保存できなかった 途中グダグダな編集したせいかな
まあGECKのスクリプト上で使うなら、セルに配置したオブジェクトに付けたReferenceEditorIDを使えばOK セルに配置されてなくて、スクリプト上からplaceatmeとかで配置したヤツの場合は、 配置したときに取得したり、アクターのスクリプトから設定したりする必要がある set Quest.REF to REF1.placeatme ObjectID とか set Quest.REF to GetSelf みたいな感じか
他所のMODのアイテムも取り扱う商人MODの件なのですが、GECKには AddItemToLeveledList という素敵な命令がありました。 例えば、コレをBegin OnTriggerEnterブロックでトリガーエリアにアイテムを ドラッグしたら、それをGetActionRef関数でレベルドアイテムリストに追加する。 ・・・というような使い方が ・・・出 来 ま せ ん。スクリプトが止まります。どうやらオブジェクトID指定のみのようです。 GetActionRefはリファレンスを返すのかな(?) AddFormToFormList という似たような命令もありました。説明によれば This function has been tested to accept any FormIDs, including base objects and dynamically created references. …と、ある。実験しました。通りました。GetActionRefで取得したRef変数を入れても スクリプトは走ってます。
ハナシがそれてしまったが、 accept any FormIDs, including base objects and dynamically created references. と、わざわざ書いてあるのがどうしても気になる。 「ベースオブジェクトと直接的に生成されたリファレンスを含むどのようなFormIDも通った」 と訳すと、こんどは、FormList(?)にリファレンス突っ込めるのか?という反語的な疑問になる。 「FormIDと、ベースオブジェクトと、生成されたリファレンス」の併記だと読むと、 マテマテ、リファレンスを生成するには、オブジェクトIDが要るだろ、と。 なんだろうね、これは。
GetActionREF (トリガーで検出)は、リファレンスを返す。 なので、例えば、 Set Who to GetActionREF If Who.GetGhost == 1 ・・・とやると、なにかおかしな具合になるようだ。(判定自体は正常にやってるようだが) その後、Who.AddItem ○○ 1 これはちゃんと渡ってる たが、Who.SetGhost 0 これが動いてない。(試しにピストル打ち込んだが素通りだ。) スクリプトが停止している様子もない。その後の行でメッセージを打ち出すようにして確認。
GECK本家での記述を見つけた。 http://geck.bethsoft.com/index.php/Declaring_Variables short -2,147,483,648 to 2,147,483,647 float -3.402823×1038 to -1.175494×10−38, 0 and 1.175494×10−38 to 3.402823×1038 (precision of 7 digits) ref A pointer to a reference