bytes = list(bytes)
value = 0
shift = 0
byteval = ord(bytes.pop(0))
if(byteval & 128) == 0: break
value |= ((byteval & 0x7F) << shift)
shift += 7
return (value | (byteval << shift))
temp = value
bytes = ""
while temp >= 128:
bytes += chr(0x000000FF & (temp | 0x80))
temp >>= 7
bytes += chr(temp)
x = encode7bit(345)
Wednesday, April 27, 2011
7 Bit Integer compression, in Python.
I've just seen and used a brilliant ssh option. The command: sudo ssh -D localport user@externalhost will set up a local SOCKS proxy l...
So, you've created a car prefab using WheelCollider components, and now you can apply a motorTorque to make the whole thing move along. ...
import csv open("output.tsv", "w").write("\n".join("\t".join(e.strip() for e in i) for i in csv.rea...
I made something which lets you render very large worlds with a small farClipPlane. https://github.com/simonwittber/scaled-origin The d...
When you start working with threads in your Unity3D project, you will discover that many things need to be done in the main loop. For exampl...
Just 514 lines of code. Uses sockets only, no other dependencies. https://github.com/simonwittber/uniwebserver Example Component: [Req...
These are the robots I've been working on for the last 12 months. They each weigh about 11 tonnes and have a 17 meter reach. The contr...
Thank to Adrian Boeing I was inspired this morning to hack together a ripple shader for Unity3D. Thanks for the math Adrian. You can see t...
Working with multiple threads is often a necessary evil. This is how I do it safely inside a Unity3D component. There are only certain time...
Possibly slightly more correct lighting. The rim light is now only applied in the direction of the sun, rather than being purely based on v...