Сохранение в X-файл (устаревшая версия) (Direct3D 9)
Используйте следующую процедуру в устаревших приложениях для сохранения шаблонов и данных X-файлов в X-файл.
- Используйте функцию DirectXFileCreate для создания объекта IDirectXFile .
- Используйте метод IDirectXFile::RegisterTemplates , чтобы сообщить файловой системе DirectX о всех шаблонах, которые вы будете использовать.
- Используйте метод IDirectXFile::CreateSaveObject для создания объекта IDirectXFileSaveObject .
- При необходимости используйте метод IDirectXFileSaveObject::SaveTemplates для сохранения шаблонов.
- Циклическое перебирает сохраняемые объекты. Для каждого объекта верхнего уровня выполните следующие действия.
- Используйте метод IDirectXFileSaveObject::CreateDataObject , чтобы создать объект IDirectXFileData в качестве объекта верхнего уровня в файле. Если у объекта данных верхнего уровня есть необязательные дочерние объекты, добавьте их в объект с помощью соответствующего метода из следующего шага.
- Каждый объект IDirectXFileData может иметь необязательные дочерние объекты, если это позволяет его шаблон. Дочерними объектами может быть любой из трех типов объектов: IDirectXFileData, IDirectXFileDataReference или IDirectXFileBinary. Циклически просматривайте объекты, которые необходимо сохранить, добавляя каждый необязательный дочерний элемент в список объектов способом, соответствующим его типу, как показано на следующих шагах. Затем, если тип объекта — Data, вызовите метод IDirectXFileSaveObject::CreateDataObject , чтобы создать объект IDirectXFileData, а затем вызовите метод IDirectXFileData::AddDataObject , чтобы добавить его в качестве дочернего объекта. Если тип объекта — Data Reference, вызовите метод IDirectXFileData::AddDataReference , чтобы создать и добавить объект ссылки на данные в качестве дочернего элемента объекта . Или, если тип объекта — Binary, вызовите метод IDirectXFileData::AddBinaryObject , чтобы создать и добавить двоичный объект в качестве дочернего объекта объекта.
- Вызовите метод IDirectXFileSaveObject::SaveData , чтобы сохранить объект данных и его дочерние элементы.
- Отпустите объект IDirectXFileData .
- Отпустите объект IDirectXFileSaveObject .
- Отпустите объект IDirectXFile .
Связанные темы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по