예제 #1
0
 public Vector3 Position; // 骨骼位置
 public void Read(BinaryReader reader)
 {
     Name     = GlobleFuncs.GetString(reader, 20);
     Parent   = reader.ReadInt16();
     To       = reader.ReadInt16();
     Kind     = reader.ReadByte();
     IKNum    = reader.ReadInt16();
     Position = GlobleFuncs.ReadVector3(reader);
 }
예제 #2
0
 public byte    NonEdgeFlag; //无边标志(说明:当这个字节不为0时NonEdgeFlag=true)
 public void Read(BinaryReader reader)
 {
     Position    = GlobleFuncs.ReadVector3(reader);
     Normal      = GlobleFuncs.ReadVector3(reader);
     UV          = GlobleFuncs.ReadVector2(reader);
     Bone1       = reader.ReadUInt16();
     Bone2       = reader.ReadUInt16();
     Weight      = reader.ReadByte();
     NonEdgeFlag = reader.ReadByte();
 }
예제 #3
0
 public void Read(BinaryReader reader)
 {
     Name            = GlobleFuncs.GetString(reader, 20);
     BodyA           = reader.ReadInt32();
     BodyB           = reader.ReadInt32();
     Position        = GlobleFuncs.ReadVector3(reader);
     Rotation        = GlobleFuncs.ReadVector3(reader);
     Limit_MoveLow   = GlobleFuncs.ReadVector3(reader);
     Limit_MoveHigh  = GlobleFuncs.ReadVector3(reader);
     Limit_AngleLow  = GlobleFuncs.ReadVector3(reader);
     Limit_AngleHigh = GlobleFuncs.ReadVector3(reader);
     SpConst_Move    = GlobleFuncs.ReadVector3(reader);
     SpConst_Rotate  = GlobleFuncs.ReadVector3(reader);
 }
예제 #4
0
 public void Read(BinaryReader reader)
 {
     Name             = GlobleFuncs.GetString(reader, 20);
     Bone             = reader.ReadInt16();
     Group            = reader.ReadByte();
     m_passGroupFlag  = reader.ReadUInt16();
     BoxType          = reader.ReadByte();
     BoxSize          = GlobleFuncs.ReadVector3(reader);
     PositionFromBone = GlobleFuncs.ReadVector3(reader);
     Rotation         = GlobleFuncs.ReadVector3(reader);
     Mass             = reader.ReadSingle();
     PositionDamping  = reader.ReadSingle();
     RotationDamping  = reader.ReadSingle();
     Restitution      = reader.ReadSingle();
     Friction         = reader.ReadSingle();
     Mode             = reader.ReadByte();
 }
예제 #5
0
 public string  Name;            // 包含了纹理路径,使用*分割(应该包含了混合模式吧,枚举:NONE、ADD、MUL)
 public void Read(BinaryReader reader)
 {
     Diffuse         = GlobleFuncs.ReadVector3(reader);
     Alpha           = reader.ReadSingle();
     Shininess       = reader.ReadSingle();
     Specular        = GlobleFuncs.ReadVector3(reader);
     Ambient         = GlobleFuncs.ReadVector3(reader);
     ToonNo          = reader.ReadByte();
     Edge            = reader.ReadByte();
     FaceVertexCount = reader.ReadInt32();
     Name            = GlobleFuncs.GetString(reader, 20);
     //暂时不处理sph纹理
     if (Name.EndsWith("sph"))
     {
         Name = "";
     }
     //包含了纹理路径,使用*分割(应该包含了混合模式吧,枚举:NONE、ADD、MUL)
     if (Name.EndsWith("spa"))
     {
         Name = Name.Split('*')[0];
     }
 }
예제 #6
0
 public Vector3 Offset; // 顶点位移
 public void Read(BinaryReader reader)
 {
     Index  = reader.ReadUInt32();
     Offset = GlobleFuncs.ReadVector3(reader);
 }