From: DeLano, W. <wa...@su...> - 2002-09-18 20:45:57
|
> From: Peter M. Wolanin [mailto:pwo...@Pr...] > One other thing with pymol and 3D stereo: on our system, at least, it > seems as though the on-screen rendering is much faster and smoother in > stero mode than in regular mode. Pymol in its usual mode=20 > seem much slower > than spdbv. Is there something that needs to be set in order=20 > to use the > hardware rendering? This is a defect in all of the nVidia based solutions I've tested, and = one of the reasons I don't recommend nVidia cards for stereographics. = ATI FireGL or Radeon (+XiG) cards work fine as do various cards from = 3DLabs. Since this is clearly an nVidia chipset/driver specific issue, = it is troubling that nVidia doesn't offer an appropriate email address = or forum where we could report these kinds of low-level problems. The same behavior is seen with their chipsets under Windows or Linux as = well and with a few other GLUT-based stereo-capable programs (such as O, = I believe). If you have enabled the card's stereo capability, then when = you create a stereo OpenGL context, you only get good performance when = the program is actually rendering in stereo mode. None of the other = stereo graphics cards in this market seem to suffer this limitation. The workaround for nVidia cards is to run PyMOL in stereo mode at all = times but to zero out the stereo parameters when you are not actually = wearing 3D glasses. You end up drawing two identical images and = everything looks peachy. Here is some Python code which you can run on startup in order to get = better mono performace with stereo-enabled nVidia cards. The F1 key = then becomes the stereo toggle. Save in a ".py" file, such as $HOME/.pymolrc.py # nvidia.py : NVidia stereo/mono performance workaround # (put in your .pymolrc.py file or run this .py program manually) from pymol import cmd def nvidia_stereo(): cmd.stereo("on") # always on if float(cmd.get_setting_tuple("stereo_angle")[1][0])!=3D0.0: cmd.set("stereo_angle",0) cmd.set("stereo_shift",0) print "nVidia stereo off" else: cmd.set("stereo_angle",2.1) cmd.set("stereo_shift",2) print "nVidia stereo on" =20 cmd.set_key("F1",nvidia_stereo) nvidia_stereo()=20 # end of code Hope this helps, Warren cc: PyMOL Mailing List in...@nv... |