952 :
名前は開発中のものです。:02/03/15 15:46 ID:88FAG1SZ
すみません
既に語られているかもしれませんが
お教えください。
MS.NETを目前とした現在、
Win32APIは今更勉強する価値のないものでしょうか
MS.NETではWin32とは異なったプログラミングを行う
と聞きました。調べれば十分わかるのかもしれませんが
よろしかったらお願いします、。
ム板へどうぞ。
おいおい、もう次スレの季節かよ。
俺たちこの1000カキコの間何やってたんだ?
>>952 MS.NETつかわなければ問題ないやん。
956 :
名前は開発中のものです。:02/03/15 20:35 ID:oaVmmDUZ
いや、ほんとに互換性がナイって言われるんですけど
>>956 何をどうしようとして互換性がないと言われているの?
958 :
名前は開発中のものです。:02/03/16 13:10 ID:tKG1AKPE
>>955,957
いや、そんな低レベルな話じゃなくって
>>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なら動いたりする?
>>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のおかげだろ
>>964 > 結局COMってね、まずVBありきなシステムなのよ。
はつみみです。
968 :
名前は開発中のものです。:02/03/16 16:22 ID:e3Kf3/j6
>>966 COMの再利用性ってのは
例えばIDirect3D8インターフェイスから
QueryInterfaceによってIDirect3D7インターフェイスを取得できる。
こういうことを言うのよ。
各バージョン専用のDLLがあって、各バージョン専用のライブラリファイルをリンクしなきゃならないんなら
別にCOMじゃなくても良い気がするけど。
>>968 > COMの再利用性ってのは
それが違うと思うが。
インターフェースとデータを分離することで、ライブラリ側の内部構造を変えても
(たとえばメンバ変数を増やしても)外からは変更が見えない点が、拡張性には
重要。
> 別にCOMじゃなくても良い気がするけど。
C++ Only で構わないなら、まぁ、そうだよね。インターフェースの変換も、要は
C++ の dynamic_cast の言語非依存な仕組みだし。
ただ C++ で問題になるのは、バイナリ標準が確立していないこと、なんだよね。
つか、DLL = COM じゃないんでしょ?
DLLにしとけば、内部変更できるわけだし
>>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のくだらない部分を意識する事が無くなるので
その点は良いかも。
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。
意味ないじゃん…
百歩譲っても WHTL前提としないコードをWHTL使って動かしたってトラブルの元にしかならん
>>973 > 公開するインターフェイスの定義は変えずに、新たな定義を持ったインターフェイスを
> 追加していく仕様
言いたい事は分からんでもないが、誤解を招きやすい書き方だよなぁ。慌てずに、良く整理
してから書き込んでくれ。
977 :
名前は開発中のものです。:02/03/16 18:50 ID:nuC9fmEM
>>975-976 いや、つまんないツッコミはいいから
反論があるならそれを書き込んでくれ、負けず嫌い君達。w
>>977 俺の書きたいことは 969, 971 で書いた。
それに対して反論が 973 で来てたわけだが、一部、日本語として意味不明
なので確認したわけ。で、どうなの?
>>977 勝ち負けを競ってたのか。
Q 価値って何ですか?
A はつみみです。
>>978 うわ、、お前と話す気失せました。
何?君は俺と罵り合いをしたい訳?
俺はそんなの不毛なんでイヤですわ、他の奴捜してください。
もうちょと大人になりなよ。w
>>979 いやだからさ、「論」を書けよ「論」をさ。
君にそんなレス貰ってもしょうがないのよ。
次スレは?
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。
だからさ〜 出来ないのとやらないのは別だろ…
DX5でサポートしてもいい筈 なんていいだす方が気狂ってるって
>>983 お前さぁ、いい加減にしろよ。
COMのこともDirect3Dのことも全然知らねえのが
バレバレなの。
HWTLやSIMDならコンパネから許可/不許可を選ばせれば
ソフト的には何にも問題ないだろ。
>>980 > 何?君は俺と罵り合いをしたい訳?
いいえ。
> CoClassをバージョンアップさせつつも公開するインターフェイスの定義は
> 変えずに、新たな定義を持ったインターフェイスを追加していく仕様
反論の核はここだと思うんだが、意味が分からんので真意を確認したわけ。
聞いた結果として「なるほど」と思うかもしれないし、お互いの齟齬がはっきり
して「ここを勘違いしてたわけね」となるかもしれないと期待したんだが、ま、
別に面倒なら説明しなくても良いよ。
別に2ちゃんねるの僻地で意思の疎通がうまくいなかくても、俺もキミも、
大して困らんし(w
>>984 市販アプリケーションが、
このアプリケーションを動作させるときにはコントロールパネルから
HWTL を切ってください
とか書くわけ? しかもアプリケーションの発売時には、その設定は
ないわけで、初回出荷時のマニュアルにはかけないよね。
問題アリアリじゃん。
>>985 君がサル並みの知能じゃなきゃ
そんなもん説明しなくてもわかるつ〜の。
もういいよ、やめやめ。
>>986 だからそんなもんアプリ側で関与する必要は無いの。
大体DXのコンパネには、明らかにゲームのパフォを落とす
チェックボックスが存在してるじゃねーか。
チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
つーか、MSがなんて金かけて古いゲームを早く動く様にする必要があるんだ??
ゲームなんかすぐ陳腐化するし、60FPS超えても意味薄いだろ
おまえキーボード叩いてないで病院いった方がいいよ
>>987 うーむ、俺はサル並みの知能なんだろうか。困ったね。
それはともかく次スレ立てておいてくれ。
990 :
http://www.2chan.net/img/img-box/img20020315234838.jpg:02/03/16 19:53 ID:tIwYajuw
>>987 > チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
一般ユーザに、そんな高度なことを期待できません…。
市販ソフトでマニュアルに記述がなくて、かつ標準環境で動かんような
ソフトを出すと、確実にサポートに苦情が来る。問い合わせじゃなくて。
要するにみんな知ったかぶりということで
つーか本当にハッタリくんばっかりなんだな。
まさかここまでとは・・
正直失望しました。>ゲーム制作板
とりあえず沈めるか。
まあそんなゲーム制作板がすきなんだけどな
ユーザーを面白いと思わせるには、ハッタリも大事だよん
で、1000ゲット
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。