自作のソフトの描画が、パソコンによってうまく表示できるものと、表示できないものがあり、原因がつきとめられなくて困っています。

自作のソフトは、
Visual C++ 2008 Express Editionを使用して
フォームアプリケーションを作成しております。
現在、System::Windows::Formクラス上に配置したPictureBoxクラスに、

glBegin(GL_LINES);
glLineWidth(2.0);
glVertex3f(x1,y1, 0.0f);
glVertex3f(x2,y2, 0.0f);
glEnd();

のような形で描画をしています。
この描画部分がうまく表示されるパソコンと、プログラムは正常に動いているが何も表示されないパソコンがあります(いずれもWindowsXP Pro、メモリー、ディスクともスペック的に問題なしと思われる。現状の成績は3勝3敗)。
グラフィックボードかなにかの問題でしょうか?
新しいパソコンを購入したいのですが、うまく描画ができる保証がないのが不安です。
情報不足で判断が難しいかもしれませんが、原因と対応策について、教えていただければありがたいです。

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2009/02/08 21:51:25
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:thrillseeker No.1

回答回数328ベストアンサー獲得回数37

ポイント30pt

gl系の関数による描画には OpenGL という規格に

対応したビデオカードが必要です。

http://support.microsoft.com/kb/285912/ja

http://www.kameda-lab.org/lecture/2004-tsukuba-kj2/week1/OpenGL-...


OpenGL 対応の確認方法:

http://www.forest.impress.co.jp/article/2004/07/26/openglextview...

id:miniminmin

回答ありがとうございます。早速調べてみます。

ドライバのバージョンアップなどを試してみます。

2009/02/05 22:31:32
id:pahoo No.2

回答回数5960ベストアンサー獲得回数633

ポイント30pt

OpenGLの初期化処理はきちんと書かれていますか? ご確認下さい。

OpenGL初期化glBegin()までのデフォルトコード」が参考になると思います。

id:miniminmin

回答ありがとうございます。

きちんとかどうかは自信はありませんが、glBeginとglEndなどの

コードはかいてあります。

参考のページともう少し見比べてみます。

2009/02/05 22:33:47
id:hijk05 No.3

回答回数1307ベストアンサー獲得回数23

ポイント26pt

PictureBoxを再描画(リフレッシュ)するコードを書き足してみてください。

id:miniminmin

回答ありがとうございます。

再描画のコードについて補足いただけないでしょうか?

現在のコードでは、

glFlush();

tpot::CGl *pGL = (tpot::CGl*)_pGL;

pGL->EndRender();

のようなコードを最後においています。

これに何かをつけたせばいいのでしょうか

2009/02/05 22:38:34

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません