掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
OpenGLでオブジェクトへ描画するには? (ID:27726)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
OpenGLを使ってTImeggeへ描画しようとしていますが、うまくいきません。 TButton(Button1)を押すことで描画が実行されるようにしていますが、 全体が白く初期化されてしまい、描画が実行されていないように見えます。 どこがおかしいか教えていただけませんでしょうか? procedure TForm1.Button1Click(Sender: TObject); var mhrc:hglrc; ipixelformat:integer; pfd:tpixelformatdescriptor; begin with pfd do begin nSize:=sizeof(pfd); nVersion:=1; dwFlags:=PFD_DRAW_TO_WINDOW or PFD_SUPPORT_OPENGL; iPixelType:=PFD_TYPE_RGBA; cColorBits:=32; cRedBits:=0; cRedShift:=0; cGreenBits:=0; cGreenShift:=0; cBlueBits:=0; cBlueShift:=0; cAlphaBits:=0; cAlphaShift:=0; cAccumBits:=0; cAccumRedBits:=0; cAccumGreenBits:=0; cAccumBlueBits:=0; cAccumAlphaBits:=0; cDepthBits:=32; cStencilBits:=0; cAuxBuffers:=0; iLayerType:=PFD_MAIN_PLANE; bReserved:=0; dwLayerMask:=0; dwVisibleMask:=0; dwDamageMask:=0; end; ipixelformat:=choosepixelformat(image1.canvas.handle,@pfd); setpixelformat(image1.canvas.Handle,ipixelformat,@pfd); mhrc:=wglcreatecontext(image1.canvas.handle); wglmakecurrent(image1.canvas.handle,mhrc); glclearcolor(0,0,0,0); glclear(GL_COLOR_BUFFER_BIT); glcolor3f(1,0,0); glbegin(gl_lines); glvertex2f(0.25,0.25); glvertex2f(0.75,0.75); glend(); glflush(); wglmakecurrent(0,0); wgldeletecontext(mhrc); end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.