Resultados 1 al 33 de 33

Bake de normal maps mediante script

  1. #1
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Blender Bake de normal maps mediante script

    Estoy intentando bakear de forma automática los Normal Maps de un Mesh de alta resolución a uno de baja resolución. En la escena tengo 4 Mesh de alta y 4 de baja. Si selecciono manualmente el Mesh high después el Low y ejecuto este código. El Normal Map se bakea correctamente.

    Si se ejecuta correctamente seleccionando manualmente, no entiendo por qué dentro del script, seleccionando los Mesh automáticamente no funciona. Un saludo a todos y gracias por vuestra ayuda y tiempo.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  2. #2
    Fecha de ingreso
    Aug 2004
    Mensajes
    22,267

    Bake de normal maps mediante script

    ¿Y cada plano low, ya tiene creada, la textura de imagen y desplegado el UV correspondiente?
    Por cierto, el Blend que has subido no lleva las texturas Tif empaquetadas.

  3. #3
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Fichero con texturas.

    Si cada plano tiene sus UV desplegadas, con su imagen asignada.

    Este es el error que da en la consola:
    Error: Circular reference in texture stack
    Traceback (most recent call last):
    File I:\catalunyaMetOrtoPru\demOrto\1\bakeNormals_03.bl end\Text, line 23, in
    <module>
    File H:\software\Blender\Blender-2.79-77dccbf-win64\Blender-2.79.0-git.77dccb
    f-Windows64\2.79\scripts\modules\bpy\ops, py, line 189, in __call__
    ret = op_call(self, idname_py(), None, kw)
    RuntimeError: Error: Circular reference in texture stack.

    Error: Python script fail, look in the console for now.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  4. #4
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Buenas, las dos ultimas líneas de código no deben ir indentadas tu las tienes puestas dentro del for, pégalas al principio sin identificación para qué no las ejecute el for, te pongo una captura. Saludos.

    Clic en la imagen para ver su versión completa. 

Nombre: Captura de pantalla (3).png 
Visitas: 11 
Tamaño: 221.9 KB 
ID: 225508

    -- IMÁGENES ADJUNTAS --

  5. #5
    Fecha de ingreso
    Aug 2004
    Mensajes
    22,267

    Bake de normal maps mediante script

    RuntimeError: Error: Circular reference in texture stack.
    Yo no entiendo casi nada de Python, pero el error ese que pone de referencia circular, se refiere a qué cuando hace el Bake, la textura debe estar desactivada para qué no se cree un especie de repetición.

  6. #6
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias a los dos ma;ana lo pruebo y comento.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  7. #7
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Juani si saco esas líneas del for solo me aplicara el bake en la ultima pareja de high y low seleccionada, y yo quiero que lo aplique en todos los pares de high y low.

    Si parece que el error es por eso Solimán.

    Me centro en ese error para ver si lo soluciono.

    Gracias a los dos por vuestro tiempo y ayuda.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  8. #8
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Borro las texturas que he utilizado para crear los mesh, los materiales creados por defecto.

    Creo una textura para las UV para cada mesh Low Poly.

    Ejecuto un script que los seleccione por nombre.

    Pero solo me hace el bake del ultimo mesh.
    ?
    Si selecciono manualmente el Hig y después el low y ejecuto este código funciona correctamente:
    Import bpy, os
    bpy, context, scene, render, bake_type = NoRMALS\nbpy, context, scene, render, use_bake_selected_to_active = True
    bpy, ops, object, bake_image().

    Pero a la qué los selecciono con el script.parece que no es lo mismo seleccionar desde script que hacerlo desde el entorno gráfico. Un saludo.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  9. #9
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Miré a ver cual de los objetos en el script era el activo y siempre me salía el 260-105, entonces lo que hecho ha sido declarar la escena y decir cual de los objetos seleccionados tiene que ser el activo, total 2 líneas de código que me han vuelto loco, pero FUNCIONA.

    Clic en la imagen para ver su versión completa. 

Nombre: Captura de pantalla (4).png 
Visitas: 26 
Tamaño: 281.0 KB 
ID: 225561

    -- IMÁGENES ADJUNTAS --

  10. #10
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias Juani esta noche lo pruebo.

    Mil gracias.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  11. #11
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Funciona.

    Gracias Juani mañana siguiré dándole caña al script y lo colgare para qué se pueda generar el mapa de normales de los ficheros de alturas del terreno.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  12. #12
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Ahora el script importa un mesh en alta otro en baja bakea la textura en el de baja borra todos los mesh.

    Genera un mesh de una calidad media y crea una textura.

    Tengo que conseguir que las texturas del bake se guarden en disco duro y se apliquen al material del mes de calidad media.

    Le estoy dando vueltas a como guardar la imagen del normal con el mismo nombre que el mesh de calidad media, y aplicarlo al material que tiene.

    Juani sabes cómo se indica guardar en disco las texturas del normal map.
    estoy dándole cabezazos con.
    bpy, ops, object, bake(type=COMBINED, pass_filter=set(), filepath=, width=512, height=512, margin=16, use_selected_to_active=False, cage_extrusión=0, cage_object=, normal_space=TANGENT, normal_r=POS_X, normal_g=POS_Y, normal_b=POS_Z, save_mode=INTERNAL, use_clear=False, use_cage=False, use_split_materials=False, use_automatic_name=False, uv_layer=).

    Pero no logro hacerlo. Un saludo a todos y gracias por vuestro tiempo y ayuda.

    Enlace con los ficheros necesarios para probar el script:

    https://mega.nz/#F.T9520AQC.SdiHFxm4yPTeRrQwxmWcw


    Import bpy, os
    bpy, context, scene, render, bake_type = NoRMALS\nbpy, context, scene, render, use_bake_selected_to_active = True
    folder = I:/catalunyaMetOrtoPru/demOrto/1/
    for f in os, listdir(folder):
    pathFiles = folder + f
    basename, ext = os, path, splitext(f)
    if pathFiles, find(\_Dem, tif) >= 1:
    bpy, ops, importgis, georaster(importMode = DEM_RAW, filepath = pathFiles, rastCRS = EPSG:3857)
    bpy, ops, tesselation, delaunay()
    objetos_escena = bpy, data, objects
    for objeto in objetos_escena:
    objeto, select = False
    for objeto in objetos_escena:
    if objeto, name == basename:
    objeto, select = True
    bpy, ops, object, delete()
    for objeto in objetos_escena:
    if objeto, name, startswith(TIN):
    nameHighDem = basename + High
    objeto, name = nameHighDem
    bpy, ops, importgis, georaster(importMode = PLANE, filepath = pathFiles, rastCRS = EPSG:3857)
    objetos_escena = bpy, data, objects
    for objeto in objetos_escena:
    if objeto, name == basename:
    nameLowDem = basename + Low
    objeto, name = nameLowDem
    escena = bpy, context, scene
    objetos_escena = bpy, data, objects
    bpy, ops, object, select_all(False)
    objetos_dict = {}
    for objeto in objetos_escena:
    if objeto, type ==MESH:
    objeto, select = False
    nombre = objeto, name
    values = nombre, split(\_)
    if values[0] in objetos_dict.keys():
    objetos_dict[values[0].append(objeto)
    else:
    objetos_dict[values[0] = [objeto].

    For key in objetos_dict.keys():
    list = objetos_dict[key]
    bpy, ops, object, select_all(False)
    list[0].select = True
    list[1].select = True
    escena, objects, active = list[1]
    bpy, ops, object, bake_image()
    bpy, ops, object, select_all(False)
    list[0].select = True
    bpy, ops, object, delete()
    list[1].select = True
    bpy, ops, object, delete()
    for f in os, listdir(folder):
    path = folder + f
    basename, ext = os, path, splitext(f)
    if path, find(\_Dem, tif) >= 1:
    bpy, ops, importgis, georaster(importMode = DEM, filepath = path, rastCRS = EPSG:3857, fillNodata=True)
    objeto = bpy, data, objects[basename]
    objeto, select = True
    bpy, context, scene, objects, active = objeto
    bpy, ops, object, modifier_apply(apply_as=DATA, modifier=DEM)
    bpy, ops, object, modifier_apply(apply_as=DATA, modifier=DEM.001)
    if path, find(\_Orto.jpg) >= 1:
    img = bpy, data, images, load(path)
    cTex = bpy, data, textures, new(ColorTex, type = IMAGE)
    cTex.image = img
    materialSimple = bpy, data, materials, new(basename)
    objeto, data, materials, append(materialSimple)
    materialSimple, specular_color = (0,0,0)
    materialSimple, specular_intensity = 0
    mtex = materialSimple, texture_slots, add()
    mtex.texture = cTex.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  13. #13
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Hola, estás usando módulos de Python para moverte por los archivos, porqué? Incluso usas métodos de la api de Blender combinados con Python puro. Podrías decir exactamente que quieres hacer? Los archivos que tienes en mega son imágenes, que quieres usarlas con el normal map ya hecho y guardarlo en disco o guardar las imágenes del bake en disco para usarlas después como textura de las imágenes jpg? Podrías explicar con más detalle lo que exactamente quieres hacer? No soy un experto, pero podría echarte una mano en esto a la vez que aprendo, no suelo usar archivos externos y siempre he querido hacerlo, pero no he encontrado para que, ahora si tiene sentido el poder hacerlo.

  14. #14
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Es para Cycles?

  15. #15
    Fecha de ingreso
    Aug 2004
    Mensajes
    22,267

    Bake de normal maps mediante script

    ¿Es para Cycles?
    Hasta ahora, los blend que ha puesto, son para Blender render.

  16. #16
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias por vuestra ayuda e interés. La intención del script es generar un modelo 3d de un terreno de alta resolución, guardar el mapa de normales, generar un modelo 3d del terreno de baja resolución, aplicar una textura a este modelo y el mapa de normales. Primero instalaremos el addon BlenderGis para poder trabajar con imágenes en formato geotif.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  17. #17
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    En principio es para Blender internal.

    Si quieres hcerlo para Cycles, por mi bien.

    El resultado del script sera para poder trabajar en Unity 3D.

    Y se que con el material de Blender internal Unity3D trabaja bien.

    Gracias por vuestro interés y ayuda.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  18. #18
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Cualquier duda en mí explicación Juani me comentas ya ves que mi código es muy feote.
    Gracias por tu ayuda.
    Última edición por tonilogar; 04-01-2018 a las 10:10
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  19. #19
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    He limpiado el código:
    Ahora queda crear un material para cada mesh y asignar la textura del diffuse/color y la textura al Geometry/normal
    import bpy, os.

    Bpy, context, scene, render, bake_type = NoRMALS\nbpy, context, scene, render, use_bake_selected_to_active = True.

    Folder = I:/catalunyaMetOrtoPru/demOrto/1/
    for f in os, listdir(folder):
    pathFiles = folder + f
    basename, ext = os, path, splitext(f)
    if pathFiles, find(\_Dem, tif) >= 1:
    bpy, ops, importgis, georaster(importMode = DEM_RAW, filepath = pathFiles, rastCRS = EPSG:3857)
    bpy, ops, tesselation, delaunay()
    bpy, ops, object, select_all(False)
    bpy, context, scene, objects, active = bpy, data, objects[basename]
    bpy, data, objects[basename].select = True
    bpy, ops, object, delete()
    bpy, context, scene, objects, active = bpy, data, objects[TIN]
    bpy, data, objects[TIN].select = True
    bpy, data, objects[TIN].name = basename + High
    bpy, ops, object, select_all(False)
    bpy, ops, importgis, georaster(importMode = PLANE, filepath = pathFiles, rastCRS = EPSG:3857)
    bpy, ops, object, select_all(False)
    bpy, context, scene, objects, active = bpy, data, objects[basename]
    bpy, data, objects[basename].select = True
    bpy, data, objects[basename].name = basename + Low
    bpy, ops, object, select_all(False)
    bpy, data, objects[basename + High].select = True
    bpy, context, scene, objects, active = bpy, data, objects[basename + Low]
    bpy, data, objects[basename + Low].select = True
    bpy, ops, object, bake_image()
    bpy, ops, object, select_all(False)
    #Borrar todos los materiales
    #objetos = bpy, data, objects
    #slots_material = objeto, material_slots
    #for slot in slots_material:
    #slot, material = None
    bpy, data, objects[basename + High].select = True
    bpy, ops, object, delete()
    bpy, data, objects[basename + Low].select = True
    bpy, ops, object, delete()
    bpy, ops, importgis, georaster(importMode = DEM, filepath = pathFiles, rastCRS = EPSG:3857, fillNodata=True)
    #bpy, context, object, modifiers[DEM].levels = 4
    #bpy, context, object, modifiers[DEM].render_levels = 4
    bpy, context, scene, objects, active = bpy, data, objects[basename]
    bpy, data, objects[basename].select = True
    bpy, ops, object, modifier_apply(apply_as=DATA, modifier=DEM)
    bpy, ops, object, modifier_apply(apply_as=DATA, modifier=DEM.001).
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  20. #20
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Buenas Toni Logar, ya entiendo porque daba algunos errores de nodos, por eso preguntaba si era en Cycles, y porque usabas métodos de Python que yo no encontraba en la api de Blender, seria por la forma de funcionar del addon. ¿Las imágenes que usas las puedes usar en vez de (*.jpg) en png? Si fuese así se pueden empacar en Blender internamente, se crearia una carpeta automáticamente en el mismo directorio de Blender y luego se cojerian de aquí, pero de esta forma solo admite el formato png. Si no puedes usar png, se tendría qué hacer de otra forma, pero con unpack es bastante fácil.

  21. #21
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias por tu ayuda Juani.

    Las imágenes (*.jpg) si que puedo pasarlas a (*.png) sin problemas, pero las imágenes tif es necesario que sean en este formato para qué conserven la georeferenciacción.

    Pero esta prueba es con 4 ficheros.

    La cuestión es poder hacer una prueba grande de unos 4722 ficheros y en este caso supongo que, empaquetar las imágenes generara un fichero blend enorme.

    Pero mañana colgare las imágenes en formato (*.png) y lanzare una prueba.

    Ahora lo que no logro solucionar es borrar o darle un nombre descriptivo al material que se genera al bakear el normal.

    Y asignar el normal al material que le asigno al mesh final. Un saludo y gracias por tu ayuda.

    Aquí dejo el enlace con las imágenes tif (*.jpg) y png.
    https://mega.nz/#F.T9520AQC.SdiHFxm4yPTeRrQwxmWcw.

    La intención del sccrip, es que cualquiera pueda generar un modelo 3D de un terreno, con el formato geotif, una textura del mismo corte del geotif y que se genere con un mesh lowpoly con el normal map de alta resolución.

    El usuario podrá descargar estos formatos de diferentes paginas:
    MODELOS DIGITALES DE ELEVACIONES
    http://centrodedescargas, cnig.es/Ce...rgas/index.jsp.

    ORTOFOTOS
    http://centrodedescargas, cnig.es/CentroDescargas/index.jsp.
    http://www.icc.cat/vissir3/

    Última edición por tonilogar; 08-01-2018 a las 08:55
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  22. #22
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Un saludo.
    ¿Cómo se puede borrar materiales no asignados a ningún objeto mediante script en Python?
    Dejo un blend con el que estoy probando.

    Gracias por vuestro tiempo.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  23. #23
    Fecha de ingreso
    Aug 2004
    Mensajes
    22,267

    Bake de normal maps mediante script

    Cita Iniciado por tonilogar Ver mensaje
    Un saludo.
    ¿Cómo se puede borrar materiales no asignados a ningún objeto mediante script en Python?
    Dejo un blend con el que estoy probando.

    Gracias por vuestro tiempo.
    Has puesto el texto vacío.

    Clic en la imagen para ver su versión completa. 

Nombre: 11.jpg 
Visitas: 892 
Tamaño: 143.3 KB 
ID: 225596

    -- IMÁGENES ADJUNTAS --

  24. #24
    Fecha de ingreso
    Aug 2004
    Mensajes
    22,267

    Bake de normal maps mediante script

    En cuanto a borrar materiales Melendez hizo un script ya hace tiempo, que a lo mejor os puede servir.
    https://github.com/zebus3d/varios_Bl...ager_addon, py.

    Sale en el panel de la izquierda con la pestaña MISC.

  25. #25
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Cita Iniciado por Soliman Ver mensaje
    Has puesto el texto vacío.

    Clic en la imagen para ver su versión completa. 

Nombre: 11.jpg 
Visitas: 892 
Tamaño: 143.3 KB 
ID: 225596
    Es el blend de ejemplo con los materiales, para probar.

    Sin código, no se hacerlo.

    Gracias Solimán.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  26. #26
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Buenas échale un vistazo al video a ver si te puede cuadrar, el pack con Python se hace en una carpeta de texturas que crea Blender en el mismo directorio desde dónde lo abrimos. Realmente no está en el archivo Blender, si enviamos el archivo a alguien no se verán las texturas porque no tendrá la carpeta qué hemos creado para nosotros.

    Lo que yo creo que pasaría es que le generaría al usuario 4.000, archivos que habría que eliminar, seguramente cuando terminemos de hacer las imágenes que queramos, no se échale un vistazo y me dices si te puede servir. Voy a ver cómo se podría hacer a buffer como ctrolC y ctroV, a lo mejor es más práctico.



    Edito:
    Se me olvidaba dejarte el blend con los scripts.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados

  27. #27
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias por tu tiempo y ayuda Juani, ma;ana me lo miro con calma.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  28. #28
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Te pongo un blend para borrar los materiales con el método users, esto lo que hace es decirte cuantos usuarios usan ese tipo de datos, como lo tenemos en material nos dirá cuantos objetos(usuarios), usan ese material, la pega es que un material sin asignar tiene el valor 1 y un material asignado a un objeto también tiene el valor 1, como en el for decimos que elimine todos los materiales que tengan 1 usuario, tenemos que pulsar la letra F al lado del material para todos los materiales que estén siendo usados por un solo objeto para qué Blender le de el valor 2 y no nos lo borre. Si queremos crear con Python un material en un objeto y que luego no sea borrado si más adelante queremos borrar materiales, en el mismo script podemos definir que tenga el valor 2 como si pulsamos la F. Me explico fatal, échale un vistazo.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados

  29. #29
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Muchas gracias a todos por vuestra ayuda.

    Mil gracias Juani sin tu ayuda, no creo que estuviera acabado el script.

    Dejo un blend con el resultado final.

    Seguro que puedes optimizar y limpiar el código.

    La cuestión es que yo lo utilizo para después exportarlo como formato FBX a Unity 3D.

    Con el script obtengo un mesh de cada imagen de elevación del terreno, exporto a formato fbx.

    Después copio las texturas del mapa diffuse/color y las del NormalMap junto al fichero FBX en el directorio de Unity 3D.

    El fichero *.fbx detecta la textura y el mapa de desplazamiento del material.

    Ahora, estoy dándole al coco, y como tu comentabas Juani.

    Estaría bien poder empaquetar todo en el fichero blend para poder seguir trabajando en Blender.

    Por si alguien quiere utilizar el script y seguir trabajando en Blender, para él propósito que se le ocurra.

    Animación videojuegos vr etc.

    Te agradecería me dijeras la mejor opción, para poder empaquetar el fichero blend con sus texturas y que el usuario pueda trabajar más cómodamente.

    Creo que he logrado modificar el script y de esta manera empaquetar todas las texturas.

    Te agradecería me dijeras estoy en lo cierto Juanai. Gracias por tu ayuda y tiempo Juani.

    -- IMÁGENES ADJUNTAS --
    Archivos adjuntados Archivos adjuntados
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  30. #30
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Pensaba qué ya tendría suficiente con el script.

    Pero ahora me doy cuenta que con la nueva versión de Unity se puede trabajar directamente con ficheros *.blend y mientras trabajas en el fichero blend los resultados se actualizan en el proyecto de Unity 3D.

    La mala suerte es que Unity no asigna las texturas a los materiales y tienes que seleccionarlas manualmente.

    En un proyecto con pocos materiales es viable, pero en una prueba de la generación del modelo 3D de toda España no es muy practico.
    ¿Se os ocurre alguna solución?
    Un saludo y gracias por vuestro tiempo y ayuda.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  31. #31
    Fecha de ingreso
    Jul 2015
    Mensajes
    465

    Bake de normal maps mediante script

    Buenas, las texturas están bien empacadas, pero habrá que modificar el script para que cuando lo ejecutemos, primero desempaque las texturas a un directorio local y luego se siga ejecutando el código para que está coja las texturas de la carpeta ya creada con ellas. Por cierto, el relieve que simula el mapa de normales no lo noto, se encarga de esto el addon es que no lo he instalado. El script funciona bien, solo que da el error lógico de que no encuentra las texturas porque la ruta que tú pones es la tuya.

  32. #32
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Gracias Juani.

    En principio el script crea una carpeta textures dentro del directorio donde se encuentra el fichero blend, genera el mapa de normales y lo guarda en el directorio textures.

    El lunes colgare un video de cómo funciona el script y un enlace con Blender y el addon Blendergis instalado con texturas para que lo pruebes sin problemas.

    Y toca el código como tu veas que es más conveniente.

    Te lo quería mandar ahora, pero estoy con un pc con Linux y el script no funciona.

    Una de las cosas que seria conveniente es que el mapa de normales se pueda guardar en un directorio asignado por el usuario y no en el directorio textures que se crea por defecto, como el script
    trabaja ahora te obliga a trabajar con el *.blend guardado porque si no el script no sabe dónde crear el directorio textures.

    Gracias por tu tiempo y ayuda Juani.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

  33. #33
    Fecha de ingreso
    May 2002
    Mensajes
    2,405

    Bake de normal maps mediante script

    Dejo un fichero (*.zip) con una versión de Blender portable para Windows 64, con el addon BlenderGis instalado.

    El resultado del script con 226 imágenes, el fichero blend empaquetado con sus meshs y materiales y el bake del normalMap. Gracias por tu ayuda Juani.

    El problema qué tiene el script es que. Hasta qué no llega al final del listado no muestra nada y si peta por alguna razón se puede perder el trabajo realizado.
    ¿Es posible que cada 10 ficheros? Por ejemplo.colocar un autosave para ir guardando poco a poco?
    Mañana intentare colgar un manual de cómo utilizarlo.
    https://mega.nz/#.SlwmkQSb.C8QToSR_TtCiRrNvVfgEw0CsXq6o-OIKtR9o7ix0mQ.
    No porque discrepe de tu opinión intento ofenderte.

    Un saludo a todos y gracias por vuestro tiempo.

Temas similares

  1. Lio tremendo con bake normal map
    Por RafelGisbert en el foro Materiales y Texturizado
    Respuestas: 1
    : 28-03-2025, 14:58
  2. Respuestas: 3
    : 25-06-2013, 09:14
  3. Respuestas: 0
    : 17-12-2012, 10:02
  4. Normal maps zb3
    Por anarkis en el foro Programas de Diseño 3D y CAD
    Respuestas: 7
    : 22-06-2007, 03:26
  5. Normal maps
    Por jose diez en el foro Materiales y Texturizado
    Respuestas: 2
    : 13-07-2006, 14:04