DDS

From Blood Wiki
Revision as of 00:58, 16 February 2013 by Makenor13 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Il Direct Draw Suface è un formato file sviluppato da Microsoft per l'SDK di DirectX. Questo formato viene usato in molti giochi per contenere texture compresse.

Il motore grafico Darkplaces può caricare DDS contenenti immagini nei seguenti formati:

  • BGRA : immagine non compressa a 32 bit
  • DXT1 : texture DXT1 compressa a 4 bit
  • DXT2 : texture DXT2 compressa a 8 bit
  • DXT3 : texture DXT3 compressa a 8 bit
  • DXT4 : texture DXT4 compressa a 8 bit
  • DXT5 : texture DXT5 compressa a 8 bit

Nella Darkplaces DDS non è un formato texture generale come TGA o JPEG, ma una texture sostitutiva (dds/filename.dds) che viene caricata al posto di quella di base (filename.tga), se presente.

Tutti i file DDS vanno messi sotto la cartella dds/, e il resto del percorso dovrebbe imitare quello del file della texture base:

dds/textures/mausoleum/outerwall1_1 // sostituisce textures/mausoleum/outerwall1_1
dds/models/mapobjects/inn/barrel1_1_norm // sostituisce models/mapobjects/inn/barrel1_1_norm
dds/models/mapobjects/inn/barrel1_1 // sostituisce models/mapobjects/inn/barrel1_1

I file DDS devono avere le MIP map pre-generate. Se non ci sono MIP map già generate viene dato per scontato che quella texture non ne usi nessuna.

Importante: l'Engine non dovrebbe provare ad usare MIP map che non esistono nel DDS (vedi noPicMip, anche le immagini sotto gfx/ non usano mai MIP map) o potrebbe andare in crash.
Bug: Alcuni driver non lavorano con texture compresse non come potenze di due (lasciando un'immagine nera). La cosa migliore è sempre avere texture DDS che siano potenze di due.

[edit] DDS per NetRadiant

Sfortunatamente NetRadiant non carica immagini DDS, usa al loro posto sempre le texture base. Questo diventa un problema quando si dà a Radiant il gioco compilato (che include solo DDS, e non texture base). Per evitare di avere texture mancanti o dei difetti nel pennello tutte le texture del mondo di gioco devono essere applicate a pennelli, devono avere un'immagine a parte solo per Radiant (vedi qer_editorImage).

Per convenzione le immagini solo per Radiant vanno dentro a gamedir/radiant/path_to_base_texture:

textures/town/wall1_1
{ 
    qer_editorImage radiant/textures/town/wall1_1
    ...
}

[edit] Tool

Si possono usare i seguenti tool per creare immagini DDS compresse:

[edit] Alternative future

Nel 2010 il gruppo Khronos ha presentato il formato KTX (che copre i formati texture di OpenGL e OpenGL ES). Questo formato potrà essere usato in futuro in sostituzione al DDS.

[edit] Variabili della console

 r_texture_dds_load : carica il dds/nomefile.dds compresso al posto del nomefile.tga. Se il file esiste (serve il supporto del driver).
 r_texture_dds_load_alphamode : segnalatore trust DDPF_ALPHAPIXELS, 1: formato della texture e ricerca forzata se ambiguo, 2: solo il formato della texture
 r_texture_dds_load_logfailure : log texture DDS mancante per ddstexturefailures.log, 0: fai il log, 1: log senza texture opzionali (_norm, glow ecc.). 2: log di tutto
 r_texture_dds_save : salva la texture compressa dds/nomefile.dds quando nomefile.tga viene caricato, in modo da caricare quella al suo posto in futuro
 r_texture_dds_swdecode : 0: non fare la decodifica software dei DDS, 1: fare decodifica software dei DDS se supportata, 2: sempre fare la decodifica software dei DDS. La decodifica software elimina tutti i vantaggi del DDS e va usata solo se il driver non supporta i DDS o a scopo di debugging.

[edit] Vedi anche



 Blood Wiki in Italian

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox