[U3D] - Strano comportamento del Parallax Bump Mapping

Argomenti riguardanti il D3D di GameMaker e librerie esterne.
Rispondi
Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

[U3D] - Strano comportamento del Parallax Bump Mapping

Messaggio da fra3point »

Ebbene, anche sotto le feste sono alle prese con GM e U3D... :spat:

Finalmente mi sono deciso a texturare i modelli come Dio comanda, con uv maps ecc. Ora, io ho un modello al quale ho applicato correttamente delle texture e poi ho creato per ognuna di esse una heightmap.

La logica mi dice che se ho una diffuse map applicata ad un materiale, una height map ad essa relativa e alcune fonti di luce posso creare un effetto Bump in modo corretto. Ma la logica non mi è d'aiuto, non riesco ad ottenere l'effetto giusto..

Il mio procedimento (che mi sembra giusto! :? ) è questo:

Create event dell'oggetto controller, carico le textures e le heightmaps:

Codice: Seleziona tutto

LoadTexture("gfx/tex_car/gomma.jpg",502);
LoadTexture("gfx/tex_car/tire.jpg",503);
LoadTexture("gfx/tex_car/logo.jpg",504);

global.hmap_gomma=LoadHeightMap(204,"gfx/heightmaps/hmap_gomma.png",16);  //gomme
global.hmap_tire=LoadHeightMap(206,"gfx/heightmaps/hmap_tire.png",16);
Create event dell'oggetto interessato; applico le textures e il bump mapping:

Codice: Seleziona tutto

SetMaterialStageTexture(GetMaterialIndex("gomma"),0,502); 
SetMaterialStageTexture(GetMaterialIndex("tire"),0,503);
SetMaterialStageTexture(GetMaterialIndex("logo"),0,504);

ApplyParallaxAndBumpMapping(GetMaterialIndex("gomma"),global.hmap_gomma,0.01,light_directional,light_point,light_point1);
ApplyParallaxAndBumpMapping(GetMaterialIndex("tire"),global.hmap_tire,0.01,light_directional,light_point,light_point1);
Fino a che non applico il bump mapping le textures sono visualizzate correttamente, appena lo attivo ottengo un risultato orrendo:

Immagine

Nota: Anche se mi pare strano credo che il problema sia nel mio codice, in quanto con il programma U3D Studio riesco ad applicare il PBMapping correttamente. Avete qualche idea?
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Jak
Admin
Messaggi: 12355
Iscritto il: 19/08/2009, 16:20
Specialità: Programmazione 3D
Uso: GM:Studio 2
Contatta:

Re: [U3D] - Strano comportamento del Parallax Bump Mapping

Messaggio da Jak »

Codice: Seleziona tutto

global.hmap_gomma=LoadHeightMap(204,"gfx/heightmaps/hmap_gomma.png",16);  //gomme
global.hmap_tire=LoadHeightMap(206,"gfx/heightmaps/hmap_tire.png",16);
Non mi pare che quella funzione restituisca un'indice, devi usare quello che gli hai indicato te quindi:

Codice: Seleziona tutto

ApplyParallaxAndBumpMapping(GetMaterialIndex("gomma"),204,0.01,light_directional,light_point,light_point1);
ApplyParallaxAndBumpMapping(GetMaterialIndex("tire"),206,0.01,light_directional,light_point,light_point1);
O almeno credo :fapensare:
Time to feel, time to believe
Dare to see what may come of our future
Lift your head, broaden your gaze
Speak your mind and your thoughts they will follow you

Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

Re: [U3D] - Strano comportamento del Parallax Bump Mapping

Messaggio da fra3point »

E' la stessa cosa.. Anche nella demo di U3D ho visto fare così.. Vanno bene entrambi i modi..
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 18 ospiti