delphi - How to draw on a single GLSceneViewer using GLCanvas but not on all viewers? -
i'm using tglcanvas on gldirectopengl1render draw lines this:
uses glcanvas, glrendercontextinfo {...} procedure tform1.gldirectopengl1render(sender: tobject; var rci: trendercontextinfo); var glc: tglcanvas; begin glc:=tglcanvas.create(glsceneviewerl.width, glsceneviewerl.height); glc begin //drawing lines here line(0, 0, 10, 20); line(10, 20, 30, 30); {...} end; glc.free; end; but in current project have more 1 glsceneviewer different cameras , need draw lines on 1 glsceneviewer not on other scene viewers. opengl draw fast speed preffered. ideas?
ok, after playing around glsceneviewer figured out how it: instead of drawing lines on onrender event of gldirectopengl1, should draw lines on postrender event of necessary glsceneviewer, code should that:
procedure tform1.glsceneviewerl(sender: tobject); var glc : tglcanvas; begin glc:=tglcanvas.create(glsceneviewerl.width, glsceneviewerl.height); glc begin //drawing lines here line(0, 0, 10, 20); line(10, 20, 30, 30); {...} end; glc.free; end; that's it, lines drawn exclusively on viewer "glsceneviewerl" name, not viewers of scene.
Comments
Post a Comment