Unit 'PasVulkan.FileFormats.PPM' Package
[Overview][Classes][Index] [#pl_pasvulkan]

TpvPPM

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Declaration

Source position: PasVulkan.FileFormats.PPM.pas line 71

type TpvPPM = class

public

const

  CountPresetAnimations = 4

  

  Version = 1

  

public

type

  TVertex = packed record

  

  Position: TpvVector3;

  

  TangentSpace: TpvUInt32;

  

end;

  PVertex = ^TVertex;

  

  TVertices = array of TVertex;

  

  TFullVertex = record

  

  Position: TpvVector3;

  

  Tangent: TpvVector3;

  

  Bitangent: TpvVector3;

  

  Normal: TpvVector3;

  

end;

  PFullVertex = ^TFullVertex;

  

  TFullVertices = array of TFullVertex;

  

  TTexCoords = array of TpvUInt16Vector2;

  

  TIndex = TpvUInt32;

  

  PIndex = ^TIndex;

  

  TIndices = array of TIndex;

  

  TFrame = record

  

public

  Time: TpvDouble;

  

  Vertices: TVertices;

  

  FullVertices: TFullVertices;

  

  procedure Pack;

  

  procedure Unpack;

  

end;

  PFrame = ^TFrame;

  

  TFrames = array of TFrame;

  

  TAnimation = record

  

  Frames: TFrames;

  

end;

  PAnimation = ^TAnimation;

  

  TAnimations = array of TAnimation;

  

  TPresetAnimation = record

  

  Index: TpvSizeInt;

  

  Name: TpvUTF8String;

  

end;

  PPresetAnimation = ^TPresetAnimation;

  

  TPresetAnimations = array [0..CountPresetAnimations-1] of TPresetAnimation;

  

  TSignature = array [0..3] of AnsiChar;

  

  TMaterialHeader = packed record

  

  BaseColorFactor: TpvVector4;

  

  EmissiveFactorOcclusionStrength: TpvVector4;

  

  MetallicRoughnessFactorNormalScale: TpvVector4;

  

  BaseColorTextureSize: TpvUInt32;

  

  NormalTextureSize: TpvUInt32;

  

  MetallicRoughnessTextureSize: TpvUInt32;

  

  OcclusionTextureSize: TpvUInt32;

  

  EmissiveTextureSize: TpvUInt32;

  

end;

  TFileHeader = packed record

  

  Signature: TSignature;

  

  Version: TpvUInt32;

  

  CountVertices: TpvUInt32;

  

  CountIndices: TpvUInt32;

  

  CountAnimations: TpvUInt32;

  

  BoundingBoxMin: TpvVector3;

  

  BoundingBoxMax: TpvVector3;

  

  BoundingSphere: TpvVector4;

  

  MaterialHeader: TMaterialHeader;

  

end;

  PFileHeader = ^TFileHeader;

  

public

const

  Signature = TSignature; = ('P', 'P', 'M', 'F')

  

  PresetAnimations = TPresetAnimations; = ((Index: 0; Name: 'grow'), (Index: 1; Name: 'blossoms'), (Index: 2; Name: 'falloff'), (Index: 3; Name: 'wither'))

  

public

type

  TModel = TModel;

  

end;

Inheritance

TpvPPM

  

|

TObject



CT Web help

CodeTyphon Studio