M
Mark Thompson
Hi,
I have an application I have written in VB.NET. Part of the application
is to display 3D models of buildings and allow the user to zoom and
rotate around them. I have implemented this using the CsGL wrapper
library with OpenGL. When it works, it works very well. I have a
problem though.
On some systems, the 3D view (which is available on a sub-dialog from
the main form shown modally) does not always refresh. By that I mean
that sometimes you can end up with a situation where just whatever is
behind the 3D View control is shown solidly, e.g. word document,
desktop etc. It remains, sometimes for several seconds, sometimes
permanently. I have found that sometimes if you resize the form, or
move something in front of it and then go back to it, that forces the
refresh and then we are OK again. However, sometimes even that will not
work and the only way to resolve is to close down the application and
start it again.
Like I say though, this is only on some systems. On most of the systems
we have tried it on it is absolutely fine. I am concerned though that
some of our users might have problems of this nature, which although
not devastating, are very annoying.
I am double buffering the form and and firing a timer 25 times a second
on the form which calls the necessary refresh on the control. I adapted
the mechanism I am using from one of the NeHe tutorials.
Any ideas would be welcome as to what I might be able to try to improve
the situation. Even advice like, "do not use CsGL, use something else"
would be useful as I know development was ceased in 2003 for this
library.
Also, is it possible that just some graphics cards will always be a bit
dodgy with 3D rendering and there is not much I can do about it?
Thanks in advance,
Mark.
I have an application I have written in VB.NET. Part of the application
is to display 3D models of buildings and allow the user to zoom and
rotate around them. I have implemented this using the CsGL wrapper
library with OpenGL. When it works, it works very well. I have a
problem though.
On some systems, the 3D view (which is available on a sub-dialog from
the main form shown modally) does not always refresh. By that I mean
that sometimes you can end up with a situation where just whatever is
behind the 3D View control is shown solidly, e.g. word document,
desktop etc. It remains, sometimes for several seconds, sometimes
permanently. I have found that sometimes if you resize the form, or
move something in front of it and then go back to it, that forces the
refresh and then we are OK again. However, sometimes even that will not
work and the only way to resolve is to close down the application and
start it again.
Like I say though, this is only on some systems. On most of the systems
we have tried it on it is absolutely fine. I am concerned though that
some of our users might have problems of this nature, which although
not devastating, are very annoying.
I am double buffering the form and and firing a timer 25 times a second
on the form which calls the necessary refresh on the control. I adapted
the mechanism I am using from one of the NeHe tutorials.
Any ideas would be welcome as to what I might be able to try to improve
the situation. Even advice like, "do not use CsGL, use something else"
would be useful as I know development was ceased in 2003 for this
library.
Also, is it possible that just some graphics cards will always be a bit
dodgy with 3D rendering and there is not much I can do about it?
Thanks in advance,
Mark.