public model_region_permutation_marker_block() : base(6)
 {
     Add(Name      = new TI.String());
     Add(NodeIndex = new TI.BlockIndex());
     Add(new TI.Pad(2));
     Add(Translation = new TI.RealPoint3D());
     Add(Rotation    = new TI.RealQuaternion());
     Add(new TI.Pad(16));
 }
 public model_marker_instance_block() : base(6)
 {
     Add(RegionIndex      = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
     Add(PermutationIndex = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
     Add(NodeIndex        = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
     Add(new TI.Pad(1));
     Add(Translation = new TI.RealPoint3D());
     Add(Rotation    = new TI.RealQuaternion());
 }
Example #3
0
					public model_region_permutation_marker_block() : base(6)
					{
						Add(Name = new TI.String());
						Add(NodeIndex = new TI.BlockIndex());
						Add(new TI.Pad(2));
						Add(Translation = new TI.RealPoint3D());
						Add(Rotation = new TI.RealQuaternion());
						Add(new TI.Pad(16));
					}
Example #4
0
				public model_marker_instance_block() : base(6)
				{
					Add(RegionIndex = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
					Add(PermutationIndex = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
					Add(NodeIndex = new TI.BlockIndex(BlamLib.TagInterface.FieldType.ByteBlockIndex));
					Add(new TI.Pad(1));
					Add(Translation = new TI.RealPoint3D());
					Add(Rotation = new TI.RealQuaternion());
				}
Example #5
0
 public render_model_marker_block()
 {
     Add(RegionIndex      = new TI.ByteInteger());
     Add(PermutationIndex = new TI.ByteInteger());
     Add(NodeIndex        = new TI.ByteInteger());
     Add(new TI.Pad(1));
     Add(Translation = new TI.RealPoint3D());
     Add(Rotation    = new TI.RealQuaternion());
     Add(Scale       = new TI.Real());
 }
 public model_node_block() : base(9)
 {
     Add(Name            = new TI.String());
     Add(NextSiblingNode = new TI.BlockIndex());
     Add(FirstChildNode  = new TI.BlockIndex());
     Add(ParentNode      = new TI.BlockIndex());
     Add(new TI.Pad(2));
     Add(DefaultTranslation = new TI.RealPoint3D());
     Add(DefaultRotation    = new TI.RealQuaternion());
     Add(NodeDistFromParent = new TI.Real());
     Add(new TI.Pad(32 + 52));
 }
Example #7
0
			public model_node_block() : base(9)
			{
				Add(Name = new TI.String());
				Add(NextSiblingNode = new TI.BlockIndex());
				Add(FirstChildNode = new TI.BlockIndex());
				Add(ParentNode = new TI.BlockIndex());
				Add(new TI.Pad(2));
				Add(DefaultTranslation = new TI.RealPoint3D());
				Add(DefaultRotation = new TI.RealQuaternion());
				Add(NodeDistFromParent = new TI.Real());
				Add(new TI.Pad(32 + 52));
			}
Example #8
0
 public render_model_node_block()
 {
     Add(Name               = new TI.StringId());
     Add(ParentNode         = new TI.BlockIndex());     // 1 render_model_node_block
     Add(FirstChildNode     = new TI.BlockIndex());     // 1 render_model_node_block
     Add(NextSiblingNode    = new TI.BlockIndex());     // 1 render_model_node_block
     Add(ImportNodeIndex    = new TI.ShortInteger());
     Add(DefaultTranslation = new TI.RealPoint3D());
     Add(DefaultRotation    = new TI.RealQuaternion());
     Add(InverseForward     = new TI.RealVector3D());
     Add(InverseLeft        = new TI.RealVector3D());
     Add(InverseUp          = new TI.RealVector3D());
     Add(InversePosition    = new TI.RealPoint3D());
     Add(InverseScale       = new TI.Real());
     Add(DistFromParent     = new TI.Real());
 }
Example #9
0
			public camera_track_control_point_block() : base(3)
			{
				Add(Position = new TI.RealVector3D());
				Add(Orientation = new TI.RealQuaternion());
				Add(new TI.Pad(32));
			}
Example #10
0
 public camera_track_control_point_block() : base(3)
 {
     Add(Position    = new TI.RealVector3D());
     Add(Orientation = new TI.RealQuaternion());
     Add(new TI.Pad(32));
 }
Example #11
0
		/// <summary>
		/// Copy constructor
		/// </summary>
		/// <param name="value">field to copy</param>
		public RealQuaternion(RealQuaternion value) :				this()							{ I = value.I; J = value.J; K = value.K; W = value.W; }
Example #12
0
			public render_model_marker_block() : base(7)
			{
				Add(RegionIndex = new TI.ByteInteger());
				Add(PermutationIndex = new TI.ByteInteger());
				Add(NodeIndex = new TI.ByteInteger());
				Add(new TI.Pad(1));
				Add(Translation = new TI.RealPoint3D());
				Add(Rotation = new TI.RealQuaternion());
				Add(Scale = new TI.Real());
			}
Example #13
0
		public render_model_node_block() : base(13)
		{
			Add(Name = new TI.StringId(true));
			Add(ParentNode = new TI.BlockIndex()); // 1 render_model_node_block
			Add(FirstChildNode = new TI.BlockIndex()); // 1 render_model_node_block
			Add(NextSiblingNode = new TI.BlockIndex()); // 1 render_model_node_block
			Add(ImportNodeIndex = new TI.ShortInteger());
			Add(DefaultTranslation = new TI.RealPoint3D());
			Add(DefaultRotation = new TI.RealQuaternion());
			Add(InverseForward = new TI.RealVector3D());
			Add(InverseLeft = new TI.RealVector3D());
			Add(InverseUp = new TI.RealVector3D());
			Add(InversePosition = new TI.RealPoint3D());
			Add(InverseScale = new TI.Real());
			Add(DistFromParent = new TI.Real());
		}
Example #14
0
		/// <summary>
		/// Converts a quaternion into an euler rotation
		/// </summary>
		/// <returns>Returns an euler rotation</returns>
		public static LowLevel.Math.real_euler_angles3d ToEuler3D(RealQuaternion quaternion)
		{
			return ToEuler3D(quaternion.I, quaternion.J, quaternion.K, quaternion.W);
		}
Example #15
0
			public structure_bsp_marker_block() : base(3)
			{
				Add(Name = new TI.String());
				Add(Rotation = new TI.RealQuaternion());
				Add(Position = new TI.RealPoint3D());
			}
Example #16
0
 public structure_bsp_marker_block() : base(3)
 {
     Add(Name     = new TI.String());
     Add(Rotation = new TI.RealQuaternion());
     Add(Position = new TI.RealPoint3D());
 }
Example #17
0
		/// <summary>
		/// Returns a quaternion with an inverted vector
		/// </summary>
		/// <param name="quaternion">The quaternion to invert</param>
		/// <returns></returns>
		public static LowLevel.Math.real_quaternion Invert(RealQuaternion quaternion)
		{
			LowLevel.Math.real_quaternion quat_out = new LowLevel.Math.real_quaternion();

			quat_out.Vector.I = -quaternion.I;
			quat_out.Vector.J = -quaternion.J;
			quat_out.Vector.K = -quaternion.K;
			quat_out.W = quaternion.W;

			return quat_out;
		}