Boutique Cinema 4D
Affichage des résultats 1 à 7 sur 7

Discussion: [RESOLU] Exportation en masse .fbx (ou script ?)

  1. #1
    Touriste
    Date d'inscription
    février 2012
    C4D version
    R13 Studio
    OS
    Windows 7
    Messages
    19

    [RESOLU] Exportation en masse .fbx (ou script ?)

    Bonjour,

    En vu de créer un jeu vidéo, j'ai réalisé un environnement sous C4D et enregistré les objets (centrés) sur différents fichiers. Une centaine au final.

    Il est maintenant temps de les exporter en .fbx en vu de les re-importer sous Unreal Engine.

    Existe t-il un moyen d'exporter une pile de fichier en .fbx ? ou peut-être en réalisant un script ?

    Merci de votre aide,
    Cordialement,
    Neps
    Dernière modification par Neps ; 05/10/2015 à 22h37.

  2. #2
    Pilier Avatar de oli_d
    Date d'inscription
    avril 2004
    C4D version
    Autre
    OS
    MacOS X
    Messages
    707
    Salut,

    ce code devrait fonctionner (j'ai pas trouvé tout de suite comment enregistrer en FBX, j'ai trouvé la réponse ici):

    Code PHP:
    import c4d,os
    from glob import glob

    def main
    ():
        
    path c4d.storage.LoadDialog(title="Dossier contenant les fichiers c4d :"flags=c4d.FILESELECT_DIRECTORY)
        if 
    not path : return
        
    dest os.path.join(path,'FBX')
        if 
    not os.path.isdir(dest):
            
    os.mkdir(dest)
            
        for 
    fn in glob(path+'/*.c4d'):
            
    name os.path.basename(fn)[:-3]+'fbx'
            
    c4d.documents.LoadFile(fn)
            
    docu c4d.documents.GetFirstDocument()
            
    c4d.documents.SaveDocument(docu,os.path.join(dest,name),c4d.SAVEDOCUMENTFLAGS_DONTADDTORECENTLIST,1026370)#Exports using the FBX exporter
            
    c4d.documents.CloseAllDocuments()

    if 
    __name__=='__main__':
        
    main() 
    Il faut indiquer le dossier où se trouve les fichiers c4d, le script crée ensuite un dossier FBX au même endroit dans le dossier* avec les fichiers fbx. J'ai testé seulement avec un cube ...

    *[EDIT]

    [EDIT2] : voilà corrigé, mais attention cela ferme les documents ouverts
    Dernière modification par oli_d ; 05/10/2015 à 20h54.

  3. #3
    Touriste
    Date d'inscription
    février 2012
    C4D version
    R13 Studio
    OS
    Windows 7
    Messages
    19
    Bonsoir,

    J'ai testé avec plusieurs fichiers, 10, 5 puis 1.

    Un dossier est bien créé ainsi qu'un (ou plusieurs) fichier(s) en .fbx, cependant il(..) ne fait que 20octets, est vide, et C4D tourne sans fin pour l'exportation..

    Merci beaucoup de votre aide.

  4. #4
    Pilier Avatar de oli_d
    Date d'inscription
    avril 2004
    C4D version
    Autre
    OS
    MacOS X
    Messages
    707
    J'avais posté dans un premier temps un code qui ne fonctionnait pas, j'ai édité mon message après et remis un code qui fonctionnait mieux. Essaie de nouveau avec le code édité

  5. #5
    Touriste
    Date d'inscription
    février 2012
    C4D version
    R13 Studio
    OS
    Windows 7
    Messages
    19
    Merci beaucoup pour votre aide, tout fonctionne !

    Bonne soirée
    Neps

  6. #6
    Pilier Avatar de gr4ph0s
    Date d'inscription
    mai 2013
    C4D version
    R16 Studio
    OS
    win 7 X64
    Messages
    964
    Pas mal du tout ce petit script ! Je voudrais savoir quel est la signification de name = os.path.basename(fn)[:-3]+'fbx'

    Surtout le [:-3] .


    Après il y a un moyen par exemple si on importe un OBJ de ne pas avoir l'interface pour nous demander les options d'importations?
    SDK Specialist
    MAXON Computer GmbH

  7. #7
    Pilier Avatar de oli_d
    Date d'inscription
    avril 2004
    C4D version
    Autre
    OS
    MacOS X
    Messages
    707
    Code PHP:
    import os

    #Si j'ai un chemin complet pour un fichier :
    fn '/Users/machin/Documents/MANDATS/Master_archi/C4D/fichiers_polygones_MNT/secteur1.c4d'

    #le nom de fichier court s'obtient:
    fn_court os.path.basename(fn

    print 
    fn_court #donne -> secteur1.c4d

    print fn_court[:-3#donne le nom sans les 3 dernières lettres : secteur1.

    #auquel j'ai rajouté l'extension 'fbx'
    #ce qui donne à la suite :
    print os.path.basename(fn)[:-3]+'fbx' #-> secteur1.fbx  

    #on aurait également pu utiliser :
    nom,ext os.path.splitext(fn_court)

    print 
    nom #-> secteur1
    print ext #-> .c4d

    #à la suite :
    print os.path.splitext(os.path.basename(fn))[0]+'.fbx' #-> secteur1.fbx 

Discussions similaires

  1. Cloneur et dynmaiques : poids/masse
    Par fabrice.sierra dans le forum MoGraph
    Réponses: 10
    Dernier message: 23/04/2011, 01h13
  2. Essai plan de masse avec VueXstream
    Par C2 dans le forum Travaux en cours
    Réponses: 30
    Dernier message: 28/08/2007, 19h57
  3. masse volume surface avec phytools
    Par woody1979 dans le forum Nouveaux membres
    Réponses: 1
    Dernier message: 03/01/2007, 22h40
  4. Animation masse graisseuses
    Par -KYO- dans le forum Animation
    Réponses: 15
    Dernier message: 29/01/2004, 21h25

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  
Mediaworks - Logiciels 3D | Design Internet - Creation site internet