On Mon, June 11, 2007 2:05 pm, David wrote: > My previous response indicated that the Lamina demo should work with an > installed Ocemp GUI. Actually, it will not work with the 0.2 version, but > needs the 0.1 version; It needs the dirty-rectangle list from update, to > know when to regenerate the texture. Marcus does maintain both versions. > > > Would an example without a GUI, using regular pygame 2d drawing methods, > be helpful?
Yeah. I tried playing with demo code some more, and still couldn't make it work. The line in the pseudocode declaring "lamina.LaminaPanelSurface( (640,480), (-1,1,2,2) )" should have those two parameters switched, for one thing. Here's what I tried this time, and what happened. The upshot is that I still can't create the Lamina surface at all. I did try installing OcempGUI, but since there's no Windows installer all I've got is its source and a setup script with no instructions on how to install it. How do you use these source packages, anyway? <code> ## Hacked-together Lamina test import lamina ##from pygame import display, key, init, event ##from pygame import time as pytime import pygame from pygame.locals import * import OpenGL.GL as ogl import OpenGL.GLU as oglu pygame.init() screen = lamina.LaminaPanelSurface( (-1,1,2,2), (640,480) ) class GUI: def __init__(self): global screen self.screen = screen def Draw(self): pygame.draw.rect(self.screen,(255,255,255),(100,100,100,100)) return False gui = GUI() # hide mouse cursor pygame.mouse.set_visible(0) done = False while not done: for event in pygame.event.get(): if event.type == KEYDOWN and event.key == K_ESCAPE: done = True # detect changes to surface changed = gui.Draw() if changed: # and mark for update screen.refresh() # draw opengl geometry ..... pass # display gui # opengl code to set modelview matrix for desired gui surface pos screen.display() </code> Result: Traceback (most recent call last): File "C:\Documents and Settings\Owner\Desktop\lamina\lamina_test_k.py", line 14, in ? screen = lamina.LaminaPanelSurface( (-1,1,2,2), (640,480) ) File "..\lamina.py", line 112, in __init__ s.clear() File "..\lamina.py", line 120, in clear s._surfTotal = raw.convert_alpha() error: No video mode has been set