(1) 2 »


Convertir les matériaux du Blender Render vers Cycles
Touriste
Inscrit:
22/02/2017 15:17
Post(s): 7
IN FRENCH :
Bonjour à tous ! Je cherche une solution me permettant de convertir tous les matériaux du Blender Render vers Cycles Render. Quelqu'un peut-il m'aider ? J'utilise la version 2.78.
Merci d'avance

IN ENGLISH
Hello everyone ! I am looking for a solution allowing me to convert all materials from Blender Render to Cycles Render. Can anyone help me? I'm using version 2.78.
Thank you in advance.

Contribution le : 22/02/2017 15:20
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
Touriste
Inscrit:
22/02/2017 15:17
Post(s): 7
UP

Contribution le : 23/02/2017 17:32
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
Fou Furieux du Clan
Inscrit:
09/09/2012 12:47
Post(s): 202
Je ne crois pas qu'on puisse le faire... Il te faudra refaire les matériaux. Ils sont trop différents dans leurs réglages. Avec Render, on pouvait aisément passer par l'interface. Pour Cycles, même si l'on peut le faire par l'interface, il est nettement plus commode de passer par l'édition nodale.

Contribution le : 23/02/2017 17:57
_________________
Mon site
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
OverdOzed
Inscrit:
26/07/2003 17:24
De Bordeaux
Post(s): 1431

Contribution le : 23/02/2017 17:59
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
Touriste
Inscrit:
22/02/2017 15:17
Post(s): 7
Merci, seconde question… comment fait-on pour installer ce script ?
C'est une partie de Blender que je ne maitrise pas :-/
Merci d'avance

Contribution le : 15/03/2017 15:44
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
OverdOzed
Inscrit:
24/07/2009 12:01
De 91190 Gif sur Yvette
Post(s): 754
Salut,
Le lien est rompu, donc je te suggères de faire comme ceci :
Tu copies le script qui est dans l'encart et tu le colles dans le Bloc note de Windows en .Py
Ensuite dans Blender tu vas dans les User Preferences, onglet Addons.
En bas à gauche tu clicques sur Install from file et tu vas chercher ton fichier en .Py
Une fois chargé tu le cherches dans la liste et tu le coches. Enfin tu clicques sur le petit triangle blanc à gauche et tu lis le mode d'emplois.

Contribution le : 16/03/2017 12:47
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
Touriste
Inscrit:
22/02/2017 15:17
Post(s): 7
Ah merci, voilà la réponse que j'attendais.
T'es top

Contribution le : 05/04/2017 13:47
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
Touriste
Inscrit:
22/02/2017 15:17
Post(s): 7
Voici la dernière mise à jour du script à intégrer :
--------------------


# convert_materials_to_cycles.py
#
# Copyright (C) 5-mar-2012, Silvio Falcinelli. Fixes by others.
#
# special thanks to user blenderartists.org cmomoney
#
# ***** BEGIN GPL LICENSE BLOCK *****
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# ***** END GPL LICENCE BLOCK *****

bl_info = {
"name": "Convert Materials to Cycles",
"author": "Silvio Falcinelli, updates by community",
"version": (0, 11, 1),
"blender": (2, 71, 0),
"location": "Properties > Material > Convert to Cycles",
"description": "Convert non-nodes materials to Cycles",
"warning": "beta",
"wiki_url": "http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Material/Blender_Cycles_Materials_Converter",
"category": "Material"}


import bpy
import math
from math import log
from math import pow
from math import exp
import os.path

def AutoNodeOff():
mats = bpy.data.materials
for cmat in mats:
cmat.use_nodes = False
bpy.context.scene.render.engine = 'BLENDER_RENDER'

def BakingText(tex, mode):
print('________________________________________')
print('INFO start bake texture ' + tex.name)
bpy.ops.object.mode_set(mode='OBJECT')
sc = bpy.context.scene
tmat = ''
img = ''
Robj = bpy.context.active_object
for n in bpy.data.materials:
if n.name == 'TMP_BAKING':
tmat = n
if not tmat:
tmat = bpy.data.materials.new('TMP_BAKING')
tmat.name = "TMP_BAKING"

bpy.ops.mesh.primitive_plane_add()
tm = bpy.context.active_object
tm.name = "TMP_BAKING"
tm.data.name = "TMP_BAKING"
bpy.ops.object.select_pattern(extend=False, pattern="TMP_BAKING", case_sensitive=False)
sc.objects.active = tm
bpy.context.scene.render.engine = 'BLENDER_RENDER'
tm.data.materials.append(tmat)
if len(tmat.texture_slots.items()) == 0:
tmat.texture_slots.add()
tmat.texture_slots[0].texture_coords = 'UV'
tmat.texture_slots[0].use_map_alpha = True
tmat.texture_slots[0].texture = tex.texture
tmat.texture_slots[0].use_map_alpha = True
tmat.texture_slots[0].use_map_color_diffuse = False
tmat.use_transparency = True
tmat.alpha = 0
tmat.use_nodes = False
tmat.diffuse_color = 1, 1, 1
bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.uv.unwrap()

for n in bpy.data.images:
if n.name == 'TMP_BAKING':
n.user_clear()
bpy.data.images.remove(n)

if mode == "ALPHA" and tex.texture.type == 'IMAGE':
sizeX = tex.texture.image.size[0]
sizeY = tex.texture.image.size[1]
else:
sizeX = 600
sizeY = 600
bpy.ops.image.new(name="TMP_BAKING", width=sizeX, height=sizeY, color=(0.0, 0.0, 0.0, 1.0), alpha=True, float=False)
bpy.data.screens['UV Editing'].areas[1].spaces[0].image = bpy.data.images["TMP_BAKING"]
sc.render.engine = 'BLENDER_RENDER'
img = bpy.data.images["TMP_BAKING"]
img = bpy.data.images.get("TMP_BAKING")
img.file_format = "JPEG"
if mode == "ALPHA" and tex.texture.type == 'IMAGE':
img.filepath_raw = tex.texture.image.filepath + "_BAKING.jpg"

else:
img.filepath_raw = tex.texture.name + "_PTEXT.jpg"

sc.render.bake_type = 'ALPHA'
sc.render.use_bake_selected_to_active = True
sc.render.use_bake_clear = True
bpy.ops.object.bake_image()
img.save()
bpy.ops.object.mode_set(mode='OBJECT')
bpy.ops.object.delete()
bpy.ops.object.select_pattern(extend=False, pattern=Robj.name, case_sensitive=False)
sc.objects.active = Robj
img.user_clear()
bpy.data.images.remove(img)
bpy.data.materials.remove(tmat)

# print('INFO : end Bake ' + img.filepath_raw )
print('________________________________________')

def AutoNode(active=False):

sc = bpy.context.scene

if active:

mats = bpy.context.active_object.data.materials

else:

mats = bpy.data.materials


for cmat in mats:
cmat.use_nodes = True
TreeNodes = cmat.node_tree
links = TreeNodes.links

# Don't alter nodes of locked materials
locked = False
for n in TreeNodes.nodes:
if n.type == 'ShaderNodeOutputMaterial':
if n.label == 'Locked':
locked = True
break

if not locked:
# Convert this material from non-nodes to Cycles nodes

shader = ''
shmix = ''
shtsl = ''
Add_Emission = ''
Add_Translucent = ''
Mix_Alpha = ''
sT = False

for n in TreeNodes.nodes:
TreeNodes.nodes.remove(n)

# Starting point is diffuse BSDF and output material
shader = TreeNodes.nodes.new('ShaderNodeBsdfDiffuse')
shader.location = 0, 470
shout = TreeNodes.nodes.new('ShaderNodeOutputMaterial')
shout.location = 200, 400
links.new(shader.outputs[0], shout.inputs[0])

sM = True
for tex in cmat.texture_slots:
if tex:
if tex.use:
if tex.use_map_alpha:
sM = False
if sc.EXTRACT_ALPHA:
if tex.texture.type == 'IMAGE' and tex.texture.use_alpha:
if not os.path.exists(bpy.path.abspath(tex.texture.image.filepath + "_BAKING.jpg")) or sc.EXTRACT_OW:
BakingText(tex, 'ALPHA')
else:
if not tex.texture.type == 'IMAGE':
if not os.path.exists(bpy.path.abspath(tex.texture.name + "_PTEXT.jpg")) or sc.EXTRACT_OW:
BakingText(tex, 'PTEXT')

cmat_is_transp = cmat.use_transparency and cmat.alpha < 1

if cmat_is_transp and cmat.raytrace_transparency.ior == 1 and not cmat.raytrace_mirror.use and sM:
if not shader.type == 'ShaderNodeBsdfTransparent':
print("INFO: Make TRANSPARENT shader node " + cmat.name)
TreeNodes.nodes.remove(shader)
shader = TreeNodes.nodes.new('ShaderNodeBsdfTransparent')
shader.location = 0, 470
links.new(shader.outputs[0], shout.inputs[0])

if not cmat.raytrace_mirror.use and not cmat_is_transp:
if not shader.type == 'ShaderNodeBsdfDiffuse':
print("INFO: Make DIFFUSE shader node" + cmat.name)
TreeNodes.nodes.remove(shader)
shader = TreeNodes.nodes.new('ShaderNodeBsdfDiffuse')
shader.location = 0, 470
links.new(shader.outputs[0], shout.inputs[0])

if cmat.raytrace_mirror.use and cmat.raytrace_mirror.reflect_factor > 0.001 and cmat_is_transp:
if not shader.type == 'ShaderNodeBsdfGlass':
print("INFO: Make GLASS shader node" + cmat.name)
TreeNodes.nodes.remove(shader)
shader = TreeNodes.nodes.new('ShaderNodeBsdfGlass')
shader.location = 0, 470
links.new(shader.outputs[0], shout.inputs[0])

if cmat.raytrace_mirror.use and not cmat_is_transp and cmat.raytrace_mirror.reflect_factor > 0.001 :
if not shader.type == 'ShaderNodeBsdfGlossy':
print("INFO: Make MIRROR shader node" + cmat.name)
TreeNodes.nodes.remove(shader)
shader = TreeNodes.nodes.new('ShaderNodeBsdfGlossy')
shader.location = 0, 520
links.new(shader.outputs[0], shout.inputs[0])

if cmat.emit > 0.001 :
if not shader.type == 'ShaderNodeEmission' and not cmat.raytrace_mirror.reflect_factor > 0.001 and not cmat_is_transp:
print("INFO: Mix EMISSION shader node" + cmat.name)
TreeNodes.nodes.remove(shader)
shader = TreeNodes.nodes.new('ShaderNodeEmission')
shader.location = 0, 450
links.new(shader.outputs[0], shout.inputs[0])
else:
if not Add_Emission:
print("INFO: Add EMISSION shader node" + cmat.name)
shout.location = 550, 330
Add_Emission = TreeNodes.nodes.new('ShaderNodeAddShader')
Add_Emission.location = 370, 490

shem = TreeNodes.nodes.new('ShaderNodeEmission')
shem.location = 180, 380

links.new(Add_Emission.outputs[0], shout.inputs[0])
links.new(shem.outputs[0], Add_Emission.inputs[1])
links.new(shader.outputs[0], Add_Emission.inputs[0])

shem.inputs['Color'].default_value = cmat.diffuse_color.r, cmat.diffuse_color.g, cmat.diffuse_color.b, 1
shem.inputs['Strength'].default_value = cmat.emit

if cmat.translucency > 0.001 :
print("INFO: Add BSDF_TRANSLUCENT shader node" + cmat.name)
shout.location = 770, 330
Add_Translucent = TreeNodes.nodes.new('ShaderNodeAddShader')
Add_Translucent.location = 580, 490

shtsl = TreeNodes.nodes.new('ShaderNodeBsdfTranslucent')
shtsl.location = 400, 350

links.new(Add_Translucent.outputs[0], shout.inputs[0])
links.new(shtsl.outputs[0], Add_Translucent.inputs[1])

if Add_Emission:
links.new(Add_Emission.outputs[0], Add_Translucent.inputs[0])
pass
else:
links.new(shader.outputs[0], Add_Translucent.inputs[0])
pass
shtsl.inputs['Color'].default_value = cmat.translucency, cmat.translucency, cmat.translucency, 1

shader.inputs['Color'].default_value = cmat.diffuse_color.r, cmat.diffuse_color.g, cmat.diffuse_color.b, 1

if shader.type == 'ShaderNodeBsdfDiffuse':
shader.inputs['Roughness'].default_value = cmat.specular_intensity

if shader.type == 'ShaderNodeBsdfGlossy':
shader.inputs['Roughness'].default_value = 1 - cmat.raytrace_mirror.gloss_factor

if shader.type == 'ShaderNodeBsdfGlass':
shader.inputs['Roughness'].default_value = 1 - cmat.raytrace_mirror.gloss_factor
shader.inputs['IOR'].default_value = cmat.raytrace_transparency.ior

if shader.type == 'ShaderNodeEmission':
shader.inputs['Strength'].default_value = cmat.emit

for tex in cmat.texture_slots:
sT = False
pText = ''
if tex:
if tex.use:
if tex.texture.type == 'IMAGE':
img = tex.texture.image
shtext = TreeNodes.nodes.new('ShaderNodeTexImage')
shtext.location = -200, 400
shtext.image = img
sT = True

if not tex.texture.type == 'IMAGE':
if sc.EXTRACT_PTEX:
print('INFO : Extract Procedural Texture ')
if not os.path.exists(bpy.path.abspath(tex.texture.name + "_PTEXT.jpg")) or sc.EXTRACT_OW:
BakingText(tex, 'PTEX')

img = bpy.data.images.load(tex.texture.name + "_PTEXT.jpg")
shtext = TreeNodes.nodes.new('ShaderNodeTexImage')
shtext.location = -200, 400
shtext.image = img
sT = True
if sT:
if tex.use_map_color_diffuse :
links.new(shtext.outputs[0], shader.inputs[0])

if tex.use_map_emit:
if not Add_Emission:
print("INFO: Mix EMISSION + Texture shader node " + cmat.name)

intensity = 0.5 + (tex.emit_factor / 2)

shout.location = 550, 330
Add_Emission = TreeNodes.nodes.new('ShaderNodeAddShader')
Add_Emission.name = "Add_Emission"
Add_Emission.location = 370, 490

shem = TreeNodes.nodes.new('ShaderNodeEmission')
shem.location = 180, 380

links.new(Add_Emission.outputs[0], shout.inputs[0])
links.new(shem.outputs[0], Add_Emission.inputs[1])
links.new(shader.outputs[0], Add_Emission.inputs[0])

shem.inputs['Color'].default_value = cmat.diffuse_color.r, cmat.diffuse_color.g, cmat.diffuse_color.b, 1
shem.inputs['Strength'].default_value = intensity * 2

links.new(shtext.outputs[0], shem.inputs[0])

if tex.use_map_mirror:
links.new(shader.inputs[0], shtext.outputs[0])

if tex.use_map_translucency:
if not Add_Translucent:
print("INFO: Add Translucency + Texture shader node " + cmat.name)

intensity = 0.5 + (tex.emit_factor / 2)

shout.location = 550, 330
Add_Translucent = TreeNodes.nodes.new('ShaderNodeAddShader')
Add_Translucent.name = "Add_Translucent"
Add_Translucent.location = 370, 290

shtsl = TreeNodes.nodes.new('ShaderNodeBsdfTranslucent')
shtsl.location = 180, 240

links.new(shtsl.outputs[0], Add_Translucent.inputs[1])

if Add_Emission:
links.new(Add_Translucent.outputs[0], shout.inputs[0])
links.new(Add_Emission.outputs[0], Add_Translucent.inputs[0])
pass
else:
links.new(Add_Translucent.outputs[0], shout.inputs[0])
links.new(shader.outputs[0], Add_Translucent.inputs[0])

links.new(shtext.outputs[0], shtsl.inputs[0])

if tex.use_map_alpha:
if not Mix_Alpha:
print("INFO: Mix Alpha + Texture shader node " + cmat.name)

shout.location = 750, 330
Mix_Alpha = TreeNodes.nodes.new('ShaderNodeMixShader')
Mix_Alpha.name = "Add_Alpha"
Mix_Alpha.location = 570, 290
sMask = TreeNodes.nodes.new('ShaderNodeBsdfTransparent')
sMask.location = 250, 180
tMask = TreeNodes.nodes.new('ShaderNodeTexImage')
tMask.location = -200, 250

if tex.texture.type == 'IMAGE':
# if tex.texture.use_alpha:
# imask=bpy.data.images.load(img.filepath+"_BAKING.jpg")
# else:
imask = bpy.data.images.load(img.filepath)
else:
imask = bpy.data.images.load(img.name)

tMask.image = imask
links.new(Mix_Alpha.inputs[0], tMask.outputs[1])
links.new(shout.inputs[0], Mix_Alpha.outputs[0])
links.new(sMask.outputs[0], Mix_Alpha.inputs[1])

if not Add_Emission and not Add_Translucent:
links.new(Mix_Alpha.inputs[2], shader.outputs[0])

if Add_Emission and not Add_Translucent:
links.new(Mix_Alpha.inputs[2], Add_Emission.outputs[0])

if Add_Translucent:
links.new(Mix_Alpha.inputs[2], Add_Translucent.outputs[0])

if tex.use_map_normal:
t = TreeNodes.nodes.new('ShaderNodeRGBToBW')
t.location = -0, 300
links.new(t.outputs[0], shout.inputs[2])
links.new(shtext.outputs[0], t.inputs[0])
bpy.context.scene.render.engine = 'CYCLES'

class mllock(bpy.types.Operator):
bl_idname = "ml.lock"
bl_label = "Lock"
bl_description = "Lock/unlock this material against modification by conversions"
bl_register = True
bl_undo = True

@classmethod
def poll(cls, context):
return True

def execute(self, context):
cmat = bpy.context.selected_objects[0].active_material
TreeNodes = cmat.node_tree
for n in TreeNodes.nodes:
if n.type == 'ShaderNodeOutputMaterial':
if n.label == 'Locked':
n.label = ''
else:
n.label = 'Locked'
return {'FINISHED'}

class mlrefresh(bpy.types.Operator):
bl_idname = "ml.refresh"
bl_label = "Convert All Materials"
bl_description = "Convert all materials in the scene from non-nodes to Cycles"
bl_register = True
bl_undo = True

@classmethod
def poll(cls, context):
return True

def execute(self, context):
AutoNode()
bpy.ops.object.editmode_toggle()
bpy.ops.uv.unwrap(method='ANGLE_BASED', margin=0.001)
bpy.ops.object.editmode_toggle()

return {'FINISHED'}

class mlrefresh_active(bpy.types.Operator):
bl_idname = "ml.refresh_active"
bl_label = "Convert All Materials From Active Object"
bl_description = "Convert all materials from actice object from non-nodes to Cycles"
bl_register = True
bl_undo = True

@classmethod
def poll(cls, context):
return True

def execute(self, context):
AutoNode(True)
bpy.ops.object.editmode_toggle()
bpy.ops.uv.unwrap(method='ANGLE_BASED', margin=0.001)
bpy.ops.object.editmode_toggle()
return {'FINISHED'}

class mlrestore(bpy.types.Operator):
bl_idname = "ml.restore"
bl_label = "Restore"
bl_description = "Switch Back to Blender Internal Nodes Off"
bl_register = True
bl_undo = True
@classmethod
def poll(cls, context):
return True
def execute(self, context):
AutoNodeOff()
return {'FINISHED'}

from bpy.props import *
sc = bpy.types.Scene
sc.EXTRACT_ALPHA = BoolProperty(attr="EXTRACT_ALPHA", default=False)
sc.EXTRACT_PTEX = BoolProperty(attr="EXTRACT_PTEX", default=False)
sc.EXTRACT_OW = BoolProperty(attr="Overwrite", default=False, description="Extract textures again instead of re-using priorly extracted textures")


class OBJECT_PT_scenemassive(bpy.types.Panel):
bl_label = "Convert BI Materials to Cycles"
bl_space_type = "PROPERTIES"
bl_region_type = "WINDOW"
bl_context = "material"

def draw(self, context):
sc = context.scene
layout = self.layout
row = layout.row()
box = row.box()
box.operator("ml.refresh", text='Convert All to Cycles', icon='MATERIAL')
box.operator("ml.refresh_active", text='Convert Active to Cycles', icon='MATERIAL')
box.operator("ml.restore", text='To BI Nodes Off', icon='MATERIAL')
row = layout.row()
box = row.box()
box.label(text = 'Blender Internal Texture (One Per Object)')
box.prop(sc, "EXTRACT_ALPHA", text='Extract Alpha Textures (slow)')
box.prop(sc, "EXTRACT_PTEX", text='Extract Procedural Textures (slow)')
box.prop(sc, "EXTRACT_OW", text='Re-extract Textures')

'''
# Locking of nodes objects
try:
cmat = bpy.context.selected_objects[0].active_material
TreeNodes = cmat.node_tree # throws exception for non-nodes mats
locked = False
for n in TreeNodes.nodes: # throws exception if no node mat
if n.type == 'ShaderNodeOutputMaterial':
if n.label == 'Locked':
locked = True
break

row = layout.row()
row.label(text="Selected: " + cmat.name, icon=("LOCKED" if locked else "UNLOCKED"))
row.operator("ml.lock", text=("Unlock" if locked else "Lock"))
except:
pass
'''
def register():
bpy.utils.register_module(__name__)
pass

def unregister():
bpy.utils.unregister_module(__name__)
pass

if __name__ == "__main__":
register()

Contribution le : 05/04/2017 14:13
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
OverdOzed
Inscrit:
23/07/2008 20:52
Post(s): 573
-

Contribution le : 05/04/2017 15:08
Créer un fichier PDF de la contribution Imprimer


Re: Convertir les matériaux du Blender Render vers Cycles
OverdOzed
Inscrit:
30/12/2011 15:44
Post(s): 566
Citation :

#Tout plein de lignes dedans



Ton copier coller est complètement inutile : L'indentation (l'utilisation d'espace et de tabulation) est impératif sur l'utilisation de Python.

Contribution le : 06/04/2017 09:36
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
(1) 2 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
The Blender Clan 'tchat Avenir du blender clan    [1][2][3]...[44] 435 63337 Aujourd'hui 08:21:07
Redstar 
Hors Sujet !! Buy (50 Pieces) Samsung Galaxy Tab S8+ 12.4-inch display Original Wi-Fi 256GB $27,500 0 22 Hier 14:13:51
emailychang01 
Hors Sujet !! Buy (20 Pieces) New Sony PlayStation 5 Console – Horizon Forbidden West Bundle $8,000 0 45 15/08 14:53:07
emailychang01 
Hors Sujet !! Buy (30 Pcs) Dell - Inspiron 2-in-1 16-Inch 512GB SSD $25,47 0 46 14/08 19:10:12
emailychang01 
Hors Sujet !! les tutos de Moonboots    [1][2][3]...[31] 301 44511 14/08 13:41:53
moonboots 
Hors Sujet !! Buy (100 Pcs) Sunpak 22 Bi-Color Ring Light Vlogging $10,900 0 66 13/08 16:17:37
emailychang01 
Hors Sujet !! Buy (50 Pieces) Cambridge Audio - G2 Mini Portable Bluetooth Speaker - Black $5,950 0 85 12/08 15:43:03
emailychang01 
Hors Sujet !! Buy (50 Pieces) New Samsung Galaxy Z Fold4 256GB Unlocked $64,950 Website: www.brianelectronics.com 0 2088 11/08 14:19:42
emailychang01 
Hors Sujet !! Buy (50 Pieces) Apple iPad Pro 11-Inches 2021 2TB Wifi + Cellular $84,950 0 106 10/08 16:07:53
emailychang01 
Hors Sujet !! Buy (50 Pieces) New Original Unlocked Apple iPhone 13 5G 512GB $34,950 0 142 09/08 14:54:39
emailychang01 
Questions & Réponses Problème alpha sur le rendu 3 204 09/08 13:27:37
debutant 
Hors Sujet !! Buy (30 Pieces) LG - 55-inch Class C2 Series OLED evo 4K UHD Smart webOS TV (2022) $44,970 0 136 08/08 13:58:45
emailychang01 
Hors Sujet !! Buy(30 Pcs) Package Fujifilm-X-S10 Mirrorless Camera $30,570 Website: www.brianelectronics.com 0 148 07/08 15:23:19
emailychang01 
Hors Sujet !! Buy (10 Pieces) Sony - FE 70-200mm F2.8 GM OSS II Full-Frame Telephoto Zoom G Master Lens $24,990 1 83693 06/08 17:16:33
moonboots 
The Blender Clan 'tchat Enfin ! depuis 20 ans :) 2 300 06/08 15:06:57
stefff285 
Hors Sujet !! Buy(50 Pcs) Optoma CinemaX P2 Home Theater Projector $94,950 Website: www.brianelectronics.com 0 23037 05/08 15:34:27
emailychang01 
Hors Sujet !! Buy (50 Pieces) Samsung Galaxy Tab S8+ 8GB 12.4-inch display Original Wi-Fi Only 128GB $22,500 0 18454 04/08 16:14:48
emailychang01 
Hors Sujet !! Buy(50 Pcs) Mac Studio (2022) M1 Ultra 64GB 1TB SSD $174,950 0 257 03/08 17:10:34
emailychang01 
Questions & Réponses problème sur la texture voulue 3 429 03/08 01:56:09
meltingman 
Hors Sujet !! Buy (50 Pcs) HP ENVY 2-in-1 15-ch i7 16GB 512GB SSD $29,950 0 341 02/08 16:29:43
emailychang01 

Qui est en ligne
109 utilisateur(s) en ligne (dont 44 sur Forums)

Membre(s): 2
Invité(s): 107


MarcellaLh, Nikole6507, plus...
Nouveaux membres
LayneFairc 18/8/2022
Alberto098 18/8/2022
MickiLutz 18/8/2022
TressaRobi 18/8/2022
LeonardoE2 18/8/2022
DwightDefa 18/8/2022
CLPShari68 18/8/2022
FallonOToo 18/8/2022
DemetriaFo 18/8/2022
StarlaGuth 18/8/2022
Dernier Ajout
2020-09-24.jpg

Evènements à venir
Sep 8
Anniversaire de ang
Nov 18
Anniversaire de RichDeg
Dec 29
Anniversaire d'ebrain
plus 233 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2021 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445