Example #1
0
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,
    )
Example #2
0
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,
    )
Example #3
0
 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)
     )
Example #4
0
    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
     )
Example #6
0
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),
Example #7
0
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)