鬱だ氏のう DirectX (Part 3)

このエントリーをはてなブックマークに追加
952名前は開発中のものです。:02/03/15 15:46 ID:88FAG1SZ
すみません
既に語られているかもしれませんが
お教えください。

MS.NETを目前とした現在、
Win32APIは今更勉強する価値のないものでしょうか
MS.NETではWin32とは異なったプログラミングを行う
と聞きました。調べれば十分わかるのかもしれませんが
よろしかったらお願いします、。
953名前は開発中のものです。:02/03/15 16:31 ID:???
ム板へどうぞ。
954名前は開発中のものです。:02/03/15 19:06 ID:???
おいおい、もう次スレの季節かよ。
俺たちこの1000カキコの間何やってたんだ?
955名前は開発中のものです。:02/03/15 19:47 ID:???
>>952
MS.NETつかわなければ問題ないやん。
956名前は開発中のものです。:02/03/15 20:35 ID:oaVmmDUZ
いや、ほんとに互換性がナイって言われるんですけど
957名前は開発中のものです。:02/03/15 21:06 ID:???
>>956
何をどうしようとして互換性がないと言われているの?
958名前は開発中のものです。:02/03/16 13:10 ID:tKG1AKPE
>>955,957
いや、そんな低レベルな話じゃなくって
959名前は開発中のものです。:02/03/16 13:18 ID:???
>>952
.NETに移行するにしても、ある時期を境にスパっと切り替わるんじゃなくて、
何年もかけて徐々に移行すると思われ。
両方やらざるをえないでしょ。
960名前は開発中のものです。:02/03/16 13:54 ID:hFa2PiAN
インストールしようとすると互換性がナイって言われるんですけど、
です
961名前は開発中のものです。:02/03/16 14:44 ID:dCR4FV9T
便乗質問ですが、いまから COM の勉強する意味もありますか?
DirectX はこれからも COM ですか?
962名前は開発中のものです。:02/03/16 14:47 ID:iDfRnZYa
DirectXに代わるマルチメディアAPIが.NETに付くかってーと
ちょっと疑問。
DirectXは低レベルレイヤーだからこそ、あの性能と互換性が実現できる訳で
.NETのような高位のレイヤーで同じようなものを作るのは大変だと思う。
仮にMac用の.NETがリリースされたとして、フォースフィードバックなジョイスティックとか
同じようにサポート出来るのかってことだね。
で、結局は妥協案として.NETで動くDirectXを作るって形になると思う。
.NETのくせにWindows専用と本末転倒になりかねないけど。
現在Direct3Dとかって.NETで動かせるの?DXforVBなら動いたりする?
963名前は開発中のものです。:02/03/16 14:53 ID:???
>>962
貴殿、.NET SDKのサンプル見てみたか?
964名前は開発中のものです。:02/03/16 14:57 ID:iDfRnZYa
>>961
俺も過去そう思ってATLとかCOMとか勉強したけど
あんまり意味なかったような気がする・・。
結局COMってね、まずVBありきなシステムなのよ。
C++プログラマからみれば蛇足とも思えるシステムが
VB利用時の為にCOMとして定義して付け加えられてる。
C++でハイパフォーマンスなゲームってカテゴリには、
COMの出番はまったくないと言っていい。
965名前は開発中のものです。:02/03/16 15:02 ID:iDfRnZYa
>>963
DirectShowのサンプル一つで、DirectXの全てだとを語っていいの?
いや、俺はまだ全然未着手なので純粋な質問なのだが。
966 :02/03/16 15:05 ID:???
>>964
馬鹿ハケーン
DirectXがVersion上がっても互換性が保たれるのはCOMのおかげだろ
967名前は開発中のものです。:02/03/16 15:26 ID:???
>>964
> 結局COMってね、まずVBありきなシステムなのよ。
はつみみです。
968名前は開発中のものです。:02/03/16 16:22 ID:e3Kf3/j6
>>966
COMの再利用性ってのは
例えばIDirect3D8インターフェイスから
QueryInterfaceによってIDirect3D7インターフェイスを取得できる。
こういうことを言うのよ。
各バージョン専用のDLLがあって、各バージョン専用のライブラリファイルをリンクしなきゃならないんなら
別にCOMじゃなくても良い気がするけど。
969名前は開発中のものです。:02/03/16 16:41 ID:???
>>968
> COMの再利用性ってのは
それが違うと思うが。

インターフェースとデータを分離することで、ライブラリ側の内部構造を変えても
(たとえばメンバ変数を増やしても)外からは変更が見えない点が、拡張性には
重要。

> 別にCOMじゃなくても良い気がするけど。
C++ Only で構わないなら、まぁ、そうだよね。インターフェースの変換も、要は
C++ の dynamic_cast の言語非依存な仕組みだし。

ただ C++ で問題になるのは、バイナリ標準が確立していないこと、なんだよね。
970名前は開発中のものです。:02/03/16 16:44 ID:???
つか、DLL = COM じゃないんでしょ?

DLLにしとけば、内部変更できるわけだし
971名前は開発中のものです。:02/03/16 16:51 ID:???
>>970
> DLLにしとけば、内部変更できるわけだし
そうでもない。

一番ありがちなのは、C++ でクラスをエクスポートするときに、DLL のバージョンによって
インスタンスのサイズが異なる点。C++ だとプライベート変数を一つ増やしただけでインス
タンスのサイズが変わってしまうので、外部公開インターフェースが同じでも問題になりう
る。(この悪夢は DLL Hell として知られている)

もちろん素の C++ でもブリッジパターンを使って内部実装を隠蔽してしまえば、こういった
問題は避けられるんだが、そのあたりを強制して、名前の修飾規約や例外処理のバイナリ
標準を決めたものが COM。

(それ以外にもモニカやら何やら重要な概念はいくつかあるんだが、DirectX に限って
言えば、あまり関係ないから忘れて良い)
972  :02/03/16 16:55 ID:???
なるほど
973名前は開発中のものです。:02/03/16 17:44 ID:nuC9fmEM
>>969
>>968の再利用性って言葉は誤っていたとは思うけど
>>968の内容が否定されるのは納得がいかん。
COMってのは、貴方の言うようにCoClassをバージョンアップさせつつも
公開するインターフェイスの定義は変えずに、新たな定義を持ったインターフェイスを追加していく仕様だからこそ
互換性が保たれるんじゃん。
つまりDirectXが上記のような正当なCOMの使い方をしていれば、>>968のような
使い方が可能なはずだよ。

>インターフェースとデータを分離することで、ライブラリ側の内部構造を変えても
>(たとえばメンバ変数を増やしても)外からは変更が見えない点が、拡張性には
>重要。
DirectXでコレが実現出来ているなら、Direct3D5でも
SIMDサポートやHWTLサポートが可能になって良いはず。
974名前は開発中のものです。:02/03/16 17:48 ID:nuC9fmEM
まぁ、COMを使っていれば
>>971で言われてるような
DLLのくだらない部分を意識する事が無くなるので
その点は良いかも。
975名前は開発中のものです。:02/03/16 18:13 ID:???
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。

意味ないじゃん…
百歩譲っても WHTL前提としないコードをWHTL使って動かしたってトラブルの元にしかならん


976名前は開発中のものです。:02/03/16 18:19 ID:???
>>973
> 公開するインターフェイスの定義は変えずに、新たな定義を持ったインターフェイスを
> 追加していく仕様
言いたい事は分からんでもないが、誤解を招きやすい書き方だよなぁ。慌てずに、良く整理
してから書き込んでくれ。
977名前は開発中のものです。:02/03/16 18:50 ID:nuC9fmEM
>>975-976
いや、つまんないツッコミはいいから
反論があるならそれを書き込んでくれ、負けず嫌い君達。w
978名前は開発中のものです。:02/03/16 18:58 ID:???
>>977
俺の書きたいことは 969, 971 で書いた。

それに対して反論が 973 で来てたわけだが、一部、日本語として意味不明
なので確認したわけ。で、どうなの?
979名前は開発中のものです。:02/03/16 18:59 ID:???
>>977
勝ち負けを競ってたのか。

Q 価値って何ですか?
A はつみみです。
980名前は開発中のものです。:02/03/16 19:02 ID:???
>>978
うわ、、お前と話す気失せました。
何?君は俺と罵り合いをしたい訳?
俺はそんなの不毛なんでイヤですわ、他の奴捜してください。
もうちょと大人になりなよ。w
981名前は開発中のものです。:02/03/16 19:04 ID:???
>>979
いやだからさ、「論」を書けよ「論」をさ。
君にそんなレス貰ってもしょうがないのよ。
982名前は開発中のものです。:02/03/16 19:12 ID:???
次スレは?
983名前は開発中のものです。:02/03/16 19:18 ID:???
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。

だからさ〜 出来ないのとやらないのは別だろ…
DX5でサポートしてもいい筈 なんていいだす方が気狂ってるって
984名前は開発中のものです。:02/03/16 19:26 ID:???
>>983
お前さぁ、いい加減にしろよ。
COMのこともDirect3Dのことも全然知らねえのが
バレバレなの。
HWTLやSIMDならコンパネから許可/不許可を選ばせれば
ソフト的には何にも問題ないだろ。
985名前は開発中のものです。:02/03/16 19:29 ID:???
>>980
> 何?君は俺と罵り合いをしたい訳?
いいえ。

> CoClassをバージョンアップさせつつも公開するインターフェイスの定義は
> 変えずに、新たな定義を持ったインターフェイスを追加していく仕様
反論の核はここだと思うんだが、意味が分からんので真意を確認したわけ。
聞いた結果として「なるほど」と思うかもしれないし、お互いの齟齬がはっきり
して「ここを勘違いしてたわけね」となるかもしれないと期待したんだが、ま、
別に面倒なら説明しなくても良いよ。

別に2ちゃんねるの僻地で意思の疎通がうまくいなかくても、俺もキミも、
大して困らんし(w
986名前は開発中のものです。:02/03/16 19:30 ID:???
>>984
市販アプリケーションが、

 このアプリケーションを動作させるときにはコントロールパネルから
 HWTL を切ってください

とか書くわけ? しかもアプリケーションの発売時には、その設定は
ないわけで、初回出荷時のマニュアルにはかけないよね。

問題アリアリじゃん。
987名前は開発中のものです。:02/03/16 19:39 ID:???
>>985
君がサル並みの知能じゃなきゃ
そんなもん説明しなくてもわかるつ〜の。
もういいよ、やめやめ。

>>986
だからそんなもんアプリ側で関与する必要は無いの。
大体DXのコンパネには、明らかにゲームのパフォを落とす
チェックボックスが存在してるじゃねーか。
チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
988名前は開発中のものです。:02/03/16 19:45 ID:???
つーか、MSがなんて金かけて古いゲームを早く動く様にする必要があるんだ??
ゲームなんかすぐ陳腐化するし、60FPS超えても意味薄いだろ

おまえキーボード叩いてないで病院いった方がいいよ
989名前は開発中のものです。:02/03/16 19:51 ID:???
>>987
うーむ、俺はサル並みの知能なんだろうか。困ったね。

それはともかく次スレ立てておいてくれ。
990http://www.2chan.net/img/img-box/img20020315234838.jpg:02/03/16 19:53 ID:tIwYajuw
991名前は開発中のものです。:02/03/16 19:56 ID:???
>>987
> チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
一般ユーザに、そんな高度なことを期待できません…。

市販ソフトでマニュアルに記述がなくて、かつ標準環境で動かんような
ソフトを出すと、確実にサポートに苦情が来る。問い合わせじゃなくて。
992名前は開発中のものです。:02/03/16 19:58 ID:???
次スレ
鬱だ氏のう DirectX (Part 4)
http://game.2ch.net/test/read.cgi/gamedev/1016276254/
993名前は開発中のものです。:02/03/16 20:05 ID:???
要するにみんな知ったかぶりということで
994名前は開発中のものです。:02/03/16 20:11 ID:???
つーか本当にハッタリくんばっかりなんだな。
まさかここまでとは・・
正直失望しました。>ゲーム制作板
995名前は開発中のものです。:02/03/16 20:11 ID:???
とりあえず沈めるか。
996名前は開発中のものです。:02/03/16 20:13 ID:???
>>994
おそいな老い
997名前は開発中のものです。:02/03/16 20:15 ID:???
>>994
見切りつけるの遅すぎ(w
998名前は開発中のものです。:02/03/16 20:16 ID:???
まあそんなゲーム制作板がすきなんだけどな
999名前は開発中のものです。:02/03/16 20:21 ID:???
ユーザーを面白いと思わせるには、ハッタリも大事だよん
1000名前は開発中のものです。:02/03/16 20:21 ID:???
で、1000ゲット
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。