static TransformationKeys() { View = ParameterKeys.Value(Matrix.Identity); Projection = ParameterKeys.Value(Matrix.Identity); World = ParameterKeys.Value(Matrix.Identity); ViewProjection = ParameterKeys.Value(ParameterDynamicValue.New <Matrix, Matrix, Matrix>(View, Projection, Matrix.Multiply)); WorldView = ParameterKeys.Value(ParameterDynamicValue.New <Matrix, Matrix, Matrix>(World, View, Matrix.Multiply)); WorldViewProjection = ParameterKeys.Value(ParameterDynamicValue.New <Matrix, Matrix, Matrix>(World, ViewProjection, Matrix.Multiply)); ProjScreenRay = ParameterKeys.Value(ParameterDynamicValue.New <Vector2, Matrix>(Projection, ExtractProjScreenRay)); Eye = ParameterKeys.Value(ParameterDynamicValue.New <Vector4, Matrix>(View, ViewToEye)); ViewInverse = ParameterKeys.Value(ParameterDynamicValue.New <Matrix, Matrix>(View, InvertMatrix)); WorldViewInverse = ParameterKeys.Value(ParameterDynamicValue.New <Matrix, Matrix>(WorldView, InvertMatrix)); }
static CameraKeys() { ZProjection = ParameterKeys.Value(ParameterDynamicValue.New <Vector2, float, float>(NearClipPlane, FarClipPlane, ZProjectionACalculate)); }