Tuesday, January 24, 2012

Pyppet - WebGL Streaming

Check out Three.js on github and get ready to be blown away, so much power in 380KB.

Websockets Streaming Mesh - WebGL Client

Websockify by Joel Martin has got everything you need to get websockets going in Python3.

Supported Streaming Modifiers

  • Cast,
  • Curve,
  • Displace,
  • Hook,
  • Lattice,
  • MeshDeform,
  • ShrinkWrap,
  • SimpleDeform,
  • Smooth,
  • Warp,
  • Wave

Streaming the default blender monkey head (500 vertices) to the web-client creates a load of about 350KB per-second. This is still using ASCII Json for transport, so hopefully in the future a binary stream or other packing method could cut this down even more.


  1. The more recent versions of Unity3D have the Web Player export function also export a NaCl edition. NaCl Unity works perfectly on Linux.

  2. Very cool! Imagine if we could also stream back key and mouse events from the client to Blender; We would have Blender-via-the-web!

  3. Google protocol buffers may reduce the data size somewhat, but could add an overhead to encode / decode. Really amazing work so far :)

  4. This is awesome! Is the source code posted anywhere?

    1. @Lindsay, right here bro.

  5. Hi,

    Could you tell me more about overload start_server method ?

    I have problems before with python GIL, and use diferent solution based on pipes and external python process...

  6. The streaming possibility has been also added to Blend4Web recently.



  7. Seriously i loveNFLHQNETWORK. COMchannels .Its a great experience. No matter how much you deliver we will be craving more..that's great 👍🏻..looking forward to more and more and more movie channels Thank you .