• ベストアンサー

この二つの違いは・・・?

ActiveXとDirectXの違いって何なのでしょう? いまいちよく理解できないので教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • HogePiyo
  • ベストアンサー率57% (24/42)
回答No.6

処理とかによりますけど、まあ、同じと言えば同じです。 グラフィックの描画というのは三角形やらの図形とか、ビットマップデータや 3D エンジンでレンダリングする、あるいはオフスクリーンレンダリングされたポリゴンをウィンドウや画面に描きこむ(表示する)ということです。 Form というのが扱ったことがないですからいまいち分からないんですけど、その Form 上に映像データを書き込むことが出来るんなら、リアルタイムにキャプチャしたビデオデータをメモリにバッファして、あるいは直接描き込むこと言う意味で、大差ないと思います。 処理が少し違うだけで。 ビデオキャプチャはやった事がないんで以下は推測で書きます。 1.まず、ウィンドウを用意する。     ↓ 2.描画の準備をする。     ↓ 3.ビデオキャプチャのハードウェアからビデオデータを送ってもらう(取得する)。     ↓ 4.ビデオデータをメモリにバッファしてウィンドウに表示できるデータに変換する。     ↓ 5.データをウィンドウに描きこんでいく。 と言ったところでしょうか? それで、グラフィックの描画は、 1.ウィンドウの用意。     ↓ 2.描画の準備。     ↓ 3.描画データの用意。     ↓ 4.ウィンドウに描きこめるデータに変換。(不要な場合もある)     ↓ 5.描画。 ゲームループとかメッセージの処理とかはとりあえず抜きでグラフィックを扱うとして話を進めていますよ。 見てのとおり3.4.の描画データの処理が違うだけで後は同じでしょ? 最終的にはデータをウィンドウに表示できる形式に変換する必要があるんですよ。 前述したように DirectX はゲームに特化したライブラリです。なのでゲームで普段使うような処理は可能です。 ただ、ビデオキャプチャの処理なら DirectX を使わなくても十分なように思えます。それに、DirectX は先に書きましたけど、最新の DirectX がグラフィックカードに対応していないと変な動作を起こすことがある、DirectX ランタイムのインストールが前提、いろんなマシンでテストしてみなければ動作保証が出来ないなど、結構ややこしいです。 それに比べ動作速度は遅いかもしれませんが、標準の Win32 API を使えばたいていの Windows で動きます。 まずはビデオデータ( MPEG など)を扱う方法を調べてみてください。それから、外部のハードウェアなどからビデオデータを取得する方法を調べてください。 その後、どうしても動作が遅いとかのパフォーマンスが出ないと感じたら、その時は DirectX を使ってみましょう。それからでも遅くないと思いますよ。 Win32 API、マルチメディアとかで Google ( http://www.google.co.jp/ ) 検索してみるのも良いです。 あるいはベクターなどからビデオキャプチャを扱える DLL や OCX なんかのライブラリを探してみるのも良いかもしれません。 http://www.vector.co.jp/vpack/filearea/win/prog/lib/index.html http://www.vector.co.jp/vpack/filearea/win/prog/dll/index.html http://www.vector.co.jp/vpack/filearea/win/prog/ocx/index.html

参考URL:
http://www.microsoft.com/japan/msdn/library/default.asp
noname#47454
質問者

お礼

ご回答、ありがとうございます!!! 大変わかりやすく教えて頂き、感謝、感謝です(*T_T*) DirectShowを使うことばかり頭にあり、それ以外に目がいきませんでした。 初心者ってことですね・・・(恥)まずは、Win32APIの本でも見てみようと思います!!! 本当にありがとうございました。 今後も機会がございましたら、どうぞよろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

  • HogePiyo
  • ベストアンサー率57% (24/42)
回答No.5

DirectX はゲーム用に開発されたライブラリ群のことです。 もともと Windows はビジネスアプリケーションを走らせるための OS として開発されました。なので当然ゲームを開発、あるいはプレイするには向かない環境だったわけです。そんなことからゲーム開発者には Windows が不人気でゲームは MS-DOS を中心に開発、販売されていました。 その状況に対し、Microsoft は WinG という高速なライブラリを開発しましたが、それでもまだ 3D の描画には役不足でした。 そんな経緯から DirectX は生まれました。 DirectX の特徴は高速グラフィック描画、高速サウンド処理、ネットワーク通信まわりの便利な API、入力デバイスの制御、そして 3D ハードウェアのサポートです。 特に 3D ハードウェアを最適に使用する機構が用意されているのでかなり有用なテクノロジーとして扱われています。 ただ、DirectX を入れていないコンピュータでは動かないため移植性が無い、最新の DirectX が自分の機種のハードウェア(グラフィックカード)に対応していないと描画が崩れる、プログラマの組み方次第で下手をすると GDI より遅くなっちゃう可能性があるなどデメリットなどもあるようです。

参考URL:
http://www.microsoft.com/japan/msdn/directx/default.asp
noname#47454
質問者

お礼

>DirectX の特徴は高速グラフィック描画 この、グラフィックの描画とビデオキャプチャでForm上に表示させることは違うのですか? 私は何か勘違いをしているのでしょうか・・・(^^;)

全文を見る
すると、全ての回答が全文表示されます。
  • Khazad
  • ベストアンサー率30% (17/56)
回答No.4

なんかまだ焦点がずれている気もするので…。  ActiveXとは、プログラムやWEBページの機能を拡張するための プラグインの形式だと思えばいいと思います。 (インターネットに関係ない通常のプログラムでも多用されます)  つまり、画像を表示するActiveXや、通信を行うActiveX、 特殊な計算を行うためのActiveXなど、追加したい機能を持ったActiveX を自分のプログラムに追加することでその機能を実現すると言うものです。  DirectXはよくわからないのですが、画像を描画するためのAPI集みたいなものですよね…。 つまり、DirectXの機能を利用して画像を描画するActiveX (市販、自作など)を利用するということはあるわけです。  そのばあい、自分で画像制御を行うわけではなく、細かい制御はACTIVEXで行う (そうじゃないと組み込むいみがないですよね?)ので、プログラムの技術 という意味では「有意義ではない」でしょうね…。

noname#47454
質問者

お礼

ははぁ!!!そういうことだったのですか・・・(^^;) 理解してないのに、理解していたつもりでした。 本当に申し訳なかったです。

全文を見る
すると、全ての回答が全文表示されます。
  • marimo_cx
  • ベストアンサー率25% (873/3452)
回答No.3

> Web上で扱うアプリケーションなら、ActiveXでそうでないならDirectXということでしょうか? 前者は正しいですが後者は正しいとは言えません。 > 現在、デジタルビデオカメラでビデオキャプチャするアプリケーションを作成したいと思っています。 > どっちでも作成することできるでしょうか? > どちらで作成したほうがよいのでしょうか? DirectXを使うと簡単でしょう。 しかしDirectXを使わなくても(当然ActiveXも応用しなくとも)やって出来ないことはありません。 バケツで穴を掘るよりスコップで穴を掘ったほうが有意義であるように、ActiveXを応用したっていいですが、あんまり有意義じゃないでしょうねぇ。

noname#47454
質問者

お礼

DirectXを使わずにできるのですか? 今DirectXについて勉強中なのですが・・・ GraphEditなどの機能もどう使ったらいいのかわかりません。

全文を見る
すると、全ての回答が全文表示されます。
  • ro-su
  • ベストアンサー率24% (19/79)
回答No.2

GlossaryHelpより抜粋 <ActiveX> Internet対応アプリケーションやInternetコンテンツを 開発するための技術を総称したもの。 <DirectX> Windows環境でのグラフィックス描画を高速化するための メカニズムの総称。 つまり、インターネット(通信有り)のコンテンツに特 化した技術を 「ActiveX」 ローカルで、Windowsのグラフィック能力の補助をする 為に作られた技術を 「DirectX」 という事になりますね。 詳しくはGlossaryHelpで。

参考URL:
http://yougo.ascii24.com/gh/
noname#47454
質問者

お礼

Web上で扱うアプリケーションなら、ActiveXでそうでないならDirectXということでしょうか? 現在、デジタルビデオカメラでビデオキャプチャするアプリケーションを作成したいと思っています。 どっちでも作成することできるでしょうか? どちらで作成したほうがよいのでしょうか? すみません、よかっったら教えてください。

全文を見る
すると、全ての回答が全文表示されます。
  • marimo_cx
  • ベストアンサー率25% (873/3452)
回答No.1

名前が似ていますが全く違います。 DirectXはAPIの親戚です。 ActiveXはPlug-Inとほぼ全く同じ原理のものです。

参考URL:
http://yougo.ascii24.com/
noname#47454
質問者

お礼

似てるのに、違うんですね・・・ 回答ありがとうございます(^^) 勉強してみます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ATLとSTLの違いは何でしょうか?

    ATLとSTLの違いは何でしょうか? STLでもリスト構造(線形リスト、[双方向リスト]) #include <list>があるみたいですが・・・ STLはC++の標準テンプレートライブラリ(そのまま)と理解しています。 あと、ActiveXとALTの違いも知りたいです。 極論しますが、ActiveXとはOCXを作ることでしょうか?

  • DirectXとGDIの違い

    DirectXとGDIの違いはどういう風に理解すると 良いでしょうか 動きのなめらかさの違いは昔のBasicとアセンブラ のようなものでしょうか

  • ActiveXとActiveXコントロールの違いを

    ActiveXとActiveXコントロールの違いを教えて下さい

  • バージョンの違い

    勉強のために本を購入しようと考えています。 探していると、目に入った本にVisualC++.NET 2003対応と書かれていました。 そこで思ったのですが、VS.NET2003とそれに相当すると聞くVS2005の違いはどこにあるのですか? DirectX8がDirectX9に変わると8にあったものが9ではなくなっている。ということがあったように、VS.NET2003がVS2005になるとなくなるものがあるのでしょうか? できれば決定的な違いを教えてください。よろしくお願いします。

  • DirectX と ActiveX の違いを!

    こんばんは~♪ 毎回、ネットワークの事で藁をも掴む思いで参ってます^^; 質問の通りだけど、マイクロソフトのウィンドウズ・アップデートしよーと思い、『DirectX9』とか言う項目があったのだけど、もー一個のActiveXと言うのとは違うんですか? 両方とも、X(エックス)と書いてるけど、エッチな物なのですか?(エッチな物が見れるようになる機能とかかな?)

  • vba 「ActiveX」「DirectX」

    vbaで「ActiveX」と言う言葉は良く見かけますが、 「DirectX」ってvbaに関連する用語ですか?

  • directXのバージョンによる違い

    素お人がゲームプログラミグを学ぶためにセガの人が書いたゲームプログラマになる前に~という本を読んで勉強しようと思っています。 この本ではdirectx9が使われているそうなのですが初心者がプログラミングを始めるに当たって最新バージョンの11とどれぐらい違いがあるのでしょうか? directXは使ったことはないですがプログラミングは中級レベルだと思います

  • DirectXのインストールが必要です

    オンラインのゲームをダウンロードしようとすると「ActiveXのインストールが必要です」と言われたのでActiveXをダウンロードすると -------------------------------- インストールの完了 DirectXセットアップによって、新しいバージョンまたは同等バージョンの DirectXが既にインストールされていると判断されました。インストールの必 要はありません。 -------------------------------- と返答が返ってきます 何度しても結果は同じです。 もちろんオンラインのゲームの返事は一番上と同じ答えが返ってきます どうすれば解決できますか? ご回答お待ちしています。

  • DirectXのバージョン

    DirectXのバージョンを変えるとどのような違いがありますか? 新しいバージョン用のDLLや関数を利用したソフトなどを使うためにはDirectXのバージョンは高くなくてはならないということは理解できています。 キセュリティと描画状態について教えてください。

  • VB6.0 ExeとDllの違い

    いつもお世話になっております。 今更ながらなのですがVB6.0について質問させて下さい。 新規でVB6.0を起動すると、「標準Exe」・「ActiveXExe」・「ActiveXDll」・「ActiveXコントロール」等がでてきますよね? 普段アプリを開発する時は「標準Exe」しか使用しないのですが、「ActiveXExe」・「ActiveXDll」・「ActiveXコントロール」の違いは何なのでしょうか?(どういうときに使い分けるのでしょうか?) ActiveXDll・・・ソースコードのみ?参照設定する?(クラスやモジュールと何が違うのでしょうか?) ActiveXコントロール・・・独自のコンポーネント(部品)を作る?(OCXのようなものでしょうか?) ActiveXExe・・・(一番分かりません) どなたかご教示お願いします。

キーボード入力異常
このQ&Aのポイント
  • キーボードで文字入力する際に、異なる文字が入力される現象が発生しています。
  • 問題は特定のキーではなく、普通に入力するときに起こります。
  • 購入当初はこの現象は一切発生せず、頻度的にも比較的多く発生します。
回答を見る

専門家に質問してみよう