internal override void Write(ResourceWriter writer) { writer.WriteSingle(Field00); writer.WriteSingle(Field04); writer.WriteSingle(Field08); writer.WriteSingle(Field0C); writer.WriteSingle(Field10); }
protected override void WriteCore(ResourceWriter writer) { writer.WriteResource(Field00); writer.WriteSingle(Field10); writer.WriteResource(Field04); writer.WriteSingle(Field14); writer.WriteResource(Field08); writer.WriteSingle(Field18); writer.WriteResource(Field0C); writer.WriteSingle(Field1C); }
internal override void Write(ResourceWriter writer) { writer.WriteMatrix4x4(Transform); writer.WriteSingle(Field180); writer.WriteSingle(Field184); writer.WriteSingle(Field188); writer.WriteSingle(Field18C); if (Version > 0x1104060) { writer.WriteSingle(Field190); } }
protected override void WriteCore(ResourceWriter writer) { writer.WriteInt32(( int )KeyType); writer.WriteInt32(Keys.Count); Keys.ForEach(x => writer.WriteSingle(x.Time)); Keys.ForEach(x => x.Write(writer)); if (UsesScaleVectors) { writer.WriteVector3(PositionScale); if (!IsCatherineFullBodyData || KeyType != KeyType.Type31) { writer.WriteVector3(ScaleScale); } } }
internal override void Write(ResourceWriter writer) { writer.WriteInt32(Field04); writer.WriteInt32(Field08); writer.WriteInt16(Field0C); writer.WriteSingle(Field10); writer.WriteSingle(Field14); writer.WriteSingle(Field18); writer.WriteInt32(Field1C); writer.WriteInt16(Field20); writer.WriteSingle(Field24); writer.WriteSingle(Field28); writer.WriteSingle(Field2C); writer.WriteByte(Field00); }
internal override void Write(ResourceWriter writer) { writer.WriteInt32(Field140); writer.WriteSingle(Field13C); writer.WriteSingle(Field138); writer.WriteSingle(Field134); writer.WriteSingle(Field130); writer.WriteInt32(Entry1List.Count); writer.WriteInt32(Entry2List.Count); writer.WriteInt32(Entry3List.Count); foreach (var entry in Entry1List) { writer.WriteSingle(entry.Field34); writer.WriteSingle(entry.Field38); if (Version > 0x1104120) { writer.WriteSingle(entry.Field3C); writer.WriteSingle(entry.Field40); } if (entry.NodeName != null) { writer.WriteBoolean(true); writer.WriteStringWithHash(Version, entry.NodeName); } else { writer.WriteBoolean(false); writer.WriteSingle(entry.Field10); writer.WriteSingle(entry.Field08); writer.WriteSingle(entry.Field04); } } foreach (var entry in Entry2List) { writer.WriteInt16(entry.Field94); if (entry.Field94 == 0) { writer.WriteSingle(entry.Field84); } else if (entry.Field94 == 1) { writer.WriteSingle(entry.Field84); writer.WriteSingle(entry.Field88); } writer.WriteMatrix4x4(entry.Field8C); if (entry.NodeName != null) { writer.WriteBoolean(true); writer.WriteStringWithHash(Version, entry.NodeName); } else { writer.WriteBoolean(false); } } foreach (var entry in Entry3List) { writer.WriteSingle(entry.Field00); writer.WriteSingle(entry.Field04); if (Version <= 0x1104120) { writer.WriteInt16(entry.Field0C); writer.WriteInt16(entry.Field0E); } else { writer.WriteSingle(entry.Field08); writer.WriteInt16(entry.Field0C); writer.WriteInt16(entry.Field0E); } } }
protected override void WriteCore(ResourceWriter writer) { writer.WriteInt32(Count); foreach (var property in Values) { writer.WriteInt32(( int )property.ValueType); writer.WriteStringWithHash(Version, property.Name); switch (property.ValueType) { case UserPropertyValueType.Int: writer.WriteInt32(4); writer.WriteInt32(property.GetValue <int>()); break; case UserPropertyValueType.Float: writer.WriteInt32(4); writer.WriteSingle(property.GetValue <float>()); break; case UserPropertyValueType.Bool: writer.WriteInt32(1); writer.WriteBoolean(property.GetValue <bool>()); break; case UserPropertyValueType.String: { var value = property.GetValue <string>(); writer.WriteInt32(value.Length + 1); writer.WriteStringRaw(value); } break; case UserPropertyValueType.ByteVector3: writer.WriteInt32(3); writer.WriteByteVector3(property.GetValue <ByteVector3>()); break; case UserPropertyValueType.ByteVector4: writer.WriteInt32(4); writer.WriteByteVector4(property.GetValue <ByteVector4>()); break; case UserPropertyValueType.Vector3: writer.WriteInt32(12); writer.WriteVector3(property.GetValue <Vector3>()); break; case UserPropertyValueType.Vector4: writer.WriteInt32(16); writer.WriteVector4(property.GetValue <Vector4>()); break; case UserPropertyValueType.ByteArray: { var value = property.GetValue <byte[]>(); writer.WriteInt32(value.Length); writer.WriteBytes(value); } break; default: throw new InvalidOperationException($"Unknown node property type: {property.ValueType}"); } } }
protected override void WriteCore(ResourceWriter writer) { if (Version > 0x1104190) { writer.WriteInt32(( int )Flags); } writer.WriteInt32(( int )Type); writer.WriteVector4(AmbientColor); writer.WriteVector4(DiffuseColor); writer.WriteVector4(SpecularColor); switch (Type) { case LightType.Type1: writer.WriteSingle(Field20); writer.WriteSingle(Field04); writer.WriteSingle(Field08); break; case LightType.Point: writer.WriteSingle(Field10); writer.WriteSingle(Field04); writer.WriteSingle(Field08); if (Flags.HasFlag(LightFlags.Bit2)) { writer.WriteSingle(AttenuationStart); writer.WriteSingle(AttenuationEnd); } else { writer.WriteSingle(Field60); writer.WriteSingle(Field64); writer.WriteSingle(Field68); } break; case LightType.Spot: writer.WriteSingle(Field20); writer.WriteSingle(Field08); writer.WriteSingle(Field04); writer.WriteSingle(AngleInnerCone); writer.WriteSingle(AngleOuterCone); goto case LightType.Point; } }
internal override void Write(ResourceWriter writer) { writer.WriteSingle(Value); }
protected override void WriteCore(ResourceWriter writer) { writer.WriteStringWithHash(Version, Name); writer.WriteInt32(Field44); writer.WriteByte(Field48); writer.WriteByte(Field49); writer.WriteByte(Field4A); writer.WriteByte(Field4B); writer.WriteSingle(Field4C); writer.WriteSingle(Field50); writer.WriteSingle(Field54); writer.WriteSingle(Field58); writer.WriteSingle(Field5C); writer.WriteSingle(Field60); writer.WriteSingle(Field64); writer.WriteSingle(Field68); writer.WriteSingle(Field6C); writer.WriteSingle(Field70); writer.WriteSingle(Field74); writer.WriteSingle(Field78); writer.WriteSingle(Field7C); writer.WriteSingle(Field80); writer.WriteSingle(Field84); writer.WriteSingle(Field88); }
internal override void Write(ResourceWriter writer) { writer.WriteSingle(Field00); writer.WriteByte(Byte); }
internal override void Write(ResourceWriter writer) { if (Version > 0x1104190) { writer.WriteInt32(( int )Flags); } writer.WriteInt32(( int )Type); writer.WriteVector4(Field30); writer.WriteVector4(Field40); writer.WriteVector4(Field50); switch (Type) { case LightType.Type1: writer.WriteSingle(Field20); writer.WriteSingle(Field04); writer.WriteSingle(Field08); break; case LightType.Sky: writer.WriteSingle(Field10); writer.WriteSingle(Field04); writer.WriteSingle(Field08); if (Flags.HasFlag(LightFlags.Flag2)) { writer.WriteSingle(Field6C); writer.WriteSingle(Field70); } else { writer.WriteSingle(Field60); writer.WriteSingle(Field64); writer.WriteSingle(Field68); } break; case LightType.Type3: writer.WriteSingle(Field20); writer.WriteSingle(Field08); writer.WriteSingle(Field04); writer.WriteSingle(Field74); writer.WriteSingle(Field78); goto case LightType.Sky; } }