예제 #1
0
 public void Write(BinaryWriter writer)
 {
     writer.Write(CamTrigger.Header1);
     writer.Write(CamTrigger.Enabled);
     writer.Write(CamTrigger.HeaderT);
     CamTrigger.Rotation.Write(writer);
     CamTrigger.Position.Write(writer);
     CamTrigger.Scale.Write(writer);
     writer.Write(CamTrigger.Instances.Count);
     writer.Write(CamTrigger.Instances.Count);
     writer.Write(CamTrigger.HeaderH);
     for (int i = 0; i < CamTrigger.Instances.Count; ++i)
     {
         writer.Write(CamTrigger.Instances[i]);
     }
     //
     writer.Write(CameraHeader);
     writer.Write(UnkShort);
     writer.Write(UnkFloat1);
     UnkVector1.Write(writer);
     UnkVector2.Write(writer);
     writer.Write(UnkFloat2);
     writer.Write(UnkFloat3);
     writer.Write(UnkInt1);
     writer.Write(UnkInt2);
     writer.Write(UnkInt3);
     writer.Write(UnkInt4);
     writer.Write(UnkInt5);
     writer.Write(UnkInt6);
     writer.Write(UnkFloat4);
     writer.Write(UnkFloat5);
     writer.Write(UnkFloat6);
     writer.Write(UnkFloat7);
     writer.Write(UnkInt7);
     writer.Write(UnkInt8);
     writer.Write(UnkInt9);
     writer.Write(UnkFloat8);
     writer.Write(TypeIndex1);
     writer.Write(TypeIndex2);
     writer.Write(UnkByte);
     if (MainCamera1 != null)
     {
         MainCamera1.Write(writer);
     }
     if (MainCamera2 != null)
     {
         MainCamera2.Write(writer);
     }
 }
예제 #2
0
        public void Write(BinaryWriter writer)
        {
            writer.Write(ShaderType);
            switch (ShaderType)
            {
            case 23:
                writer.Write(IntParam);
                writer.Write(FloatParam[0]);
                writer.Write(FloatParam[1]);
                break;

            case 26:
                writer.Write(IntParam);
                writer.Write(FloatParam[0]);
                writer.Write(FloatParam[1]);
                writer.Write(FloatParam[2]);
                writer.Write(FloatParam[3]);
                break;

            case 16:
            case 17:
                writer.Write(FloatParam[0]);
                break;

            default:
                break;
            }
            if (Blob != null)
            {
                bitfieldData[29] = 1;
            }
            else
            {
                bitfieldData[29] = 0;
            }
            writer.Write(bitfieldData);
            writer.Write(UnkShort1);
            writer.Write(UnkShort2);
            UnkVector1.Write(writer);
            UnkVector2.Write(writer);
            UnkVector3.Write(writer);
            writer.Write(TextureId);
            writer.Write(UnkInt2);
            if (Blob != null)
            {
                Blob.Write(writer);
            }
        }