3Dmember.image 2004-02-11 - By Lucas Meijer
Back > can anybody else confirm these findings ?
Yes, as far as I can remember, it leaks like there's no tomorrow.
> and more important: is there anything I can do to prevent the VRAM leak, > when grabbing the image or is w3dmember.image.duplicate() just unusable ?? > > I need it very badly, since it seems to be the only way to get my 3D > still image antialiased in a way, that is comparable to viewpoint, which > the client used until now and isn't willing to go below that quality.
What I've done is make the sprite nondts, and copypixels from the stage. That gets you a bit lower quality though, and to enhance it, I make the sprite 4 times as big. Then I carefully place the sprite 4 times, and I make 4 images. one from the topleft, topright, bottomleft, bottomright.
I then stitch them together.
I used this trick to get a highres screenshot that could be printed. You can however also use this, and then copypixels back to a normal size to get antialiasing yourself.
Naturally you can also make 16 pics. Don't try to do it with a stagesized sprite and messing with the camera rotation/field of view. You need to mess with the camera projection matrix to which you just don't have access.. fortunattely the intel guys do exactly what you need if you make the sprite way bigger than the stage.
I think NC might also chime in here, I remember he used the .image and got into trouble with it on a project.. IIRC he also switched to copypixeling from the stage with a nondts 3d sprite.
The biggest downside of this all, is that it doesn't look all that hot to the user. (In my case 4 big pictures flashed by the user). However maybe you can even get by also having a dts 3d sprite on top, which just hides the snapshotting process underneath.
Good luck, Lucas __ ____ ____ ____ ____ ____ ____ ____ ____ ____ Dir3d-l mailing list Dir3d-l@(protected) http://nuttybar.drama.uga.edu/mailman/listinfo/dir3d-l
|
|