Ultime News
 
v2.08
29/10/2023
Nuovo PlugIn Script
Aggiunto un nuovo plugin utile per poter interagire con gli elementi della scena tramite script in linguaggio VB.NET.
Premendo sul pulsante di Help si può aprire un piccolo manuale con due esempi, dal quale poter copiare nella clipboard frammenti di codice.
Renderizzazione di una ClipArea
Nuovo attributo di renderizzazione "RenderClipArea", di default conterrà l'area di renderizzazione espressa come punto iniziale xy e punto finale xy. Si può modificare per poter così renderizzare solo un'area specifica.
Renderizzazione delle Superfici Nascoste
Aggiunto un attributo di renderizzazione "RenderBackSurfaces", di default è a False ma se messo a True renderizza le superfici nascoste di tutti gli oggetti. Per il cariamento delle scene tramite plugin PBRT4 è impostato a True.
v2.08 v2.07
Come si può notare dalla comparazione qui a fianco i miglioramenti sono evidenti.
Altre comparazioni al seguente link.
Aggiunto anche un nuovo attributo "BackfaceCulling" a tutti i materiali (solo quelli nuovi in standard PBRT4), di default è a True ma se messo a False renderizza le superfici nascoste degli oggetti che hanno applicato il materiale.
Nuovo Materiale Light
Aggiunto un nuovo materiale per gestire la luce ad area, e prende il posto della mappa Light del materiale BlinnOrenNayar. E' possibile applicare questo materiale a qualsiasi istanza per trasformarla in una sorgente di luce.
Plugin PBRT4 - Instances
Aggiunta la possibilità di caricare le istanze (possibilità di replicare lo shape mantenendo la stessa area di memoria per vertici e poligoni, cambiando soltanto le trasformazioni e il materiale applicato) delle scene PBRT4. Data l'alta quantità di memoria di cui necessita (anche replicare l'istanza porta a un aggravio della memoria utilizzata) di default questa feature è disabilitata. Per abilitarla è stata aggiunta una opzione in più nei plugin "PBRT4 Settings" meglio dettagliata più sotto nelle news all'interfaccia.
Nuovo Materiale ThinDielectric
Aggiunto un nuovo materiale ThinDielectric nello standard PBRT4, utile per simulare superfici poco spesse di tipo dielettrico (es: addobbo albero di natale di plastica trasparente, bolle, ecc...).
Miglioramenti nella renderizzazione Scanline
  • Scanline and Environment Map
    Migliorata la visualizzazione dei materiali tramite l'uso della mappa environment.
  • Migliorata l'opzione Environment Details
    Adesso l'opzione della scena si chiama "Scanline Environment Details", dato il suo utilizzo esclusivo nella renderizzazione di tipo Scanline dell'editor.
    Aumentato a 6 il dettaglio di default dell'environment Vertex Shading nelle viewport dell'editor. Mentre il dettaglio della preview dei materiali l’ho lasciato a 4.
    Adesso la configurazione scelta viene salvata nel registry anzichè nel file della scena.
Plugin OBJ - Auto Smooth Mesh
Migliorato il caricamento di default delle normali di oggetti in formato OBJ.
In alcuni casi continua a essere consigliato l'applicazione dell'azione "Smooth Normals Adaptive" sull'oggetto.
Plugin OBJ - Nuovi Materiali
Utilizzo dei nuovi materiali nello standard PBRT per il caricamento di oggetti in formato OBJ.
Il materiale che presenta contemporaneamente caratteristiche riflessive e diffusive (es: ceramica) è stato convertito in un materiale Mix, il quale amount è il coefficente di riflessione "ks" richiesto, il primo materiale è diffusivo e secondo è un materiale CoatedDiffuse.
AlphaMap Refactor
Spostata l'applicazione della Mappa Alpha dall'Istanza allo Shape.
Piccole migliorie
  • Deprecato l'Octree
    Deprecato l'algoritmo Octree per la velocizzazione della ricerca delle intersezioni.
    Adesso si userà solo l'algoritmo KDtree, he a discapito di una leggero rallentamento nel precalcolo, porta con se un maggiore velocità nella ricerca delle intersezioni.
  • PLY gzip loading
    Aggiunta la possibilità di caricare file ply compressi in formato gzip.
  • Remove ColorMap from Dielectric
    Rimossa la mappa Color per il materiale Dielectric.
  • Loading file "tga"
    Aggiunta la possibilità di usare immagini in formato Targa.
  • PBRT4 file "tga"
    Adesso verranno caricate le immagini in formato "Targa" durante l'importazione di scene PBRT4.
  • PBRT4 alpha map
    Adesso verranno caricate le Mappe Alpha durante l'importazione di scene PBRT4.
  • PBRT4 default material
    Applicato un materiale diffuse di default durante l'importazione di scene PBRT4.
Plugin PBRT4 Settings
Aggiunto un nuovo elemento nella lista dei plugin, utile a gestire i settings del plugin PBRT4.
Qui è possibile attivare o disattivare il caricamento delle istanze (vedi news più sopra).
Di default questa feature è disattivata, data l'elevata pesantezza nel caricamento di alcune scene.
Seguirà un aggionamento per migliorarne le performance.
Bug Camera Pan
Risolto un bug che impediva il corretto spostamento della telecamera all'interno della viewport corrente tramite panning, oppure lo spostamento della camera tramite il controllo a frecce.
Bug rimuovendo i sotto materiali dal Materiale Mix
Risolto un bug che mandava in crash Now3D2 eliminando uno dei due sotto materiali applicati a un materiale di tipo Mix.
Bug renderizzazione scena vuota
Risolto un Bug che impediva il rendering dello sfondo (environment) in caso di scena senza oggetti.
Bug Shape MeshInstance
Risolto un problema che impediva la selezione degli shape per l’istanza e per la mesh.
Bug crash Shape di tipo Mesh vuota
In caso di salvataggio di un BaseObject con shape mesh vuota (quindi senza vertici/poligoni), andava in errore nel successivo caricamento.
PBRT4 BumpMap Bug
Nel caricamento di scene PBRT4 la mappa bump non applicava il corretto mapping UV.
v2.07
24/07/2023
Spectral Render
Finalmente ho implementato la renderizzazione tramite l'intero spettro dei colori nel motore di render MultiplexedMLT!
RGB Spettro
Come si può notare dalla comparazione qui a fianco i colori risulteranno più realistici.
Altre comparazioni al seguente link.
L'uso dello Spettro è attivo di default ma si può sempre disattivare dagli attributi del motore MultiplexedMLT.
Nuovo plugin PBRT4
Ho implementato un nuovo plugin per poter caricare le scene PBRT4.
Alcune scene possono essere scaricate nel Git ufficiale di PBRT.
Di fianco un esempio di scena in formato pbrt renderizzata tramite Now3D2.
Altri esempi li potete trovare nella galleria.
La maggior parte degli attributi sono stati implementati, ma molti mancano ancora. Di seguito alcuni di quelli che saranno implementati in una prossima release:
  • materiale thin dielectric
  • renderizzare le facce nascoste
  • lettura dei file exr
  • mappatura environment di tipo equirectangular
  • lettura dei file ply compressi tramite algoritmo GNU zip (.gz)
  • istanze
  • materiali subsurface
  • materiali volume
  • migliorare il materiale dieletric
  • shape di tipo loopsubdiv (per ora caricato come semplice mesh)
  • lettura immagini Targa (.tga)

N.b.: Solo un pò di pazienza per il caricamento.
Velocizzazione tramite KDtree
Grazie all'algoritmo KDtree adesso si potranno renderizzare più velocemente le scene più complesse e quelle contenenti materiali displacement!
Di fianco un esempio di immagine renderizzata tramite l'algoritmo KDTree con un tempo di rendering passato da 2h14m a 1h28m.
Mentre per scene come queste sarebbero stato arduo renderizzarle tramite algoritmo Octree.
L'uso del KDtree è opzionale (eccetto per le scene pbrt4 dove è attivo di default) e si può applicare dagli attributi di rendering, prossimamente sarà deprecato il precedente Octree, e rimarrà solamente quello KDtree.
Nuovi nodi per gli shader
Implementati due nuovi nodi utili per la gestione dello spettro.
  • Spectrum: l'input è uno spettro espresso come una stringa composta da coppie lunghezza d'onda/valore separati da spazio (es: 298.757 1.795 302.4004 1.812)
  • Blackbody: l'input è la temperatura di un corpo nero (es: 5500 per il sole)
Nuova azione Scale per la Scena
Grazie a questa azione applicabile alla scena, è possibile aumentare o diminuire le dimensioni della scena. Questo è utile nei casi in cui la scena sia più piccola dell'unità (la maggiorparte delle scene pbrt4), dato che Now3D2 non gestisce ancora bene scene di quelle dimensioni.
Migliorate Traformazioni e Matrici
  • Gestito il salvataggio e il caricamento della matrice di trasformazione Extra.
  • Migliorata l'implementazione generale delle trasformazioni.
Piccole migliorie
  • Salvato l'attributo Maxdepth del motore di render MultiplexedMLT.
  • Rimosse le mappe Eta e K del materiali Conductor e CoatedConductor, e sostituite con colori semplici (Eta e K) e di tipo spettro (EtaSpectrum e KSpectrum).
  • Aggiunto l'attributo EtaSpectrum ai materiali Dielectric, CoatedConductor e CoatedDiffuse
Miglior utilizzo dei colori nel Wireframe
Per migliorare la user experience, l'oggetto selezionato viene mostrato di colore giallo-oro, mentre quelli invisibili di colore grigio.
Salvata l'ultima cartella per il plugin OBJ
Adesso dopo aver importato un file OBJ, viene memorizzata l'ultima cartella aperta così da riproporla in una successiva richiesta di caricamento.
Piccole migliorie all'interfaccia
  • Migliorata l'anteprima dei materiali Layered aumentando, solo in fase di preview, il numero dei campioni (NumSamples)
  • Adesso il motore di render MultiplexedMLT è quello di default
  • Aumentata l'intensità di luce nell'anteprima dei materiali.
  • Modificata la scena di dafault. Camera spostata a Z +5000 e oggetti creati a Z 0
Bug caricamento primitiva Sphere
Bug che impediva il ricaricamento di un file contenente una primitiva sfera. Il motivo era collegato una versione sbagliata del N3D2.Instance.Object.Primitive associato.
Bug caricamento file Object (.nxo)
Bug che impediva il ricaricamento di un file nxo (generato al salvataggio di un Object). Il problema stava nella versione sbagliata della BaseIntance applicata.
Bug Oggetto ImportPLY
Non caricava l’ultimo poligono della mesh di un file ply.
Bug coordinate texture UV
Non gestiva bene le coordinate uv di texturing in caso di valori negativi
Bug primitiva Plane
Non gestiva valori decimali per le dimensioni y del piano.
Bug caricamento Scena
Quando ricaricava una scena con più telecamera le metteva al posto di quelle di default (top, rear, left).
Bug crash materiali Measured
Risolto un bug che poteva mandare in crash il rendering in caso di utilizzo di materiali Measured.
Archivio News