ViewDeferredTexture: add picture to display any texture (no transformation)
shadow: add shadow to spot, reuse AbstractLightShadowRenderer
TODO: complete and clean, then optimize
failed to enable flybycam + visible cursor
Sample02: use impulse