Skip to content

Instantly share code, notes, and snippets.

@GRGSIBERIA
Last active January 3, 2016 19:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save GRGSIBERIA/8508621 to your computer and use it in GitHub Desktop.
Save GRGSIBERIA/8508621 to your computer and use it in GitHub Desktop.
PMDから取得した情報をCSVに出力するスクリプト.頂点番号の仕様を修正.
// Run()関数内の処理を記述
// 外部クラスの活用などは一般形式のスクリプトコードを使用してください.
// プラグイン変数は IPERunArgs args を通して取得可能
// コードに自動的に追加されるヘッダ/フッタはメニューから有効化/確認が可能(ヘッダは標準で有効設定)
StreamWriter writer;
var pmd = args.Host.Connector.Pmd.GetCurrentState();
// ****頂点を出力****
writer = new StreamWriter("out_vertices.csv", false, Encoding.GetEncoding("shift_jis"));
foreach(var vtx in vertex) {
var pos = vtx.Position;
writer.WriteLine(pos.X.ToString() + "," + pos.Y.ToString() + "," + pos.Z.ToString());
}
writer.Close();
// ****法線を出力****
writer = new StreamWriter("out_normals.csv", false, Encoding.GetEncoding("shift_jis"));
foreach(var vtx in vertex) {
var pos = vtx.Normal;
writer.WriteLine(pos.X.ToString() + "," + pos.Y.ToString() + "," + pos.Z.ToString());
}
writer.Close();
// ****頂点番号を出力****
writer = new StreamWriter("out_indices.csv", false, Encoding.GetEncoding("shift_jis"));
var face = pmd.Face;
for (int i = 0; i < pmd.Face.Count; i++) {
writer.WriteLine(face[i]);
}
writer.Close();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment