Innanzitutto mi scuso se questa non è la sezione adatta: pensavo di dover pubblicare cose come questa in domande e risposte, ma vedo che in molti pubblicano i problemi inerenti al 3D qui... Ergo...
Meh, in ogni caso partiamo col problema:
Una delle aree del mio gioco presenta un'intera mappa fatta da un unico modello poligonale (costruito con model creator), ovvero una grotta salina.
Inizialmente il modello non presentava problemi, quindi ottimo: comincio ad allacciare area dopo area, quando un simpaticissimo bug decide di rovinarmi l'esistenza e farmi perdere giorni di programmazione: le texture, in diverse aree della grotta, fanno un casino pazzesco.
Spoiler
questa è la grotta salina in stato normale
Spoiler
Questa è la grotta salina che ha deciso di ribellarsi al suo creatore e strappargli l'anima
Il problema non si spiega, anche perché ha un modo di presentarsi stranissimo: se buildo il progetto con la grotta come prima room, allora la grotta la visualizzo correttamente. Al contrario, se buildo e prima di andare alla grotta salina passo per un'altra area 3D, allora le texture fanno quel simpatico bordello satanico.
Per ovviare al problema le ho provate tutte: ho controllato il modo in cui passo alla room delle Saline assicurandomi di disattivare eventuali luci, nebbie, oggetti e chi più ne ha più ne metta. Ho provato a passare nelle saline da una room non3D ed il problema non si presenta.
Ho passato il progetto al mio collega e quest'ultimo dice che a lui non presenta alcun problema, quindi ho provato ad aggiornare i driver video ed a passare il progetto ad altri ma il risultato (sia per me che per gli altri) rimane il bordello del secondo screen.
Ho pensato si trattasse, chessò, di troppi triangoli o qualche roba simile e quindi mi sono fatto tagliare via gran porzione della grotta ma il bug persiste.
In ogni caso vi lascio qui il modo in cui chiamo il modello della grotta, dovesse essere quello:
EVENTO CREATE
Codice: Seleziona tutto
z = 0;
Codice: Seleziona tutto
d3d_transform_set_identity();
d3d_transform_add_rotation_z(0);
d3d_transform_add_translation(x,y,z);
d3d_model_draw(global.modSalina,0,0,0,global.wallSaline2Tex);
d3d_transform_set_identity();
Giuro ragazzi io argh aiuto
Davvero, non so dove sbattere la testa... Qualcuno sa come uscirne?
EDIT:
Sto usando l'ultima versione di GMStudio, se può essere utile saperlo