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

Discussion: Vonc Matière UV

  1. #1
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483

    Vonc Matière UV

    Salut,


    Suite à une petite discussion dans le forum programmation quant à la possibilité d'utiliser des UV différents dans un matériau, j'ai finalement décidé d'en faire un mini module gratuit, avec le code ouvert.


    Voici Matière UV / UV Shader, une matière qui permet d'utiliser la projection UV d'une propriété Texture définie, et donc avoir un matériau utilisant plusieurs UV.

    Il suffit de définir le nom de la propriété dans le champ Propriété Texture, et le module cherchera ses UV correspondants pour l'appliquer à la texture de la matière.


    Disponible pour C4D R15+, Windows et OSX.

    Télécharger : http://code.vonc.fr/?a=70


    Je pense que ça servira surtout dans le cadre de la modélisation pour jeux vidéo où il est fréquent d'avoir une multitude d'UV qui se superposent, comme les plaquages d'illumination.


    Dernière modification par César Vonc ; 28/05/2016 à 15h10.

  2. #2
    Gourou Avatar de clemz
    Date d'inscription
    février 2009
    C4D version
    R15 Studio
    OS
    windaube x64
    Messages
    2 165
    merci César .

    (marche pas avec R15/R16 ? )

  3. #3
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    J'ai fait le ménage et j'ai pas encore réinstallé mes anciennes versions de C4D, bientôt. : p

  4. #4
    Pilier Avatar de Floc
    Date d'inscription
    novembre 2012
    C4D version
    R15 Studio
    OS
    WindOSX
    Messages
    1 617
    Woaaa Genial !

    Ca c'est un truc qui manquait vraiment. Surtout quand tu t'y est habitué (c'est depuis toujours dans maya et max).

    Merci oh Cesar

  5. #5
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Oui, franchement je suis étonné que Maxon n'ait rien fait à ce sujet, depuis le temps. : /


    Maintenant compatible R15, R16 et R17, pour Windows.

    La version Mac arrivera un peu plus tard.

  6. #6
    Pilier Avatar de gr4ph0s
    Date d'inscription
    mai 2013
    C4D version
    R16 Studio
    OS
    win 7 X64
    Messages
    964
    En C++ à ce que je comprend faut compiler pour chaque version?

    En tout cas c'est cool des truc open source ! Énorme merci à toi.
    SDK Specialist
    MAXON Computer GmbH

  7. #7
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Pas forcément, y a des chances qu'un module compilé sur une version antérieure fonctionne sur des versions plus récentes, ça dépend des fonctionnalités utilisées.

    Dans ce cas là, j'aurais pu compiler en R15 uniquement, car le module compilé R15 fonctionne en R16 et R17, mais perso je pense qu'il vaut mieux coder sur les dernières version, histoire de ne pas être largué plus tard et pour que le module ait plus de chances de marcher dans les versions futures, puis éventuellement faire des versions antérieures si le code le permet et qu'il n'y ait pas trop de modifs à faire.


    Pour ce module, j'ai compilé en R17, pour la R17, et en R15, pour la R15 et R16.


    Opensource, certes, même si 50 % du code provient de l'exemple du BitmapShader du SDK, étant donné que le principe est similaire et que ma partie à moi est très brève en terme de lignes de code. : p


    En tout cas j'espère que tu te lanceras dans le C++, les possibilités sont bien plsu grandes, même si c'est très chiant de jongler entre les versions et les plateformes !
    Dernière modification par César Vonc ; 22/05/2016 à 22h18.

  8. #8
    Vieux Croûton Avatar de Aurety
    Date d'inscription
    juillet 2002
    C4D version
    R17 Studio
    OS
    Mac
    Messages
    14 477
    Billets dans le blog
    3
    C'est indispensable !! J'espère la version Mac
    Merci les amis, vous êtes beaux, forts.. et généreux.
    kenavo !! // Pinterest KAMIGAZ®

  9. #9
    Vieux Croûton Avatar de shtl
    Date d'inscription
    octobre 2004
    C4D version
    S22 Souscription
    OS
    osX 12.3.1
    Messages
    13 880
    Billets dans le blog
    5
    Vitale! Une fois n'est pas coutume, merci et bravo

    edit:
    PS:
    en espérant qu'une version mac se décante.
    Dernière modification par shtl ; 24/05/2016 à 09h33.
    2x6coreXéon2.66(24T);64Gram; GTX 1080; OSX10.13.6 ////
    Mac Studio 128 Ram ; OSX 12.3.1 ; papiercrayoncerveau;S22Studio;Redshift;Zbrush2022; CS2022
    ///SHTL 2011 DEMO HERE : http://demo.shtl.org/ /// NEW! 2014 WIP

  10. #10
    Big Boss Avatar de Rudy
    Date d'inscription
    mars 2005
    C4D version
    R14 Visualize
    OS
    W 10 Pro 64 bits
    Messages
    8 590
    Billets dans le blog
    4
    Bonjour César,

    Y aura t’il une version R 14 ?
    My BlogAccepter une possibilité, c'est lui permettre de se réaliser ...

  11. #11
    Pilier Avatar de atome451
    Date d'inscription
    mars 2004
    C4D version
    R21 Perpétuelle
    OS
    Windows 10 64bits
    Messages
    1 093
    Vérikoul !

    Ce serait top si les UV supplémentaires pouvaient être identifiés comme UV 2 ou UV 3 par le plugin Octane...
    "One cross each." (Monty Python, The life of Brian)
    C4D 21 - Octane C4D plug - 3 x GTX980, 2 x RTX2070 - Intel i7 6850

  12. #12
    Pilier Avatar de user4D
    Date d'inscription
    août 2006
    Messages
    1 708
    C'est nul


  13. #13
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Content que ça aide. ^^

    Pas de version R14 prévue, désolé, mais le code source étant dispo, si quelqu'un a une R14 et veut tenter de le compiler, pourquoi pas. Je ferai une annonce générale sur CGSociety quand j'aurai fait les versions Mac, peut-être samedi prochain.

    J'ai pas le module Octane sous la main mais y a pas de raison que ça ne marche pas dedans, à priori. : o
    Dernière modification par César Vonc ; 23/05/2016 à 23h28.

  14. #14
    Big Boss Avatar de yayaprod
    Date d'inscription
    mai 2006
    C4D version
    R13 Studio
    OS
    OS Walking Dead ?
    Messages
    6 010
    Les détails font la perfection, et la perfection n'est pas un détail.
    LdV.
    http://yayaprodtm.cgsociety.org/

  15. #15
    Gourou Avatar de Luc
    Date d'inscription
    juillet 2002
    C4D version
    R17 Studio
    OS
    Mac OS 10.10.5
    Messages
    3 355
    C'est top César, mais moi aussi j'attends la version Mac
    MacPro 12 cores - C4D R16 Studio - VrayForC4D - ZBrush4.
    L'urgent est déjà parti, l'impossible est en train de se faire, pour les miracles nous demandons 24 heures.
    A l'an qué vein.

  16. #16
    Pilier Avatar de gr4ph0s
    Date d'inscription
    mai 2013
    C4D version
    R16 Studio
    OS
    win 7 X64
    Messages
    964
    J'ai une R13 qui traîne, ton code est compatible r13?
    Je préfère demander plutôt que de me lancer dans un truc qui va me mettre 10h ^^

    Si oui alors ça me dérange pas de la compiler pour la R13

    Pour le C++ je m'y mettrais quand j'en aurais vraiment l'utilité actuellement je suis plus un bidouilleur qu'autre chose, ça se saurais si je faisais des choses sérieuses voyons ^^.
    SDK Specialist
    MAXON Computer GmbH

  17. #17
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Version Mac disponible pour R15 à R17 !


    Aucune idée pour la compatibilité, mais si t'as jamais fait de C ni de C++, alors tu risques peut-être de galérer un moment si jamais le code n'est pas compatible. ^^

    Enfin, la première fois que j'ai compilé sur la R13 j'ai eu une quantité incroyable de problèmes, heureusement que Val était là pour m'aider.


    T'embête pas, c'est déjà pas mal d'avoir une version aussi vieille que la R15.


    On pourrait peut-être s'organiser pour se partager des machines virtuelles Windows et OSX prêtes à compiler pour toutes versions de C4D, mais ce serait moyennement légal sur un forum, je pense.
    Dernière modification par César Vonc ; 28/05/2016 à 14h56.

  18. #18
    Gourou Avatar de valkaari
    Date d'inscription
    mai 2009
    C4D version
    Autre
    OS
    OSX / windows
    Messages
    2 949
    Pour répondre à la question "pourquoi la r15" (puisque certains doivent s'interroger)

    La r15 a apporté beaucoup de modification dans le SDK notamment sur le changement de nom de type de données

    Sachant qu'il y a régulièrement des modifications dans le SDK, il n'est pas rare de devoir écrire des parties de code en double suivant la version. (voir triple)

    C'est déjà beaucoup de boulot, donc pour réduire on limite la compatibilité.

    Pour ce qui est de la machine virtuelle c'est surtout au niveau de l'OS que la légalité vas poser problème. Pour cinema4D il me semble que la version démo suffit pour compiler un plugin.

  19. #19
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Oui d'ailleurs j'ai remarqué une légère différence entre la R17 et la R15 au niveau du RayObject :

    Dans la R17 cd->vd->op est un const RayObject*, or dans la R15, c'est un RayObject*, c'est pas grand chose, certes !



    Au fait, quelqu'un pourrait-il me confirmer que le module fonctionne avec Octane (version intégrée à c4d) ?

  20. #20
    Pilier Avatar de atome451
    Date d'inscription
    mars 2004
    C4D version
    R21 Perpétuelle
    OS
    Windows 10 64bits
    Messages
    1 093
    Citation Envoyé par César Vonc Voir le message
    Au fait, quelqu'un pourrait-il me confirmer que le module fonctionne avec Octane (version intégrée à c4d) ?
    J'arrive à le faire fonctionner sans problème avec le moteur de C4D mais avec Octane, rien à faire... du moins avec la version 3 et le Live viewer. Je ne dois pas m'y prendre comme il faut.
    "One cross each." (Monty Python, The life of Brian)
    C4D 21 - Octane C4D plug - 3 x GTX980, 2 x RTX2070 - Intel i7 6850

  21. #21
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Pas impossible que ça ne fonctionne pas, je n'ai pas essayé de mon côté car je n'ai pas le module Octane, donc si tu me dis que ça ne marche pas, je te crois. ^^

    Dommage, ceci dit, j'ai bien peur de ne rien pouvoir y faire.

  22. #22
    Pilier Avatar de Floc
    Date d'inscription
    novembre 2012
    C4D version
    R15 Studio
    OS
    WindOSX
    Messages
    1 617
    Ça ne fonctionne pas de mon coté non plus avec Octane 2.25 et R15.
    Mais ca parait plutôt normal vu que même les shaders standard de c4d ne fonctionnent pas tous.

    Il faudrait peut être faire une petite requête à Aoktar, histoire que si des fois ça serait pas trop compliqué il fasse qu'octane voit le plug, parce que là pour le coup c'est vraiment dommage.

    Sinon une question au passage. Ça serait pas plus logique de renseigner directement les tag UVW dans le champ du tag ?
    Bon, mais je suppose que si t'as fait comme ça, il y a une bonne raison.

  23. #23
    Gourou Avatar de César Vonc
    Date d'inscription
    avril 2006
    C4D version
    Autre
    OS
    Windows 10
    Messages
    2 483
    Faut voir, faudrait que les matériaux du module Octane soit plus compatible avec plus d'effets de C4D. Est-ce que, par exemple, les effets de transformation / distorsion de la matière Calques fonctionne dans Octane ?

    Sinon une question au passage. Ça serait pas plus logique de renseigner directement les tag UVW dans le champ du tag ?
    Bon, mais je suppose que si t'as fait comme ça, il y a une bonne raison.
    C'est ce que j'avais fait au début, oui, mais ça posait problème car lors du rendu, les propriétés UVW non utilisées par une propriété Texture sont tout simplement ignorées et donc inaccessibles si on veut les récupérer ses coordonnées UV dans un matériau.

    Citation Envoyé par S. Bach, un dev de C4D
    In Cinema 4D you can assign multiple UVW tags to an object. But the data you get from the VolumeData object is only the data relevant for rendering.So you can add multiple UVW tags but using VolumeData and RayObject you can only access the UVW data that is actually used by a material; UVW data not used by a material is ignored.
    http://www.plugincafe.com/forum/foru...ID=44895#44895


    Donc pour que la propriété UVW ne soit pas ignorée, il faut forcément la lier à une propriété Texture. Et pour rendre ça obligatoire de mon côté, j'ai donc utilisé la propriété Texture comme moyen de renseigner l'UV à choisir.

    Remarque, on peut comme ça utiliser ses propriétés, comme la répétition, la taille, et même d'autres modes de projection que UVW (même si ce dernier point était déjà possible avec la matière Projection).


    Voilà pour la petite histoire.
    Dernière modification par César Vonc ; 30/05/2016 à 23h45.

  24. #24
    Pilier Avatar de gr4ph0s
    Date d'inscription
    mai 2013
    C4D version
    R16 Studio
    OS
    win 7 X64
    Messages
    964
    Petite question offTopic y'a t'il moyen de récupérer le link du BaseMaterial quand on à un BaseShader(je sais qu'avec un getMain() on obtient le material mais pas le link)

    Quand je dis link je veux dire par exemple [c4d.MATERIAL_COLOR_SHADER]?

    Effectivement j'avais oublié le changement de la R15 héhé faut dire que je suis un tout nouveau moi :p
    Pour ce qui est de windows je sais qu'un moment on pouvais téléchargé windows gratuitement, mais bien sur celui-ci n'étais pas activé. Ceci pourrais être une solution? A voir si cela existe toujours, je crosi que depuis win 8.1 même pour télécharger un .iso il faut une clé CD :/
    Dernière modification par gr4ph0s ; 31/05/2016 à 01h14.
    SDK Specialist
    MAXON Computer GmbH

  25. #25
    Pilier Avatar de Floc
    Date d'inscription
    novembre 2012
    C4D version
    R15 Studio
    OS
    WindOSX
    Messages
    1 617
    Citation Envoyé par César Vonc Voir le message
    Est-ce que, par exemple, les effets de transformation / distorsion de la matière Calques fonctionne dans Octane ?
    Oui. A condition d'utiliser un shader "imageTexture" d'octane et pas le shader bitmap de c4d. Mais de toute façon les layers ne fonctionnes avec des images qu'a cette condition.
    Du coup j'ai quand même tenté matiereUV uniquement avec Matériau et shader Octane mais pas concluant non plus.

    L'effet projector ne fonctionne pas non plus, mais ce n'est pas très étonnant vu qu'il a fait un module équivalent.

  26. #26
    Pilier Avatar de gr4ph0s
    Date d'inscription
    mai 2013
    C4D version
    R16 Studio
    OS
    win 7 X64
    Messages
    964
    Citation Envoyé par Floc Voir le message
    Oui. A condition d'utiliser un shader "imageTexture" d'octane et pas le shader bitmap de c4d. Mais de toute façon les layers ne fonctionnes avec des images qu'a cette condition.
    Sa tombe bien j'ai justement fait un script pour convertir tout les bitmap C4D en imageTexture des materiaux selectionné!
    Bon pour le moment ça fonctionne que si les noeud d'image est connecté directement au material (par exemple un bitmap => color correction => material ne fonctionnera pas).
    Code:
    import c4d
    #-- Gr4ph0s
    # visit graphos.fr
    
    
    def getEntry(mat):
        buffer = []
        try :
            diffuse = mat[c4d.OCT_MATERIAL_DIFFUSE_LINK]
            if diffuse.CheckType(5833):
                buffer.append([1,diffuse[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            roughness = mat[c4d.OCT_MATERIAL_ROUGHNESS_LINK]
            if roughness.CheckType(5833):
                buffer.append([2,roughness[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            bump = mat[c4d.OCT_MATERIAL_BUMP_LINK]
            if bump.CheckType(5833):
                buffer.append([3,bump[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            normal = mat[c4d.OCT_MATERIAL_NORMAL_LINK]
            if normal.CheckType(5833):
                buffer.append([4,normal[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            displace = mat[c4d.OCT_MATERIAL_DISPLACEMENT_LINK]
            if displace.CheckType(5833):
                buffer.append([5,displace[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            opacity = mat[c4d.OCT_MATERIAL_OPACITY_LINK]
            if opacity.CheckType(5833):
                buffer.append([6,opacity[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            transmission = mat[c4d.OCT_MATERIAL_TRANSMISSION_LINK]
            if transmission.CheckType(5833):
                buffer.append([7,transmission[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            emission = mat[c4d.OCT_MATERIAL_EMISSION]
            if emission.CheckType(5833):
                buffer.append([8,emission[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            medium = mat[c4d.OCT_MATERIAL_MEDIUM]
            if medium.CheckType(5833):
                buffer.append([9,medium[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            specular = mat[c4d.OCT_MATERIAL_SPECULAR_LINK]
            if medium.CheckType(5833):
                buffer.append([10,specular[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            filmwidth = mat[c4d.OCT_MATERIAL_FILMWIDTH_LINK]
            if filmwidth.CheckType(5833):
                buffer.append([11,filmwidth[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
        try :
            reflection = mat[c4d.OCT_MATERIAL_REFLECTION_LINK]
            if reflection.CheckType(5833):
                buffer.append([12,reflection[c4d.BITMAPSHADER_FILENAME]]) 
        except:
            pass
            
        return buffer
    
        
    def remplaceEntry(mat,data):
        for i in xrange(0,len(data)):
            id = data[i][0]
            imageTexture = c4d.BaseShader(1029508)
            if id == 1:
                path = mat[c4d.OCT_MATERIAL_DIFFUSE_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_DIFFUSE_LINK] = imageTexture
            if id == 2:
                path = mat[c4d.OCT_MATERIAL_ROUGHNESS_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_ROUGHNESS_LINK] = imageTexture
            if id == 3:
                path = mat[c4d.OCT_MATERIAL_BUMP_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_BUMP_LINK] = imageTexture
            if id == 4:
                path = mat[c4d.OCT_MATERIAL_NORMAL_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_NORMAL_LINK] = imageTexture
            if id == 5:
                path = mat[c4d.OCT_MATERIAL_DISPLACEMENT_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_DISPLACEMENT_LINK] = imageTexture
            if id == 6:
                path = mat[c4d.OCT_MATERIAL_OPACITY_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_OPACITY_LINK] = imageTexture
            if id == 7:
                path = mat[c4d.OCT_MATERIAL_TRANSMISSION_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_TRANSMISSION_LINK] = imageTexture
            if id == 8:
                path = mat[c4d.OCT_MATERIAL_EMISSION][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_EMISSION] = imageTexture
            if id == 9:
                path = mat[c4d.OCT_MATERIAL_MEDIUM][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_MEDIUM] = imageTexture  
            if id == 10:
                path = mat[c4d.OCT_MATERIAL_SPECULAR_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_SPECULAR_LINK] = imageTexture  
            if id == 11:
                path = mat[c4d.OCT_MATERIAL_FILMWIDTH_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_FILMWIDTH_LINK] = imageTexture  
            if id == 12:
                path = mat[c4d.OCT_MATERIAL_REFLECTION_LINK][c4d.BITMAPSHADER_FILENAME]
                imageTexture[c4d.IMAGETEXTURE_FILE] = path
                mat[c4d.OCT_MATERIAL_REFLECTION_LINK] = imageTexture      
    
    
        
            mat.InsertShader(imageTexture )
            mat.Message(c4d.MSG_UPDATE)
            mat.Update(True, True)
    
    
    def main():
        allMat = doc.GetActiveMaterials()
        for mat in allMat:
            data = getEntry(mat)
            remplaceEntry(mat,data)
            mat = mat.GetNext()
            
        c4d.EventAdd()    
    
    
    if __name__=='__main__':
        main()
    D'où ma question dans mon post d'avant ça éviterais de faire ces checks un peu fastidieux :p !
    Dernière modification par gr4ph0s ; 31/05/2016 à 02h17.
    SDK Specialist
    MAXON Computer GmbH

Discussions similaires

  1. UV Vonc
    Par César Vonc dans le forum Plugins made in FC4D
    Réponses: 83
    Dernier message: 07/12/2018, 00h29
  2. Article : Dépliage - Plugin de César Vonc
    Par Aurety dans le forum Les news
    Réponses: 6
    Dernier message: 01/03/2015, 19h50
  3. Article : TexTerrain Code Vonc
    Par Paradox dans le forum Les news
    Réponses: 0
    Dernier message: 24/09/2014, 10h09
  4. Article : UV Vonc version 1.0
    Par Paradox dans le forum Les news
    Réponses: 0
    Dernier message: 30/05/2014, 17h07
  5. Perceuse plugin - César Vonc
    Par Paradox dans le forum Les news
    Réponses: 0
    Dernier message: 10/07/2013, 11h24

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