def region(self, rect, renderLink='after'): # Note that we use Viewport.region(), since PygameViewport.region() # bothers with creating a subsurface, which we don't need. sub = Viewport.region(self, rect, renderLink) # Disable the root viewport's frame setup and finishing code, # but leave configureOpenGL running in each viewport. sub.onSetupFrame.replace(sub.configureOpenGL) sub.onFinishFrame.empty() return sub
def region(self, *args, **kw): """Return a class that represents a rectangular subsection of this viewport. In addition to what Viewport.region() does, this sets our screen to be a subsurface of the original screen. """ sub = Viewport.region(*args, **kw) sub.screen = self.secreen.subsurface(sub.rect) # Disable flipping the surface in our subviewport sub.onFinishFrame.empty() return sub