Salvando em um arquivo X (herdado) (Direct3D 9)
Use o procedimento a seguir em aplicativos herdados para salvar modelos de arquivo .x e dados em um arquivo .x.
- Use a função DirectXFileCreate para criar um objeto IDirectXFile .
- Use o método IDirectXFile::RegisterTemplates para informar o sistema de arquivos DirectX sobre todos os modelos que você usará.
- Use o método IDirectXFile::CreateSaveObject para criar um objeto IDirectXFileSaveObject .
- Use o método IDirectXFileSaveObject::SaveTemplates para salvar modelos, se desejado.
- Passe o loop pelos objetos a serem salvos. Para cada objeto de nível superior, execute as etapas a seguir.
- Use o método IDirectXFileSaveObject::CreateDataObject para criar um objeto IDirectXFileData como um objeto de nível superior no arquivo. Se o objeto de dados de nível superior tiver objetos filho opcionais, adicione-os ao objeto usando o método apropriado da próxima etapa.
- Cada objeto IDirectXFileData poderá ter objetos filho opcionais se o modelo permitir. Os objetos filho podem ser qualquer um dos três tipos de objetos: IDirectXFileData, IDirectXFileDataReference ou IDirectXFileBinary. Faça um loop pelos objetos que você precisa salvar, adicionando cada membro filho opcional à lista de objetos da maneira apropriada ao seu tipo, conforme ilustrado nas etapas a seguir. Em seguida, se o tipo de objeto for Data, chame o método IDirectXFileSaveObject::CreateDataObject para criar um objeto IDirectXFileData e chame o método IDirectXFileData::AddDataObject para adicioná-lo como um filho do objeto. Se o tipo de objeto for Referência de Dados, chame o método IDirectXFileData::AddDataReference para criar e adicionar o objeto de referência de dados como um filho do objeto. Ou, se o tipo de objeto for Binary, chame o método IDirectXFileData::AddBinaryObject para criar e adicionar o objeto binário como um filho do objeto.
- Chame o método IDirectXFileSaveObject::SaveData para salvar o objeto de dados e seus filhos.
- Solte o objeto IDirectXFileData .
- Solte o objeto IDirectXFileSaveObject .
- Solte o objeto IDirectXFile .
Tópicos relacionados