Category archives: Snaking

Discussions of programming, particularly of programming Python

RSS feed of Snaking

Display-listing Materials Speeds Rendering

Doing some optimization of the OpenGLContext scenegraph.  Just using display-lists on the material objects takes the material rendering overhead from ~5% of runtime to <1% of runtime.  There's a diminishing set of low-hanging optimizations available at this point.  The wrapper object is obviously a major time-sink.  I took a look at re-writing that in C ...

Continue reading

Finally got SimpleParse updated to use Py_ssize_t

I finally sat down this evening to get SimpleParse updated to use the Py_ssize_t type instead of ints for tracking offsets, lengths and the like.  Was lots and lots of trivial updates, rather than anything particularly difficult... exactly the kind of thing I hate spending time on.

Anyway, don't yet have a Python2.6 compilation setup ...

Continue reading

Quality Time with PyOpenGL

Spent some quality time this evening with PyOpenGL, OpenGLContext and KCacheGrind.  Quite a few tiny improvements in the code-base.  I'm still just picking out little bits of fluff that are "wrong" as they show up in the profiling.  There was ~4% of total run-time on this machine spent in Python's warnings.warn() function because there was ...

Continue reading

Profiling OpenGLContext fun...

Profiling OpenGLContext on a relatively large VRML97 world.  Interesting stats (in OpenGL, ignoring OpenGLContext slow-points):

  • 3% of total runtime is in a function which just does numpyarray.ctypes.data; it seems the ctypes array sub-object is a Python instance that has multiple operations in its initializer and is recreated on each access (with many accesses per array ...

Continue reading

Seems I need to update the video card again

Seems Nvidia has released OpenGL 3.0 drivers for Linux (yay!) but they don't support my GeForce 7600GS (sigh).  I'm thinking maybe I should buy a kick-posterior gaming laptop with an uber-3D chip so I'm not always tied to my workstation at home if I want to do OpenGL 2.0 or above work.

Anyway, tried to ...

Continue reading

Finishing is Good


Finally got my talk proposals in to PyCon.  I went for 3 this time, mostly because each of them seemed like it would be interesting enough to excite people.  I doubt all three will be accepted, but hey, maybe I can do a couple of them in Open Space.  I didn't propose the "graphics and ...

Continue reading

Procrastination is Bad

The deadline for PyCon proposals is fast approaching.  Here's my current thinking for proposals:

  • Graphics Workshop, sub-track (in open-space likely), informal presentations and workshops from the various graphics/game environments, maybe a few demonstrations and panels, hang out with gurus, write new games, produce new visualizations, polish old ones; keep the whole thing informal, maybe have ...

Continue reading

PyGTA Tonight: You got Python in my XML!

How would you merge large quantities of Python-accessible information into a pre-existing set of XML documents.  This approach combined lxml.etree (ElementTree) with Kid templates (based on ElementTree) to efficiently annotate a large tree of documents.  We'll look at how to use ElementTree (and how to use the query mechanism in lxml's implementation to search your ...

Continue reading