Community Forum Coding Script, addon e temi Script EEVEE bake indirect lighting animazione

Taggato: 

Stai visualizzando 5 post - dal 1 a 5 (di 5 totali)
  • Autore
    Post
  • Andrea Accetta
    Partecipante
    @andreaaccettaAssociatoPROLP Instructor
    #847202

    Ciao a tutti/e

    Riprendendo i concetti del workshop di ieri su EEVEE e la possibilità di calcolare la luce degli oggetti emittenti, confermo quello a cui ha accennato Luca cioè che è possibile tramite script Python eseguire il “Bake Indirect Lighting” prima di ogni frame nel caso in cui si voglia renderizzare una animazione.

    Ieri ho provato con questo script che ho trovato su vari forum e non mi ha dato problemi, premetto che non ho competenze di Python quindi mi sono limitato a provare lo script “sulla fiducia” diciamo.

     

    import bpy

     

    scn = bpy.data.scenes[“Scene”]

    com = bpy.ops.scene

    path = “C:/tmp/frame/frame_”  # Specificare la cartella di destinazione

    i = 0

    for i in range (0,120):  # Definire l’intervallo di frame che si intende renderizzare

    scn.frame_current = i

    com.light_cache_bake()

    scn.render.filepath = path + str(scn.frame_current)

    bpy.ops.render.render(write_still=1)

     

    Il render partirà direttamente facendo partire lo script quindi i frame e la cartella di destinazione vanno specificati, come scritto nei commenti, nel codice invece che nei normali settaggi di Blender.

    Vi riporto la comparazione di due render di prova che ho lanciato ieri sera, uno in modo “normale”, quindi con il bake eseguito prima dell’animazione, ed il secondo utilizzando lo script, quindi con la luce calcolata prima di ogni frame.

    Ovviamente anche calcolando il bake ad ogni frame i tempi di render sono molto sotto Cycle quindi credo sia una soluzione utilissima per semplici animazioni con oggetti in movimento e corpi emittenti.

    Un saluto e buona pasqua.

    Render senza script

    LightSENZAScript

     

     

    Render con script

    LightCONScript

     

     

    Steamboy
    Partecipante
    @divanAssociato
    #847207

    Da provare 😀 :+1:

    fenix
    Partecipante
    @fenix64Associato
    #847235

    da fare come per gli addon uno spazio dove mettere gli script e come usarli

    Why So Serious?
    Membro
    @whysoserious
    #860359

    Ciao a tutti.

    Attenzione all’indentazione. Python la richiede obbligatoriamente.

    Cosi’ come e’ stato postato nel forum, questo script non dovrebbe funzionare. Suggerisco di usare una formattazione che mantenga l’indentazione delle righe, o di linkare dove scaricare lo script.

    Ho dubbi sull’utilita’ di inizializzare

    i=0

    e sul modo in cui viene composto il path del salvataggio. Una questione di stile, ma e’ una pratica deprecata in quanto potrebbe non essere “esportabile” su tutti i sistemi operativi (vabbe’, se vi funziona: bene XD).

    Insomma, se volete provare e rilevate errori, queste potrebbero essere le cause.

    Ciao.

    Why So Serious?
    Membro
    @whysoserious
    #860366

    Ho fatto una prova, e delle modifiche.

    Lo script adesso crea una directory all’interno della dir di lavoro e memorizza li i frame renderizzati.

    DOVREBBE essere tutto agnostico, rispetto al sistema operativo in uso. Io pero’ posso testarlo solo col mio :p

    Causa perdita’ di formattazione qui sul forum, ho messo tutto in un link esterno

    https://pastebin.com/uFrh6AjM

Stai visualizzando 5 post - dal 1 a 5 (di 5 totali)
  • Devi essere connesso per rispondere a questo topic.