【激論】最適化厨vs高スペックヲタ
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/07/06 16:18ID:???プログラミングの醍醐味ってもんよ」
「効率の良いアルゴリズムの完成こそがプログラマの腕の見せ所だ。」
「同じ最適化でも、最新のアーキテクチャのハードの能力を
引き出す方がよっぽどカッコイイです。」
「いまどきシューティングPentium133MHz推奨とか書かれても
誰がそんなのでわざわざプレイするかって気もするしな。」
延々続く平行線、ルール無用のトークバトル、
煽りに罵倒に嘘八百、これぞ2ちゃんの本筋だ。
ひまぢんども集まれ!
0002名前は開発中のものです。
02/07/06 16:22ID:oULG4fSg0003名前は開発中のものです。
02/07/06 16:22ID:???0004名前は開発中のものです。
02/07/06 16:22ID:???なんでよりによってこの板で始めるんだよ。
プログラミング板でやれと言ったろうに。
0005名前は開発中のものです。
02/07/06 16:25ID:???/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
/ このスレは無事に /
/ 終了いたしました /
/ ありがとうございました /
/ /
/ モララーより /
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
∧_∧ / /∧_∧
( ・∀・) / /(・∀・ )
( )つ ⊂( )
| | | | | |
(__)_) (_(__)
0006名前は開発中のものです。
02/07/06 16:25ID:???0007名前は開発中のものです。
02/07/06 16:27ID:???片方を切り捨てることは不可能なの!
0008名前は開発中のものです。
02/07/06 16:27ID:???つーのはダメですか?
半OO厨みたいなもんか。
0009名前は開発中のものです。
02/07/06 16:32ID:???確かに。
古いゲームのクローンを試しに作ったら、えらく重かった。
0010名前は開発中のものです。
02/07/06 16:52ID:???あんまし高スペック要求したくないんよ。
ギリギリのスペックだと、動作が安定しないんで。
その意味では、ゲーム中にフリーズしたり、
OSに蹴られたりするよりは、
きっちりと最適化した方が良いかと思われ。
ってのは方便で、実のところは自己満足だったりする(w
16msかかる作業が2ms未満で終わった日にゃ・・・
まあ、11msを10msにするような最適化は、あんまやらんケド。
0011名前は開発中のものです。
02/07/06 17:01ID:o0.NjvZs0012名前は開発中のものです。
02/07/06 17:10ID:MBE37VsAコンシューマ系の俺がD3Dで組んでみたら、まさにそうなったよ。
で、とりあえず、動くようにしたら
SoftwereVertexで0.1FPS前後
PureHALで200FPS前後
でした。
>>10
俺は逆の意味での自己満足。
最新の3Dアーキテクチャで秒間500マンポリゴン以上出る
エンジン組めたとか。
動作環境とかどうでもいい。
0013名前は開発中のものです。
02/07/06 17:45ID:???0014名前は開発中のものです。
02/07/06 17:48ID:???0015名前は開発中のものです。
02/07/06 17:58ID:???○低レベルなやつら
0016名前は開発中のものです。
02/07/06 18:00ID:???0017名前は開発中のものです。
02/07/06 18:18ID:???0018名前は開発中のものです。
02/07/06 18:30ID:???躊躇が出る。別に最適化派じゃないんだけどね。
0019名前は開発中のものです。
02/07/06 19:54ID:???信じられないぐらいに処理が速くなるね。
昔話だが、30分ぐらいの処理が、
0.1秒ぐらいに縮まった時は嬉しかったな。
0020名前は開発中のものです。
02/07/06 20:05ID:???たとえばsum(1..n)をn*(n+1)/2にしたとかそういうのでなければ
そこまで差が出ることは無いと断言しても良いが。
勿論、故意に無駄な探索を行った場合を除いて。
0021名前は開発中のものです。
02/07/06 20:17ID:ExrAVi6oそのまさかだったりする(w
八方向移動で、障害物を避けながら
目的地までの最短移動経路を調べる処理。
ちなみに、斜め移動と縦横移動では、
移動速度を変えてあった。
0022名前は開発中のものです。
02/07/06 20:30ID:???しかし、どちらもそこそこできるようになっていないと実務では使えないヤシだと思う。
0023名前は開発中のものです。
02/07/06 20:41ID:???ハードヲタっていうか、単なるPCヲタな気が。
0024名前は開発中のものです。
02/07/06 20:59ID:???後者は前者の芸当は出来ないことが多い。
0025名前は開発中のものです。
02/07/06 21:04ID:???(少なくとも日本において)それはない。
日本中でいったいいくつのMMXαブレンドルーチンが再発名されてきたか。
結局前者は時代遅れの落ちこぼれ組が自己のアイデンティティを保つためにやってるだけ。
後者は一定以上古いハードに対応するのは不毛だと割り切って考えているだけ。
0026名前は開発中のものです。
02/07/06 21:12ID:o0.NjvZsあー、車輪の再発明と分かっててもやったほうがいいことはたくさんあるぞ。
MMXαブレンドがそうかは知らんが。
0027名前は開発中のものです。
02/07/06 22:31ID:???bsearchとqsortぐらいは、
使えた方が良いぞ。
0028名前は開発中のものです。
02/07/06 23:17ID:???CPU:DEC Alpha21264 1024MHz * 64SMP
Memory: PB-SRAM 64GB
VGA:3DLab WildCat2
0029名前は開発中のものです。
02/07/06 23:41ID:???…と釣られてみる
0030名前は開発中のものです。
02/07/07 00:11ID:???ライブラリばっかいぢくっててなかなか本体が進行しない・・。
0031名前は開発中のものです。
02/07/07 02:32ID:???いまだにえろげとネットしかしないから、数年前のCeleron300Aを
450にクロックアップさせて使ってる知り合いが何人かいるからその辺かな?
…さすがに266は勘弁。
0032名前は開発中のものです。
02/07/07 04:51ID:???PS2Linux厨とか?
しょぼい板ポリゴン数枚出して喜んでそう。
0033名前は開発中のものです。
02/07/07 05:04ID:???>しょぼい板ポリゴン数枚出して喜んでそう。
おいおい、どこの誰だか知らんが、いくら2chでもそーいう言い方ないだろ。
0034名前は開発中のものです。
02/07/07 05:41ID:???http://game.2ch.net/test/read.cgi/gamedev/1022455724/l50
廃れてるけどね
0035名前は開発中のものです。
02/07/07 07:58ID:???>SoftwereVertexで0.1FPS前後
>PureHALで200FPS前後
ちょい待ち。確認するが、その表現は
頂点処理におけるハードウェア支援の有無のみで1000倍近いパフォーマンス差を
生じさせることが出来た、と解釈されるのが自然なわけだが・・・・この解釈で良いのか。
仮に良いとするなら、その比較にはいささか不自然な点があるのではと推測する。
1000倍の差が生じた、というのは・・・・
(1) ラスタライズ段におけるハードウェア支援の有無も入った上での
差ではないのか。つまり前者はReference Rasterizerを使ってるのではないか。
あるいは
(2)特殊な条件下での比較を行なっているのではないか。
つまりPureHAL使用時に頂点キャッシュによる利得を
最大限に得られるよう調整された特殊なシーンを用いた比較ではないか。
おおまかに分けて以上2つのような疑問が沸いてくるのだが、実際のとこは
どうだったのだろうか?
0036名前は開発中のものです。
02/07/07 07:59ID:???○ 2000倍
0037名前は開発中のものです。
02/07/07 09:10ID:???ゲーム作ってるのに本末転倒な奴多すぎ。
最適化はゲームが動いて、速度的な不満が出たらやればいい。
ゲームが出来てないのに最適化と騒ぐ厨房は本職にも多い罠。
スレタイのVSに意味は無い。双方回線切って首吊れ。
この回答が不満なら板違いと言うことに気づけ。
0038名前は開発中のものです。
02/07/07 09:17ID:???0039名前は開発中のものです。
02/07/07 09:21ID:???0040名前は開発中のものです。
02/07/07 10:41ID:???ちょっとコードいじっただけで2000倍は無理。
0041名前は開発中のものです。
02/07/07 11:30ID:dd1tNm3g最適化が大好きって言うのは技術に視点が向いてる人。技術で遊べれば別にゲームじゃなくてもいい。
それぞれ役割が違うんだから、議論したってしょうがない。
それから、どっちつかずの立場にたつよりは、自分がどちらの立場なのかをしっかり把握して邁進したほうがいいぞ。
0042名前は開発中のものです。
02/07/07 11:59ID:???0043名前は開発中のものです。
02/07/07 12:10ID:OtnCmOL6誰か実情教えて。
0044名前は開発中のものです。
02/07/07 14:01ID:nT2f1lEs現状のPS2の並レベルで満足してます。
プログラマとして歯がゆいが、
「面白ければいい」で却下されちまう。
0045名前は開発中のものです。
02/07/07 14:08ID:???技術で遊べればゲームじゃなくてもいい人ってのは大多数がそうだが、
ゲームが作れれば技術なんて興味ない人ってのはごく少数のオッサン。
技術に興味を持ち磨いていかないとゲームは作っていけない。
だから、2D時代の栄光にすがるオッサンはドロップアウトして淘汰される。
要は、バランスよく配分できる人でないとゲーム製作に向いてないってこった。
最適化厨も高スペックヲタも回線切って首吊れってこった。
0046名前は開発中のものです。
02/07/07 15:08ID:???0047名前は開発中のものです。
02/07/07 16:57ID:???0048名前は開発中のものです。
02/07/07 17:14ID:???0049名前は開発中のものです。
02/07/07 21:03ID:0/ctS9xY置いただけで0.1FPSから一気に200FPSに跳ね上がるというのは常軌を
逸している。アンフェアな比較を行なっているんじゃないかと思う。
>>12がプロを自称してるようなので、そんなことはないと信じたいが。
0050名前は開発中のものです。
02/07/07 21:23ID:???まぁ>>12が行なったのはそれだけじゃなくて、例えば
CPU&GPUによる並列処理の効率を極限まで高めてるとは思う。
ただ、それでも2000倍のパフォーマンス向上は不可能というのは
バカでも分かるわけで・・・。
0.1FPSのほうの測定結果がStrip&Fan化を行なってないと仮定しても
好条件化でもそこまで差は開かない。
正直、>>12は嘘を付いてる?
0051名前は開発中のものです。
02/07/07 21:25ID:???005250(補足)
02/07/07 21:30ID:???多分、リファレンスラスタライザを使ってたんじゃないの。
0053名前は開発中のものです。
02/07/07 21:36ID:???もしそうだとしたら、>>12の言ってる
コレ↓
>SoftwereVertexで0.1FPS前後
>PureHALで200FPS前後
ってほとんど詐欺だよな・・・。
0054名前は開発中のものです。
02/07/07 21:54ID:???でもよ、普通にセルシェーダとか使ってる分にはソフトエミュで
やってもそれほど重くならないんだよな。
無理にクソ重たいシェーダを組んでも、ステップ数の制限
とかのせいで、差が開くったって限度あるし。
0055名前は開発中のものです。
02/07/07 22:03ID:???それほどパフォーマンスを悪化させないはずだが。
0056名前は開発中のものです。
02/07/07 22:22ID:5O9.zvkY>VertexShaderのエミュレートは
>それほどパフォーマンスを悪化させないはずだが。
え、>>54はそう言ってるんじゃないの?
005712
02/07/07 22:47ID:WK.87hwQ>生じさせることが出来た、と解釈されるのが自然なわけだが・・・・この解釈で良いのか。
紛らわしかったようです。スマン。
いいえ。REFドライバになります。
>>12でサクッと組んだもの(てか現在も)PureHALにしか対応してません。
PCのプロではないので。
(>>12でも、とりあえず、動かせるようにした。と書いたとおり。
最初、VertexShader未対応のボードでは起動すらしなかった。)
005812
02/07/07 22:47ID:WK.87hwQ0059名前は開発中のものです。
02/07/07 22:54ID:???HAL without H/W VertexProcessingもフラグだけで簡単に設定できるじゃん
006035
02/07/07 23:17ID:???IDirect3D8::CreateDevice() にて
BehaviorFlags に 「D3DCREATE_SOFTWARE_VERTEXPROCESSING」を指定すれば
頂点処理は強制的にCPUで行なわせることができる。
http://www.microsoft.com/japan/developer/library/jpdx8_c/_dx_idirect3d8_createdevice_graphics.htm
ソフトウェア頂点処理の場合
IDirect3DDevice8::CreateVertexShader() にて
Usage に 「D3DUSAGE_SOFTWAREPROCESSING 」 を指定すれば
Vertex Shaderはエミュレーションで行なわせることができる。(※明示的に指定する必要アリ)
http://www.microsoft.com/japan/developer/library/jpdx8_c/_dx_idirect3ddevice8_createvertexshader_graphics.htm
以上の2つの点に気を付ければ、 Hardware Vertex Shafer 未対応のカードでも
Vertex Shaderプログラムはちゃんと動くアル。
■ このスレッドは過去ログ倉庫に格納されています