[DLL] surface DLL

Gex, Dll, DyLib, Js e ogni tipo di estensione per GameMaker
Rispondi
Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

[DLL] surface DLL

Messaggio da Sla »

Fatto una piccola DLL per gestire le surface senza scomodare le directx.
Ho notato (o meglio, mi è stato fatto notare..) che avete riscontrato dele difficoltà con le surface irrisolvibili o difficilmente risolvibili
(es: impossibilità di utilizzo in un gioco 3d, o il problema di jakk, o di tizzio..), e mi è venuta voglia di programmare anche questo.
In verità è ancora incompleta, mi basta sapere se vi funziona l'exe che la utilizza e penserò a sviluppare tutte le funzioni che mancano
(voglio fare tutte le funzioni draw di gm per i poligoni e le sprite)
http://gamenetmaker.altervista.org/roba/pack.rar
Estraete exe e dll.
L'exe dovrebbe creare una surface 100x100, salvarla come "surface.bmp" (quindi nella directory dove lo avete estratto), convertire la surface a sprite
e infine disegnarla a schermo.
Il codice dentro al gmk originario è questo, ev_create:

Codice: Seleziona tutto

dll_init();
surface = DLL_surface_create(100,100);
DLL_surface_set_target(surface);
DLL_draw_set_color(c_red);
DLL_draw_rectangle(0,0,80,80);
DLL_draw_set_color(c_black);
DLL_draw_rectangle(10,10,40,40);
DLL_surface_reset_target();
DLL_surface_save(surface,"surface.bmp");
sprite_index = DLL_surface_make_sprite(surface);
DLL_surface_destroy(surface);
eppure mi sembra tutto giusto...

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: [DLL] surface DLL

Messaggio da Sla »

Ho aggiunto il supporto sprite (passaggio risorsa da gm a dll e disegno sprite su surface) e devo dire, senza stupore, che una simulazione via software delle surface è assolutamente impossibile (funziona, ma a ritmi insostenibili)
Tiz, quello che mi hai chiesto nell'altro topic non si può fare.
eppure mi sembra tutto giusto...

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti