def Sun(color=(1.0, 1.0, 1.0), direction=(0.5,-0.5,0.0), ambient=(0.1, 0.1, 0.1)): return ShaderProgram( VertexShader.open('shaders/sun.vert'), FragmentShader.open('shaders/sun.frag'), color = color, direction = direction, ambient = ambient, )
def Sun(color=(1.0, 1.0, 1.0), direction=(0.5, -0.5, 0.0), ambient=(0.1, 0.1, 0.1)): return ShaderProgram( VertexShader.open('shaders/sun.vert'), FragmentShader.open('shaders/sun.frag'), color=color, direction=direction, ambient=ambient, )
def init_program(self): self.near = 0.25 self.far = 3.0 self.fov = 120.0 self.program = ShaderProgram( VertexShader.open(os.path.join(os.path.dirname(__file__) , 'opglex/shaders/simple.vert')), FragmentShader.open(os.path.join(os.path.dirname(__file__), 'opglex/shaders/simple.frag')), offset = [0.0, 0.0, 0.0], perspectiveMatrix = Matrix.perspective(self.width, self.height, self.fov, self.near, self.far) )
def __init__(self, **kwargs): super(Knot_Display, self).__init__(**kwargs) self.program = ShaderProgram( FragmentShader.open('test.frag'), VertexShader.open('test.vert') ) self.numpoints = 100000 self.point_size = (4*4 + 4) # create_buffer(size, target=34962, usage=35048, vbo=True) self.vbos = [] for i in range(2): vbo = pyglet.graphics.vertexbuffer.create_buffer( self.numpoints*self.point_size, GL_ARRAY_BUFFER, GL_STREAM_DRAW ) self.vbos.append(vbo) print len(self.vbos)
def load_lighting(self, name, **kwargs): return ShaderProgram( VertexShader.open(res_open(here('shaders/lighting/default.vert'))), FragmentShader.open(res_open(here('shaders/lighting/%s' % name))), **kwargs )
from gletools.gl import * from util import Mesh, Processor, Kernel, offsets, gl_init from gaussian import Gaussian ### setup ### window = pyglet.window.Window() projection = Projection(0, 0, window.width, window.height, near=18, far=50) texture = Texture(window.width, window.height, GL_RGBA32F) bunny = Mesh('meshes/brain') processor = Processor(texture) ### Shaders and helpers ### depth = ShaderProgram( VertexShader.open('shaders/normal.vert'), FragmentShader.open('shaders/depth.frag'), ) average = ShaderProgram( VertexShader.open('shaders/normal.vert'), FragmentShader.open('shaders/convolution.frag'), kernel_size = 3*3, kernel = UniformArray(float, 1, [ 1, 1, 1, 1, 1, 1, 1, 1, 1, ]), output_factor = 1.0/9.0, input_factor = 1.0, offsets = offsets(-1, 1, window),
framebuffer = Framebuffer() framebuffer.textures = [ Texture(window.width, window.height, filter=GL_LINEAR), Texture(window.width, window.height, filter=GL_LINEAR), Texture(window.width, window.height, filter=GL_LINEAR, unit=GL_TEXTURE1), ] framebuffer.depth = Depthbuffer(window.width, window.height) picture = Texture.open('texture.png') depth_shader = VertexShader(''' varying float depth; void main() { depth = -(gl_ModelViewMatrix * gl_Vertex).z; gl_TexCoord[0] = gl_MultiTexCoord0; gl_Position = ftransform(); gl_FrontColor = gl_Color; } ''') blur = ShaderProgram( depth_shader, FragmentShader.open('shader.frag'), ) blur.vars.width = float(window.width) blur.vars.height = float(window.height) blur.vars.texture = Sampler2D(GL_TEXTURE0) blur.vars.depthmap = Sampler2D(GL_TEXTURE1)