- DXライブラリ 総合スレッド その15
903 :名前は開発中のものです。[sage]:2013/06/18(火) 12:44:29.20 ID:KdyJ8IJw - >>902
今出先だから確実なことは言えないけど 昔、DrawPolygonIndexed3DToShader一回の呼び出しで1パーティクルの描画 なんて恥ずかしい実装をしてたことがあって、その時でも6000パーティクルぐらいは60fps維持できたから たかだか10回程度の呼び出しならほとんど関数自体の負荷はないと思う あ、上で書き忘れてるけど10万パーティクルなら全部代入して30fps程度、カラーをコメントアウトして40〜45fps程度だった >>901 軽くググったけどそれっぽいのが見当たらない……
|
- DXライブラリ 総合スレッド その15
904 :名前は開発中のものです。[sage]:2013/06/18(火) 12:50:45.60 ID:KdyJ8IJw - ああ、訂正。
DrawPolygonIndexed3DToShaderで毎パーティクル呼び出しのときは2000〜3000パーティクルが限界だったわ DrawPolygonIndexed3Dのときに6000パーティクルぐらいだった 今は運動とか展開の計算含めて大体3万〜4万ぐらい描画できるようにはなったんだけどね 最適化したとしてどこまで増やせるかと思って運動とか切ってfps低下の原因を探してたら代入が他より圧倒的に重かったみたいで
|
- DXライブラリ 総合スレッド その15
910 :名前は開発中のものです。[sage]:2013/06/18(火) 19:04:47.31 ID:KdyJ8IJw - XNAってまた別のライブラリのことだったのか
なんかデータに属性でも設定できるのかしらんが特有の書き方がわからんな えーとこれは従来の頂点バッファ6つの値を毎回計算して2つのポリゴンを描画するんじゃなくて 基準になる頂点バッファ6つの値を一度だけ渡したら後は各インスタンスごとに変換行列で差を与えるってこと? これの変換行列ってどこから求めるんだ?SetDataを呼び出してとか言われてもな これはGPUが圧倒的に行列演算速いからGPU依存にして速度を稼いでんのかな 余計に重たくなりそうに見えるけど あと誤解のないように言っとくけど いつかは3Dモデルのパーティクルにも手を出したくなるかもしれんが 今のところ2ポリゴンの四角いビルボード使ったパーティクルしか扱ってないんだけどそれでもこれって効果あるのかな >>907 ん、これは何回も呼び出して60fps切るときの回数をテストすればいいのかな 2000回は呼び出しても60fpsを切らないってだけじゃダメ? 家の回線は規制されてるから返事は明日になるけど
|
- DXライブラリ 総合スレッド その15
912 :名前は開発中のものです。[sage]:2013/06/18(火) 19:20:48.06 ID:KdyJ8IJw - >>911
ならなおさら>>903の毎フレーム、1パーティクルごとに描画命令で2000回っていうデータが役に立つんじゃない?
|