E non scordatevi le SDL
link!
sono simili alle DirectX di winzoz e sono molto portabili...
E non scordatevi le SDL
link!
sono simili alle DirectX di winzoz e sono molto portabili...
SDL??Mai sentite...però potrebbero interessarmi per il my progetto...sono ad alto livello o posso caricare e modificare immagini BMP anche senza alcuna visuallizzazione cm invece dovrei fare con le GTK+??E sono abbastanza semplici da utilizzare con C o dici di lasciare stare???
Se puoi risp...grazie...
dipende ha che tipo di software vuoi realizzare: se è, ad esempio, un videogioco o comunque un programma di grafica le sdl vanno benissimo.
ma ste maledette librerie vga vanno bene anche con il c++??
ieri ho progato a scaricarmi dei sorgenti ma ... NADA
NUN ZE TROVA!!![]()
"durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."
http://www.kumbe.it
oh finalmente sono riuscito a trovare un rpm e le ho installate...ho provato a fare sto piccolo programmino ma npn mi complia:
questo è il sorgente:
#include <iostream.h>
#include <vga.h>
#include <vgagl.h>
int main()
{
cout<<endl;
cout<<"funzia?"<<endl;
gl_line(1,1,150,150,1);
}
e questo l'errore che visualizzo:
[root@localhost prove]# g++ prova.cpp -o grafica
In file included from /usr/include/c++/3.2/backward/iostream.h:31,
from prova.cpp:1:
/tmp/cc9jHqkY.o: In function `main':
/tmp/cc9jHqkY.o(.text+0x5f): undefined reference to `gl_line'
collect2: ld returned 1 exit status
[root@localhost prove]#
ho provato anche con altr funzioni ma mi da sempre lo stesso errore "undefined reference to "nome della funzione"
ho provato anche a scaricarmi degli esempi di codice da internet...idem
ke fo?
"durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."
http://www.kumbe.it
hai dato la direttiva di inclusione al linker?
Non basta includere il file.h!
non hai messo
vga_init();
vga_setmode(5);
...
...
vga_setmode(TEXT);
come argomento della vga_setmode(N)
quell'N dipende dalla tua scheda video...qnd non lo "tira" più dovr darti segmentation fault...cmq 5 corrisponde a 320x200x256...mi sembra che va fino a 14...cmq prova così...ora dovrebbe funzionare...fammi sapere...
Ciao...
oh oh oh
sdl!
sembrano davvero interessanti... quindi sono, come dire, una serie di librerie multimediali, cioe' una sorta di directx.
Pero' noto che ad esmpio la grafica 3D e' fornita tramite OpenGL, quindi non sono altro che una unificazione di varie librerie, non una vera e propria ricostruzione.
Cioe', anziche' avere le OGL come librerie grafiche, anziche' avere (ad esempio) le OpenAL come librerie audio, anziche' avere pippoPluto come librerie per le periferiche, abbiamo una libreria unica che le raccoglie insieme.
Giusto?
Sembrano davvero interessanti
Danke mr.vajaski!
#exclude <windows.h>
Powered by Gentoo GNU/Linux
Cos'e' l'impossibile se non una questione di tempo?
Riesumare i post vecchi non e' sbagliato, e' una risposta o la continuazione di un thread. Meglio riesumare che creare di nuovi :]
SDL (Simple DirectMedia Layer) è una sorta di DirectX semplificata (ma neanche troppo), che supporta svariate funzionalità (grafica, grafica 3D OGL, suono, multithread) in modo semplice e funzionale. Supporta, per il 2d, le più svariate modalità grafiche, superfici hardware, blitting accelerato, aplha blending... oltre al fatto che puoi utilizzare tramite sdl i comandi di rendering opengl. Il tutto in poche righe di codice, dato che sdl si occupa dell'inizializzazione di tutti i sottosistemi. Poi è chiaro che l'implementazione OpenGL sta dentro la libgl e dipende dalla scheda video. Per quanto riguarda le potenzialità basti pensare che quasi tutti i giochi linux la utilizzano, compresi i giochi 3D di ultima generazione
PS per compilare un binario con SDL non basta includere sdl.h nel codice, bisogna anche passare dei flags al compilatore in fase di linking. A questo pensa il programma sdl-config. Ad esempio se ho tre file oggetto main.o graph.o e sound.o e li voglio linkare assieme per creare un binario che utilizzi le sdl in modo dinamico posso dare:
gcc `sdl-config --cflags --libs` main.o graph.o sound.o -o programma
oppure in modo statico
gcc `sdl-config --cflags --static-libs` main.o graph.o sound.o -o programma
ok... a mano a mano andiamo avanti ora con questo codice:
#include <iostream.h>
#include <vga.h>
#include <vgagl.h>
int main()
{
cout<<endl;
cout<<"funzia?"<<endl;
vga_init();
vga_setmode(6);
}
compilando con
g++ prova.cpp -lvga -lvgagl
e lanciando il file a.out mi diventa lo schermo nero per circa 2 secondi poi si chiude e tona alla shell
ho provato poi ad inserire questa stringa:
gl_line(1,1,150,150,1);
ma mi sono comparsi i seguenti errori:
/lib/libvgagl.a(grlib.o): In function `gl_copyscreen':
/usr/src/madeinlinux/BUILD/svgalib-1.4.1/gl/grlib.c:767: undefined reference to `vga_copytoplanar256'
/usr/src/madeinlinux/BUILD/svgalib-1.4.1/gl/grlib.c:778: undefined reference to `vga_copytoplanar16'
/usr/src/madeinlinux/BUILD/svgalib-1.4.1/gl/grlib.c:781: undefined reference to `vga_copytoplanar16'
/usr/src/madeinlinux/BUILD/svgalib-1.4.1/gl/grlib.c:789: undefined reference to `vga_copytoplanar16'
/lib/libvgagl.a(driver.o): In function `__svgalib_driverplanar256_putbox':
/usr/src/madeinlinux/BUILD/svgalib-1.4.1/gl/driver.c:1303: undefined reference to `vga_copytoplanar256'
collect2: ld returned 1 exit status
why?
ciao
"durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."
http://www.kumbe.it