Ciao a tutti!

di il
6 risposte

Ciao a tutti!

Ciao ragazzi! Mi chiamo Davide Setzu e vengo dalla Sardegna. Sono nato il 7 luglio 1999(sì, 15 anni, relativamente giovane xD) e da quando ho 6 anni ho il desiderio di creare un gioco con le mie idee. Sono passato da cercare(a 8 anni) "come programmare un programma" (frase molto stupida, ma avevo solo 8 anni xD) a "Come installare le SDL 2.0.3 su Code::Blocks"ieri, e oggi "Come iniziare con le SDL 2.0.3". Premesso che ora vorrei creare un gioco con un mio amico, dove lui usa anche inerfaccia grafica. Io la creo solo come prototipo con paint.
Purtroppo le mie conoscenze in informatica sono limitate, sò solo le basi dell'informatica(Ad esempio le variabili e includere le librerie su c++ xD), dal momento che sono in seconda di un tecnico informatico quest'anno butteremo giù anche le basi del c++. La mia professoressa mi può aiutare sul c++ ma non credo mi possa aiutare sulle librerie SDL. Spero che qualcuno qui possa aiutarmi...

Vi chiedo di perdonarmi se ho infranto qualche regola, questo mi sembra il genere di forum che mi piace, quello dove sono abituato a stare, ma devo ancora leggere molte cose, dato che ho scoperto questo sito solo oggi. Le regole di base dovrei ricordarle a memoria xD

Mi scuso anche se non ho una grammatica non molto corretta, la grammatica non è il mio pezzo forte(e probabilmente sono anche dislessico )

Vi saluto! Presto creerò un post dove chiedo le mie prime domande sulla programmazione.

6 Risposte

  • Re: Ciao a tutti!

    Ciao Davide, benvenuto!
    Oltre che alle SDL, ti consiglio di dare un'occhiata alla libreria SFML. E' veloce, semplice, multipiattaforma, ed è object-oriented: inoltre, è molto facile integrarla con sistemi OpenGL nel caso tu voglia operare con il 3D.
  • Re: Ciao a tutti!

    tuixte ha scritto:


    Ciao Davide, benvenuto!
    Oltre che alle SDL, ti consiglio di dare un'occhiata alla libreria SFML. E' veloce, semplice, multipiattaforma, ed è object-oriented: inoltre, è molto facile integrarla con sistemi OpenGL nel caso tu voglia operare con il 3D.
    Si possono installare più librerie in un unico editor?
  • Re: Ciao a tutti!

    Risposta sintetica: si.
    Risposta completa: le librerie non si installano NELL'editor. Le librerie sono porzioni di codice prodotte da terzi (o volendo da te), che possono essere inclusi nei tuoi file/progetti. Ciò che l'editor fa è solamento un riferimento a tali librerie, e nel caso utilizzi ambienti di sviluppo un filo più completi di un semplice Blocco note, linkarli con il tuo codice creando l'eseguibile finale.
    Nel tuo progetto puoi includere contemporaneamente tutte le librerie che vuoi (anche la iostream che utilizzi per stampare stringhe a schermo è una liberia!)
    In ogni caso, nei tutorial presenti sul sito ufficiale delle SFML è spiegato passo passo come installare la libreria e configurare il progetto su diversi OS e ambienti di sviluppo.
    Ciao
  • Re: Ciao a tutti!

    tuixte ha scritto:


    Risposta sintetica: si.
    Risposta completa: le librerie non si installano NELL'editor. Le librerie sono porzioni di codice prodotte da terzi (o volendo da te), che possono essere inclusi nei tuoi file/progetti. Ciò che l'editor fa è solamento un riferimento a tali librerie, e nel caso utilizzi ambienti di sviluppo un filo più completi di un semplice Blocco note, linkarli con il tuo codice creando l'eseguibile finale.
    Nel tuo progetto puoi includere contemporaneamente tutte le librerie che vuoi (anche la iostream che utilizzi per stampare stringhe a schermo è una liberia!)
    In ogni caso, nei tutorial presenti sul sito ufficiale delle SFML è spiegato passo passo come installare la libreria e configurare il progetto su diversi OS e ambienti di sviluppo.
    Ciao
    Grazie, sapevo che anche iostream, come stdio e (in generale) tutte le cose che finiscono in .h sono librerie;)
    Se sono più semplici delle SDL provo subito.. Il fatto è che le sdl sno più pratiche ma anche più difficili e dato che sono solo all'inizio preferisco usare le SFML
    E' abbastanza tardi, ma la mia forza di volontà mi fà stare sveglio anche se domani devo alzarmi alle 6. Oggi installerò queste librerie!
    E' spiegato anche come usarle?
    Sapete, aspettare 9 anni per qualcosa e arrivare molto vicino all'imminente inizio dà una certa carica. Se oggi riuscissi soltanto a montare un'immagine in una finestra mi sentirei realizzato

    ___________
    Ecco, provato ad installarle e mi dà una serie di errori:

    ||=== Build: Debug in Dinamyc (compiler: GNU GCC Compiler) ===|
    obj\Debug\Untitled1.o(.text+0x1e4)||In function `main':|
    C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::String::String(char const*, std::locale const&)'|
    obj\Debug\Untitled1.o(.text+0x220):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::VideoMode::VideoMode(unsigned int, unsigned int, unsigned int)'|
    obj\Debug\Untitled1.o(.text+0x268):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::RenderWindow::RenderWindow(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)'|
    obj\Debug\Untitled1.o(.text+0x32b):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|7|undefined reference to `sf::CircleShape::CircleShape(float, unsigned int)'|
    obj\Debug\Untitled1.o(.text+0x333):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|8|undefined reference to `sf::Color::Green'|
    obj\Debug\Untitled1.o(.text+0x34b):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|8|undefined reference to `sf::Shape::setFillColor(sf::Color const&)'|
    obj\Debug\Untitled1.o(.text+0x363):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|10|undefined reference to `sf::Window::isOpen() const'|
    obj\Debug\Untitled1.o(.text+0x38d):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|13|undefined reference to `sf::Window::pollEvent(sf::Event&)'|
    obj\Debug\Untitled1.o(.text+0x3a8):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|16|undefined reference to `sf::Window::close()'|
    obj\Debug\Untitled1.o(.text+0x3e2):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|19|undefined reference to `sf::Color::Color(unsigned char, unsigned char, unsigned char, unsigned char)'|
    obj\Debug\Untitled1.o(.text+0x3fd):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|19|undefined reference to `sf::RenderTarget::clear(sf::Color const&)'|
    obj\Debug\Untitled1.o(.text+0x405):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|20|undefined reference to `sf::RenderStates::Default'|
    obj\Debug\Untitled1.o(.text+0x420):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|20|undefined reference to `sf::RenderTarget::draw(sf::Drawable const&, sf::RenderStates const&)'|
    obj\Debug\Untitled1.o(.text+0x42e):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|21|undefined reference to `sf::Window::display()'|
    obj\Debug\Untitled1.o(.text+0x463):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|24|undefined reference to `sf::RenderWindow::~RenderWindow()'|
    obj\Debug\Untitled1.o(.text+0x504):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|24|undefined reference to `sf::RenderWindow::~RenderWindow()'|
    obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0xb)||In function `ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj':|
    C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `vtable for sf::CircleShape'|
    obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0x17):C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `vtable for sf::CircleShape'|
    obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0x22):C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `sf::Shape::~Shape()'|
    ||=== Build failed: 19 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|



    Perchè mi dà questo errore??

    Il link della guida:
    http://sfml-dev.org/tutorials/2.1/start-cb.ph
    Il codice:
    #include <SFML/Graphics.hpp>
    
    int main()
    {
        sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
        sf::CircleShape shape(100.f);
        shape.setFillColor(sf::Color::Green);
    
        while (window.isOpen())
        {
            sf::Event event;
            while (window.pollEvent(event))
            {
                if (event.type == sf::Event::Closed)
                    window.close();
            }
    
            window.clear();
            window.draw(shape);
            window.display();
        }
    
        return 0;
    }
    
  • Re: Ciao a tutti!

    Che software stai utilizzando? Hai seguito la guida passo passo?
    E' evidente dagli errori che le librerie non sono state incluse correttamente nel tuo progetto.
  • Re: Ciao a tutti!

    Sto utilizzando Code::Blocks e la guida credo di averla seguita passo passo.. Il mio sospetto ricade su che download devo fare... Dice che in base alla versione che si ha di mingw si deve fare il download della libreria, il problema è che non sò che mingw ho (tra l'altro è preinstallato con le librerie sdl), e nei download l'unica versione che mi fà scaricare è l'ultima...


    P.S: oggi abbiamo iniziato lo studio del c++ anche in classe! Adesso sò bene cosa è e cosa vuol dire(ad esempio) iostream(input and output stream, flusso di imput e output) e i vari comandi base(variabili e if, else, operatori logici, cin e cout), tutte cose che mi saranno utilissime.
Devi accedere o registrarti per scrivere nel forum
6 risposte