Vai al contenuto
piripino

Come Gestire Milioni Di Poligoni?

Recommended Posts

:hello: a tutti

sto modellando un piccolo complesso residenziale composto da due palazzine (6 appartamenti) e quattro villette bifamiliari.

Ho iniziato dalla palazzina e, una volta arrivato al tetto, ho deciso di modellare i coppi (prima usavo un piano mappato o costruivo una sagoma ondulata a mo' di eternit, ma non sono mai stato troppo soddisfatto del risultato finale).

Dunque, prima falda: ok... seconda falda: ok ancora...terza falda del tetto, quella principale: il pc inizia a rallentare. :angry:

Ho completato il tetto e il mezzo è ormai alla frutta. Controllo in Risorse del computer e la scena pesa già 15Mb e il polygon counter mi da 992027 poligoni.

:eek: Se considero che devo ancora clonare finestre, persiane, balconi ecc. prima di finire la palazzina e che devo aggiungere il suo clone oltre alle quattro villette e i giardini nella scena, iniziano a tremarmi le gambe.

Come si gestiscono scene del genere? è meglio rinunciare alle tegole? o ci sono altri metodi...Help pliz!

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Ciao,

Allora, puoi utilizzare diversi metodi....:

- Come ti ha suggerito unhombre utilizza oggetti con pochi poligoni per i coppi.

- Puoi utilizzare il modificatore multires di max. Praticamente ti sempifica la geometria dell'oggetto in questione in base a dei parametri che decidi tu. Ovviamente per render da distanza ravvicinata lasci il massimo della risoluzione, se fai delle panoramiche lontane puoi anche abbassare la risoluzione tanto non si nota molto.

- Oppure nascodi gli oggetti. Questo e il metodo che uso io... una volta generati i coppi li nascondi e li fai riapparire solo quando fai i render... Cmq consulta l'help e cerca Hide o Unhide objects :blink:

Spero di esserti stato d'aiuto...

ciao

Claudio. :TeapotBlinkRed:

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Inviata (modificato)

ciao piripino!

Il discorso del low poy è la strada ottimale, potresti usare anche il modificatore displace. comunque ti fo vedere il mio coppo "tipo" a basso dettaglio poligonale.

Come avrai notato è un camuffone, ho eliminato tutti i poligoni non visibili, così allegerendo del 50% tutto l'ambaradan. fammi sapere, ciao!

post-1094-1120989919_thumb.jpg


Modificato da Sharky

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Un consiglio ke ti posso dare è usare i Layer di Max e quando hai finito una "sezione" del tuo edificio nascondi il layer. Io generalmente faccio così....

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Io come coppo uso qualcosa di molto simile a quello di Sharky.

Anche così estremamente ottimizzato comunque, non è che se ne possano fare migliaia e migliaia senza che la scheda video si arrabbi.

Ad ogni modo spero che una volta creati i coppi che ti servono almeno tu li abbia uniti assieme in un'unica geometria: 3DS Max (anzi, tutti i programmi 3d, direi) fatica molto di più a gestire 100000 oggetti da un poligono che un oggetto di 100000 poligoni.

Ai sistemi che sono già stati citati per velocizzare la situazione ne vorrei aggiungere altri due: uno è usare gli XRef di 3ds Max; l'altro è andare nella proprietà dei coppi (seleziona l'oggetto > tasto destro del mouse > properties > attivare "display as box")

E comunque, una volta creati e finiti i coppi, tutto sommato è meglio selezionarli e salvarli in un file a parte, e cancellarli dalla scena fino al momento del rendering, quando verranno inseriti di nuovo, perché sono pesanti e rendono i file di salvataggio troppo grossi e i tempi di salvataggio lunghi (specie se c'è l'auto backup settato ogni 5 minuti...)

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Grazie a tutti per il prezioso aiuto... :Clap03:

Alcuni metodi già li adottavo mentre ad altri non avevo mai pensato :blush:

Penso che farò un bel mischione di tutti: riduco i poly in eccesso, elimino quelli invisibili, unirò il tutto in una mesh unica (ma questo lo deciderò in base ad eventuali mappature della singola tegola) e infine un bel display as box (o magari schiaccio "o" quando muovo le viste).

In quanto a freezare o nascondere i tetti...beh prima devo ricordarmi di linkarli ai muri perchè mi è già capitato di spostare i fabbricati e lasciarne indietro dei pezzi LOL :eek:

Thanx again ;)

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Grazie a tutti per il prezioso aiuto... :Clap03:

Alcuni metodi già li adottavo mentre ad altri non avevo mai pensato :blush:

Penso che farò un bel mischione di tutti: riduco i poly in eccesso, elimino quelli invisibili, unirò il tutto in una mesh unica (ma questo lo deciderò in base ad eventuali mappature della singola tegola) e infine un bel display as box (o magari schiaccio "o" quando muovo le viste).

In quanto a freezare o nascondere i tetti...beh prima devo ricordarmi di linkarli ai muri perchè mi è già capitato di spostare i fabbricati e lasciarne indietro dei pezzi LOL :eek:

Thanx again ;)

Nel clonare gli oggetti la cosa fondamentale è che usi l'opzione "instance". Gli oggetti cosi creati consumano molta meno ram in quanto l'oggetto reale è il primo mentre degli altri vengono memorizzati solo differenti proprietà come materiale, posizione etc etc.. Comunque, a parte una certa pesantezza nelle visualizzazione il numero dei poligoni in genere non rappresenta un grosso problema.. Personalmente sono arrivato a 9milioni "di cui una metà instanced"in una scena da circa 500 pezzi... Brazil ha nasticato tutto a dovere..

Non condivido pienamente il far diventare un'unica geometria i tetti.. in scene ravvicitate o con tetti visibili solo parzialmente dovresti portarti dietro un "malloppo" inutile..

L'unico motivo per il quale unificare i coppi sarebbe quello per poi utilizzare il materialbyelement molto comodo per create un tetto realistico. Ma questo puo essere fatto comunque alla fine solo sulla porzione di tetto visibile..

Daniel..

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Non condivido pienamente il far diventare un'unica geometria i tetti.. in scene ravvicitate o con tetti visibili solo parzialmente dovresti portarti dietro un "malloppo" inutile..

L'unico motivo per il quale unificare i coppi sarebbe quello per poi utilizzare il materialbyelement molto comodo per create un tetto realistico. Ma questo puo essere fatto comunque alla fine solo sulla porzione di tetto visibile..

Daniel..

Hai ragione. Era per semplificare le cose. Io in genere tendo a unire i coppi per falde (ogni falda un oggetto) e a usare il modificatore materialbyelement per dare un po' di variazioni cromatiche casuali ai coppi.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Quoto pienamente daniel: unire tutto in un solo obj è un ulteriore spreco di risorse macchina, ti spiego: Io quando realizzo qualcosa di grosso ho la porca abitudine di caricare solamente ciò che la telecamera inquadra (ho un pIII @ 800) il che rende tutto meravigliosamente leggero, questo però solo in caso di still image

nel caso dovessi animare uso: A) il LOD (level of detail) con mesh + o - pesanti in caso di inquadratura e B) uso delle istances volumetriche (in caso di vegetazione, persone, macchine api etc.).

A volte la potenza bruta di un dual cpu è palesemente sprecata senza ottimizare le risorse:

Per il discorso coppi a milioni, dividi ogni falda per layer(di ogni oggetto che compone l scena), e accendi solamente quelli visibili. vedrai che la cosa funziona!

A presto ciao!!!

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
sono arrivato a 9milioni

Sono parecchi,.....non ci so mai arrivato ad un numero cosi alto,.........3dsmax disolito intorno ai 500.000 gia' si pianta e non si muove piu' nulla.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Sono parecchi,.....non ci so mai arrivato ad un numero cosi alto,.........3dsmax disolito intorno ai 500.000 gia' si pianta e non si muove piu' nulla.

beh.. 500.000 sono un po pochi per affermare "non si muove piu' nulla"... dipende anche dalla skvideo e dall'uso che se ne fa del tasto "o". In ogni caso non facevo riferimento alla facilità di far girare a video una scena da 9mil. di poligoni ma alla capacita di Max e del motore di render (nel mio caso Brazil) di gestirla e renderizzarla senza problemi...

Daniel.

P.S.

In riferimento a quella scena da 9mil. poly e 500 oggetti ovviamente non ci ho lavorato sopra con tutto visibile... Ho fatto largo uso di layer e in modellazione di certo non ho mai tenuto piu di 7/800.000 poligoni contemporaneamente visibili..

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Sono parecchi,.....non ci so mai arrivato ad un numero cosi alto,.........3dsmax disolito intorno ai 500.000 gia' si pianta e non si muove piu' nulla.

stessa cosa qui, se supero i 500.000 max si inchioda, la scheda video non è un fulmine, ma neanche max, diciamocela tutta :P

con scene da importare e renderizzare (o poco più) anch'io ho superato tranquillamente i 2/3 milioni con max/mental ray, ma non ho ma controllato le cifre precise

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Rieccomi...hmmm forse sta venendo fuori il problema.

Quando ho aperto il topic non mi riferivo a semplici problemi di scheda video (a parte un po' di "scattosità").

La vera questione era la gestione di max (o del pc o boooh) della quantità di oggetti e dei poligoni: le operazioni di hide o unhide impiegano tempi sempre più lunghi per non parlare di quando si cerca di selezionare ad es. il gruppo "tetto".

Si arriva ad un certo punto in cui con un click riesci a ritagliarti una pausa caffè. Quindi mi domandavo "succede solo a me? Ci sarà un modo per non far piantare tutto..." ma a quanto sento dagli ultimi reply non sono l'unico.

Mal comune mezzo gaudio... o forse no, il pc continua a sbuffare

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

3d max ha dei grossi limiti nella gestione dell'openGl putroppo

i consigli che ti hanno dato per ottimizzare la scena sono tutti validi, la cosa migliore è proprio lavorare con meno poligoni possibile a schermo

nella sezione hardware abbiamo fatto anche delle prove (in particolare con i livelli di smooth, ma i limiti di max sono ancora più evidenti a mio avviso quando i poligoni sono disseminati su tanti oggetti nella scena, piuttosto che su un unico oggetto)

non so se esiste un modo in 3d max per limitare gli undo o eliminare la memorizzazione dell'history ad esempio, questo permetterebbe sicuramente di risparmiare tempo in quelle piccole operazioni che dicevi tu (che devono essere tutte memorizzate)... ovviamente poi ti troveresti a dover salvare molto più di frequente...

ah una cosa curiosa, dalle prove fatte era evidente che 3d max non gradisce per niente il wireframe, a parità di poligoni era molto più veloce in shade (strano ma vero), questo però col turbosmooth... con scene complesse non dipendenti dallo smooth non ho idea se sia così...

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Inviata (modificato)
:devil: a questo punto le cose sono due,........o cambi PC, o cambi programma,  :lol:

io sono per la 2° :hello:

Va beh dai...cercavo solo un consiglio. La cosa non è poi così drammatica, è semplicemente da gestire al meglio :hello:

PS: in quanto al pc la config è la seguente:

Shuttle SB75G5, Cpu Pentium 4 3Ghz Prescott, 1Gb Ram, Ati Radeon X800 Pro 256Mb, Hd 160Gb SATA.

Devo davvero cambiarlo :blink2:


Modificato da piripino

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

...scusa la domanda un po da deficiente....

ma l'antialias hardware della scheda video è disattivato???

...scusa ma sai, a mettere in ginocchio una x800 ce ne vuole...

domanda numero due:

io sono utente di lightwave (come avrete potuto intuire) ma se non ricordo male max gestisce una specie di livello di dettaglio oltre il quale non viene aggiornato tutto in tempo reale??? LW nel layout lo fa... oltre una certa soglia di poligoni (definiti dll'utente) lw trccia delle bounding box...

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
...scusa la domanda un po da deficiente....

ma l'antialias hardware della scheda video è disattivato???

...scusa ma sai, a mettere in ginocchio una x800 ce ne vuole...

domanda numero due:

io sono utente di lightwave (come avrete potuto intuire) ma se non ricordo male max gestisce una specie di livello di dettaglio oltre il quale non viene aggiornato tutto in tempo reale??? LW nel layout lo fa... oltre una certa soglia di poligoni (definiti dll'utente) lw trccia delle bounding box...

Domanda 1: l'ho messo su performance (2x)

Domanda 2: tasto "o"

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora

  • Navigazione recente   0 utenti

    Non ci sono utenti registrati da visualizzare in questa pagina.

×