Pantograph


I’ve been remiss in not updating people on the status of Pantograph. The project was put on hold when Blender moved to a new Python API, and I no longer have the time to develop it. I recommend checking out Freestyle, how integrated into the trunk of Blender with 2.67, and Freecad, a very promising solid modeller with good hidden-line rendering.

After reviewing the structure of Freestyle, I’m still left with the belief that Pantograph provides a necessary vector-rendering alternative for Blender. The parts of Freestyle that are missing for me: lack of vector fills, lack of cutting/sectioning tools, and no post-processing/tweaking possibilities.

I’m starting the tenative steps to re-write Pantograph again, with the following priorities:

  1. Good memory management
  2. Stability
  3. Speed
  4. Integration with Blender
  5. Ease of installation

I’m looking at using a mixture of C++ and Python,  and implementing some sort of multi-processing.  Output will be restricted to SVG and PNG: enough good convertors exist that maintaining extra exporters doesn’t make sense.

cheers,

Severn

I’m pleased to announce the formation of my new multidisciplinary design studio, Studio Les Bêtes.   For more information and updates on that enterprise, please visit http://lesbetes.wordpress.com.

This blog will continue to support my software development work – I’ve been on a bit of a hiatus lately, focusing on my design work.  Pantograph is currently on hold until the new Blender 2.5 API stabilizes – after that, I’m still deciding whether to work to support Freestyle as a Blender vector-rendering option or to continue to develop PantographFreestyle shows a lot of promise, has the weight of solid developers behind it, and also is able to create vector (svg) output – the style modules seem to have enough flexibility to add features pretty easily.

cheers,

Severn/rocketship

Clipping is…better.  Here.

Its been an exhausting month – my son was born on October 7, and everything takes longer when you’re trying to bounce a baby with one hand and type with your right hand!

I’m moving to a slightly different system – putting out a pretty stable release and keeping a less-stable bleeding-edge version as well (basically, the version I’m using). YMMV. So, without further ado:

Pantograph 0.5 changeLog (yeah, we’ve got that too)

  • the GUI has been thoroughly replaced by a Blender user-interface.  Its a little spare, but its growing on me and the experience is much smoother running it from Blender.  pyGTK is no longer required.
  • The clipping has been re-written  – with the hopes of dealing with the memory hole for larger meshes.
  • There’s now a “raster fill” option – you can use a rendered version of the scene (a PNG file, to be exact) as a clipped fill – you get sharp linework but also soft shading, textures, shadows.  You could take this into Inkscape and poTrace your way back to resolution independence.
  • There’s now a proper frustum cull – things outside of the camera view are clipped and not rendered.

Known Bugs:

  • The Blender GUI doesn’t yet work properly in Windows – to get changes in buttons to register, you have to raise another window and then go back to Blender.  Works fine in Linux.  Upstream bug?
  • There’s a mysterious, unrepeatable seg fault that happens every once in a while, though I’ve only noticed it in Linux.
  • SWF output is broken.  No, its just not hooked up yet – I’ve been developing on a 64-bit system, and Ming is only 32-bit… if people are clamoring for this, it might happen sooner.

Happy Halloween,

Severn

I have a new full-time job (yay!), which means I haven’t had nearly the same luxury of time to work on Pantograph (boo!).  I have, however, been patiently working through the debugging of Pantograph 0.5 – I’m hoping to have it done by the end of the Summer, if not sooner.

Spurring things on is the discovery that pyGTK doesn’t seem to work with Blender 2.46.  Since 2.46 hasn’t hit the Ubuntu repos yet, I didn’t realize this until people started complaining.  The new version will have a Blender-native GUI, so this should fix the problem.

I’ve also started to look at re-coding parts of it in C or C++.  Very preliminarily – I haven’t written much C since college, and the thought of all those semi-colons makes my head hurt.  At some point it would be great to get help/advice from somebody who has experience cross-compiling between Windows and Linux, or even just somebody who has experience compiling from source in Windows.  I have a copy of MS Visual Studio, though I have to admit I’ve never even installed it.

I’ve been finishing up my studies the past couple of weeks, so not much work has been done on Pantograph. I have, however, been getting to use Pantograph quite a bit, and have some observations:

  • Pantograph is now memory-limited, not cpu-limited. Change is good! The culprit seems to be the Polygon library – my hackish misuse of it is beginning to show, and things aren’t pretty. There don’t seem to be any good clipping libraries out there that do exactly what I need, so I need to write a true 2D geometry core. I’m much more confident in the potential speed of Python, though, so I’m still hoping to match the speed of the 3D geometry functions in the 2D clipping.
  • The program needs a Blender-native UI. After using the GTK UI in KDE for the past few months, and from peoples’ hassles trying to install GTK in Windows, I have decided to not fight it and rebuild the UI using the Blender toolkit. One less dependency is a good thing.
  • Pantograph is still really buggy. Sorry.

I’ve got two weeks in mid-May to sit down and address the bugs and write the 2D clipping code – stay tuned!

Next Page »