수고하십니다.
<!--CodeS-->
TMyForm = class(TForm)
.
.
.
private
myOgl : TMyOgl; //<- OpenGL 용 객체.
.
.
end;
<!--CodeE-->
와 같은 Form 객체가 있습니다.
Form이 생성이 되면 OpenGL이 해당 Form의 핸들을 받아 초기화 하여 Form 전체에 그리게 됩니다.
그리고 Main-Form에서 이 Form을 동적으로 생성하게끔 만들었습니다.
문제는 Form이 여러개가 만들어지면,
마치 myOgl 객체를 서로 공유하는 것 같은 증상이 납니다.
예를 들어 같은 A 그림을 그리는 Form(이하 A-Form)을 2개 생성할때는 이상이 없지만,
둘 중에 한쪽의 Form 사이즈가 변경이 되면 다른 한쪽의 ViewPort도 틀어집니다.
또한 A-Form끼리는 그나마 괜찮지만, B 그림을 그리는 Form(이하 B-Form)을 생성하면
멀쩡하던 A-Form 마져도 화면 출력을 못하더군요.
이렇게 한 프로그램 안에서 서로 다른 OpenGL 객체를 이용해서 그림을 그릴 수는 없는 것인지요.
부탁드립니다.