pygame is
Simple DirectMedia Layer is
Site Swing
Shader OpenGL Library

Shader OpenGL Library - 3.4.7

Ian Mallett (geometrian)




My first OpenGL Library uses fixed function OpenGL, which is all very well and good, unless you want to do anything complicated. That's where this comes in. It is still in heavy development, but already it has some nice features:

1. .obj file Loading:
     -Efficient and fast optimizations
     -Vertex arrays
     -Automatic texture handling
     -Automatic tangent vector calculation
     -A triangle, cube, and spaceship .obj files included
2. A few built-in primitives
3. 7 prebuilt shaders including:
     -Flat color shading
     -Material shading
     -Texture shading
     -Depth buffer visualizer
     -Blur shader (see 4.)
4. Semi-realtime blur
     -Two pass for speed
     -Linerly seperable box filter
     -Variable kernel sizes
     -Pseudo-gaussian kernal distributions
5. Fully Customizeable Shaders
     -Abstracted, yet fully-featured programmer interface
     -Customizeable variables
     -Customizeable vertex transforms
          -Realtime mesh deformation
     -Customizeable texture coordinate transforms
     -Customizeable rendering equation
          -Parser optimizes
          -Parser adds complicated code when needed only
     -Built-in functions including:
          -Texture mapping
          -Normal mapping
          -Parallax mapping
     -Extendable with user-specified functions
     -Phong (per-pixel) shading model is standard
     -Automatic error logs
     -Integrated support for up to 5 lights on all effects
6. 28 built-in materials including:
     -Metals, such as gold, silver, and copper
     -Gemstones, such as emerald, jade, and ruby
     -Pastics in many colors
     -Rubbers in many colors
7. A demo
8. Reflection/refraction and shadows coming soon!

The whole thing is, of course, free, so long as no one tries to pass this whole thing off as theirs.

No tutorials yet, due to the "beta" nature of this project. The demo, which can be eaily modified to create these screenshots, shows normal mapping and parallax mapping to good effect. See the title bar on top for the controls. The screenshot on the top left is a normal map with a gold material, the top right is the same object with a different normal map and parallax mapping, and the bottom is a cube's face with yet another normal map.

NOTE: there are some known pending issues with this library on some ATI cards. I'm fixing them ASAP. Most NVidia cards should be fine.



Home Page:


click to view original size


Shader OpenGL Library - 3.4.7 - Dec 7, 2008 account Comments

If you wish to leave a comment with your account, please sign in first.

November 11, 2009 1:49pm - Ian Mallett - nickname: (geometrian)
I think because this test used vertex arrays. See the new version, currently, glLib Superbeta.
September 16, 2009 9:03am - Ryan Goodrich - nickname: (rygoody)
the runs reallllyyyy slow for me, like 2 fps

And I have a gtx260. Any idea whats going on here? It says it loaded with no errors.
December 26, 2008 9:22pm - Ian Mallett - nickname: (geometrian)
I hope so :)
Update on development: Shadowmapping is now more-or-less working. There are a few problems with self occlusion, but I'm working on those. I manually implemented shadow2DProj() so that the coder can choose between default = shadowed or default = not shadowed--it's ATI/NVidia independent. Speaking of, I'm still working on compatibility for ATI, and I've made some good progress. Most of you with newish ATI cards shouldn't have a problem when the next release rolls around, though I think some flow-controls might anger earlier cards. Happy holidays everyone!
December 14, 2008 6:36am - Nathan Woodward - nickname: (thedalailama)
It'll be interesting to see what people make with this library. Could be that pygames get a bit prettier.
December 11, 2008 11:23pm - Ian Mallett - nickname: (geometrian)
Message to html code in comments should work too.
Update on development: Parallax occlusion mapping, or POM (as opposed to just parallax mapping) is working. POM eliminates most of the minimal artifacts parallax mapping presents--the surface looks truly 3D. On a somewhat related note, I'm also adding self-shadowing to POM, so now 2D surfaces can have realistic-looking 3D structures and self-shadowing on a 3D surface which doesn't even exist :D ...
December 11, 2008 9:57am - Luca Fabbri - nickname: (keul)
The video is impressive! I will not rate this because I don't use OpenGL right now :-(
I think you must paste this working ling in the project description instead of those stupid solo-plintext comments!
December 10, 2008 1:20am - Ian Mallett - nickname: (geometrian)
<a href="">Here's a movie of a demo.</a> Let's test hyperlinking!
December 7, 2008 9:02pm - Ian Mallett - nickname: (geometrian)
Version 3.4.7 released! (Versions 0, 1, 2, 3, 3.1, 3.2, 3.2.1-3.2.4, 3.3, 3.3.1-3.3.4, 3.4, 3.4.1-3.4.4,, 3.4.5, and 3.4.6 were prerelease work)

our projects welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not.
recent releases
Jan 31, 2017

Jan 24, 2017

Jan 19, 2017

Jan 18, 2017

Jan 7, 2017

Dec 30, 2016

Dec 8, 2016

Nov 28, 2016

Nov 27, 2016

... more!
for pygame related questions, comments, and suggestions, please see help (lists, irc)