Category archives: Snaking
Discussions of programming, particularly of programming Python
How quickly one forgets (Basic algebra and geometry...)
Written by
on
in
Snaking.
Spent the rest of the evening working on tessellation code, but never did get around to fixing the problem with the Jelle-project tessellation. Instead I realised that I had no test cases for a "combining" tessellation. To understand what that is, consider this shape...
When we render this shape, we want it to look something ...
!-->!-->
Clockwise versus counter-clockwise geometry strikes again (Shadow code is sensitive to the problem as well...)
Written by
on
in
Snaking.
Sat down to figure out why the shadow-rendering context in OpenGLContext has such problems with the tessellations of Jelle's project. First thing I wound up doing was backing out earlier changes to try to get the VBO extension working, then had to back-port the Python 2.3 PyInt_AsUnsignedLongMask function so that the typemaps for long integers ...
OpenGL just seems so messy (Providing "natural" semantics for a low-level API...)
Written by
on
in
Snaking.
Was just reading through the GLEWpy source-code for the ARB vertex-buffer-object extension. It's basically about the same level as the auto-generated SWIG, or ctypes interfaces. It should work fine, but it doesn't feel natural. Brian's interface looks a lot more natural to me, but it's also a lot more code.
I just have this nagging ...!-->!-->
It would be so much easier if I had hardware with these extensions... (Oh well, gives me an excuse ;) )
Written by
on
in
Snaking.
Spent a few hours reviewing and trying to integrate Brian's Vertex Buffer Object extension patch. It was made against the 2.0.1 release (my fault, I've been slow getting to it), so there was a bit of migration work to do. Problem is, the migration to SWIG 1.2.23 seems to have changed how the new vertex-pointer ...
No way to generate patches (SourceForge's anonymous CVS for "p" projects is down...)
Written by
on
in
Snaking.
Not a huge amount of PySNMP speedup for the day, wound up doing quite a lot of whole-application profiling, but hours of that only represents a few runs in total (it takes a long time to load 100MB of profile data in wxProfile). Discovered that, in the demo code, almost 33% of running time is ...
It may be worth it to rewrite wxProfile... (Well, actually wxProfile2, as that's what does hotshot loads)
Written by
on
in
Snaking.
It takes my (moderately beefy) machine 3 or 4 minutes to load a profile for a small HotShot profile run (e.g. the TwistedSNMP test suite). Although I try to do useful work while it's loading, a lot of the time is just wasted reading email, or news, or what have you.
It might be worthwhile ...!-->!-->
Optimising and re-optimising (Deja-vu for PySNMP hacking...)
Written by
on
in
Snaking.
Spent the whole day staring and poking at PySNMP. I think I see a way to speed the system up to something reasonable...
The basic problem is that any given final class, be it a simple integer holder or a full SNMP get message, is composed of about 20 mix-in and base classes, all of ...!-->!-->
A day on tickets and a night on Numpy (Need food though...)
Written by
on
in
Snaking.
Few more bug-fixes and enhancements to Cinemon today. Nothing stunning, a few new OIDs added to the collection, an annoying bug in the email-limiting code fixed, that kind of thing.
Spent the evening looking at Jelle's genetic algorithm code and then rewriting it using Numpy so it would both be easier to follow and more ...!-->!-->
Explanation of sorts for why conversion of Jelle's project didn't work (Tessellation was producing counter-clock-wise geometry...)
Written by
on
in
Snaking.
I converted Jelle's project to run in OpenGLContext, but when I did so, the rendering went all to heck, seemingly randomly losing triangular faces. Turns out it wasn't random, it was an artefact of the GLU tessellator wherein it was generating polygons which were in reverse order vertex-wise to those passed in as "solid".
Haven't ...!-->!-->
Think that's it for the week (Use up some of this week's overtime to get a jump on OpenGLContext etc.)
Written by
on
in
Snaking.
Was up at some ungodly hour this morning (though I steadfastly refused to answer the phone for whatever nut-case phoned me at 9 in the morning), so I think I'll use up an hour of this week's overtime (I have 7 hours extra just this week, which isn't a huge amount, but when you're not ...