2017-10-14 6 views
0

J'utilise Assimp pour importer des fichiers .fbx dans mon moteur. Chaque fois qu'un fichier est importé, des informations sur le contenu du fichier sont créées. J'ai créé un aiLogStream pour obtenir l'info.Obtenir des informations d'importation Assimp à l'aide du rappel

struct aiLogStream stream; 
stream = aiGetPredefinedLogStream(aiDefaultLogStream_DEBUGGER, nullptr); 
aiAttachLogStream(&stream); 

Ceci donne l'information à la fenêtre de sortie dans Visual Studio.

La structure aiLogStream a un aiLogStreamCallback pour obtenir l'information mais je ne sais pas comment implémenter le rappel.

Quelqu'un sait-il comment faire?

Répondre

0

Le rappel est utilisé pour rediriger les messages de journal entrant vers votre application. Vous avez donc la possibilité d'imprimer ce message sur une fenêtre de dialogue spéciale ou dans un fichier spécial par exemple. Pour mettre en œuvre cette fonction il suffit de définir avec la signature définie de la fonction de rappel comme:

// Implementation for your own log stream callback 
void myCallback(const char *msg, char *userData) { 
    printToMyWindows(msg); 
    printIntoMyFile(msg); 
} 

// Register it 
struct aiLogStream stream; 
stream.callback = myCallback; 
aiAttachLogStream(&stream); 

Maintenant votre propre rappel sera appelée chaque fois qu'un message de journal est écrit quelque part dans l'actif-importateur-Lib.

Espérons que ça aide. Et désolé pour la réponse tardive, a trouvé cette question aujourd'hui.