Current camera matrix. Transforms from world space (normal 3D space) to camera space (camera space is the space where you're always standing on zero point, looking in -Z, and so on).
This is needed for various things, like TextureCoordinateGenerator.mode = "WORLDSPACE*" or generating Viewpoint.camera[Inverse]Matrix event.
Always after changing this, change also all other camera fields, and then call Changed.
Set all properties (except Target) from explict matrices. ProjectionMatrix is needed to calculate frustum.
Remember that Target must be already set correctly when calling this, registered OnChanged callbacks may read it.
Viewpoint is only passed to the Changed and OnChanged. It should be non-nil to indicate that the view comes from non-standard (not currently bound) VRML/X3D Viewpoint node.
Always called after camera changed. This will call all registered OnChanged events. Remember that Target must be already set correctly when calling this, registered OnChanged callbacks may read it.