Creare Videogiochi - Game Developer
Dilemma texture - Versione stampabile

+- Creare Videogiochi - Game Developer (https://www.making-videogames.net/giochi)
+-- Forum: Unreal Engine & Unreal Development Kit (UDK) Italia (https://www.making-videogames.net/giochi/Forum-Unreal-Engine-Unreal-Development-Kit-UDK-Italia)
+--- Forum: Unreal Engine 4 e Unreal Development Kit (UDK) (https://www.making-videogames.net/giochi/Forum-Unreal-Engine-4-e-Unreal-Development-Kit-UDK)
+--- Discussione: Dilemma texture (/thread-Dilemma-texture)



Dilemma texture - MantoPower - 06-07-2013

Salve, volevo chiedere perché in UDK come in quasi tutti gli editor o motori grafici le texture DEVONO essere una potenza del 2 (128,256,..)???


RE: Dilemma texture - Cervian - 06-07-2013

E' un quesito interessante! La domanda da un milione di dollari.

Le textures non necessitano più di dimensioni 2^n * 2^m dove m ed n sono numeri nautrali. Storicamente però si è adottato questo formato per andare in contro a restrizioni di molte schede video del periodo di boom del settore 3d (fino al 2006).
Il motivo per cui ancora oggi si usa questo formato è perchè molto spesso si incappa in schede che presentano ancora queste restrizioni.
Questo tipo di restrizione è dovuto a certe operazioni di ottimizzazione che agiscono meglio su determinati formati. Nonostante quasi tutte le schede video attuali non presentino più tali limiti, questi vecchi algoritmi di codifica risultano tuttora molto efficienti e si preferiscono a soluzioni più recenti esose in termini di memoria GPU.

Basta pensare che la texture "standard", un quadrato di dimensioni 2^n * 2^n, si presta benissimo a calcoli matriciali.

Per migliorare le prestazioni di molti motori grafici (soprattutto per rendering real-time e perciò principalmente per usi videoludici ma anche serious games), viene forzata l'introduzione di sole texture "standard".
In settori come il cinema o il rendering professionale NRT non esiste DA ANNI questo scoglio, non essendoci di fatto una richiesta di rapidità di calcolo esagerata.


RE: Dilemma texture - Lorenz - 06-07-2013

Lessi a riguardo anche nella wiki di opengl, le texture NPOT (Non-Power-Of-Two) davano problemi su determinate schede vecchie che non riuscivano a gestirle. Il problema principale nasceva dal mipmapping ovvero, in parole povere, una versione molto rimpicciolita della texture stessa.

In pratica la texture stessa veniva divisa per due e si arrivava ad una mipmap 1x1, se si lavora con NPOT si rischia di arrivare a texture con dimensioni non valide (che ne so 3x2.5). Ad ogni modo al momento tutto il nuovo hardware supporta le NPOT.
A prova di ciò quando importi una texture NPOT in UDK ti darà come errore "The texture you are importing is not a power of two. Non power of two textures are never streamed and have no mipmaps. Proceed?", proprio perchè non può creare una mipmap da quella texture.

Diciamo che non è un obbligo ma generalmente si tende a lavorare di più con texture Power Of Two per il semplice fatto di avere più retrocompatibilità con Hardware vecchio.


RE: Dilemma texture - MantoPower - 07-07-2013

Ok grazie delle informazioni Big Grin

(06-07-2013, 01:35 PM)Lorenz Ha scritto: Lessi a riguardo anche nella wiki di opengl, le texture NPOT (Non-Power-Of-Two) davano problemi su determinate schede vecchie che non riuscivano a gestirle. Il problema principale nasceva dal mipmapping ovvero, in parole povere, una versione molto rimpicciolita della texture stessa.

In pratica la texture stessa veniva divisa per due e si arrivava ad una mipmap 1x1, se si lavora con NPOT si rischia di arrivare a texture con dimensioni non valide (che ne so 3x2.5). Ad ogni modo al momento tutto il nuovo hardware supporta le NPOT.
A prova di ciò quando importi una texture NPOT in UDK ti darà come errore "The texture you are importing is not a power of two. Non power of two textures are never streamed and have no mipmaps. Proceed?", proprio perchè non può creare una mipmap da quella texture.

Diciamo che non è un obbligo ma generalmente si tende a lavorare di più con texture Power Of Two per il semplice fatto di avere più retrocompatibilità con Hardware vecchio.

Perché quando cerco di importare una texture di 5000 * 3954 e di dimensione 28,5 mega, mi da import failed??


RE: Dilemma texture - Cervian - 07-07-2013

Io proverei 8193 x 8191, in formato Raw, ovviamente sono sarcastico. Oltre 4096 x4096 non capisco neanche a che definizione vuoi arrivare XD


RE: Dilemma texture - MantoPower - 07-07-2013

E un immagine UV mappata esportata da Sketchup, per questo è così grande. Ho esportato un oggetto fatto e texturizzato in Sketchup, in fbx, e la texture non me la importa. Ho provato a ridimensionare l'immagine a 4096*4096, ma la mappatura fa a farsi friggere. Aspetto soluzioni Big Grin


RE: Dilemma texture - Cervian - 07-07-2013

Riducila in un formato proporzionato: trova il minimo comun denominatore zio XD


RE: Dilemma texture - MantoPower - 07-07-2013

Lo ridotta a 4096*3239 ma mi continua a dare import failed. Se volete vi do l'immagine e ve la sbrigate voi xD


RE: Dilemma texture - Lorenz - 07-07-2013

A me crash a sistematicamente per file maggiori di 5 mega quindi lol


RE: Dilemma texture - MantoPower - 07-07-2013

Non è la dimensione del file, perché ho provato a portare la risoluzione a 1024*810 e pesava 1.01MB, ma mi da import failed. Inizio a pensare che udk non importa texture con misura alla caxxo.


RE: Dilemma texture - Cervian - 07-07-2013

mandami sto modello XD


RE: Dilemma texture - giovi1992 - 08-07-2013

(07-07-2013, 07:20 PM)MantoPower Ha scritto: Non è la dimensione del file, perché ho provato a portare la risoluzione a 1024*810 e pesava 1.01MB, ma mi da import failed. Inizio a pensare che udk non importa texture con misura alla caxxo.

infatti udk come qualche altro engine non importa le texure con la misure a casaccio, ecco le misure:
64x64
128x128
256x256
512x512
1024x1024
2048x2048
4096x4096