Enregistrement dans un fichier X (hérité) (Direct3D 9)
Utilisez la procédure suivante dans les applications héritées pour enregistrer des modèles de fichier .x et des données dans un fichier .x.
- Utilisez la fonction DirectXFileCreate pour créer un objet IDirectXFile .
- Utilisez la méthode IDirectXFile::RegisterTemplates pour informer le système de fichiers DirectX des modèles que vous allez utiliser.
- Utilisez la méthode IDirectXFile::CreateSaveObject pour créer un objet IDirectXFileSaveObject .
- Utilisez la méthode IDirectXFileSaveObject::SaveTemplates pour enregistrer des modèles, si vous le souhaitez.
- Passez en boucle les objets à enregistrer. Pour chaque objet de niveau supérieur, effectuez les étapes suivantes.
- Utilisez la méthode IDirectXFileSaveObject::CreateDataObject pour créer un objet IDirectXFileData en tant qu’objet de niveau supérieur dans le fichier. Si l’objet de données de niveau supérieur a des objets enfants facultatifs, ajoutez-les à l’objet à l’aide de la méthode appropriée à l’étape suivante.
- Chaque objet IDirectXFileData peut avoir des objets enfants facultatifs si son modèle le permet. Les objets enfants peuvent être l’un des trois types d’objets : IDirectXFileData, IDirectXFileDataReference ou IDirectXFileBinary. Effectuez une boucle dans les objets que vous devez enregistrer, en ajoutant chaque membre enfant facultatif à la liste d’objets de la manière appropriée à son type, comme illustré dans les étapes suivantes. Ensuite, si le type d’objet est Data, appelez la méthode IDirectXFileSaveObject::CreateDataObject pour créer un objet IDirectXFileData , puis appelez la méthode IDirectXFileData::AddDataObject pour l’ajouter en tant qu’enfant de l’objet. Si le type d’objet est Data Reference, appelez la méthode IDirectXFileData::AddDataReference pour créer et ajouter l’objet de référence de données en tant qu’enfant de l’objet. Ou, si le type d’objet est Binary, appelez la méthode IDirectXFileData::AddBinaryObject pour créer et ajouter l’objet binaire en tant qu’enfant de l’objet.
- Appelez la méthode IDirectXFileSaveObject::SaveData pour enregistrer l’objet de données et ses enfants.
- Relâchez l’objet IDirectXFileData .
- Relâchez l’objet IDirectXFileSaveObject .
- Relâchez l’objet IDirectXFile .
Rubriques connexes