Makerando.it - Comunità di Rpg Maker e Game Making: [Workshop 0] Installare SDL - Makerando.it - Comunità di Rpg Maker e Game Making

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Questa discussione e' chiusa

[Workshop 0] Installare SDL

#1 L   Cristiano87 Icona

  • Osservatore Silente
  • Icona
  • Gruppo: Mod
  • Messaggi: 999
  • Iscritto: 06-February 06
  • Gender:Male
  • Location:Milano
  • Interests:Videogiochi
    Scacchi
    Programmazione
  • Tool Preferito: Game Maker

Inviato 11 July 2009 - 04:03 AM

La libreria SDL
  • Che cos'è ?
    SDL sta per Simple DirectMedia Layer.
    E' una libreria cross-platform che permette di sviluppare facilmente un videogioco offrendo un accesso a basso livello di audio, tastiera, mouse, joystick, 3d tramite OpenGL e funzioni 2d "veloci".
    E' compatibile con tantissime architetture e sistemi operativi, un gioco ben programmato con piccole modifiche può girare tanto su pc windows che su linux che su psp o nintendo gba/ds, che su cellulari con os symbian.

  • Come ci sviluppo?
    Il bello delle sdl è che sono cross-platform quindi posso scrivere il codice dove mi trovo più comodo e compilare per la piattaforma di destinazione (vi immaginate a scrivere codice con il pennino del ds XD?).
    In genere quindi sulla piattaforma di sviluppo (io uso ubuntu) si installano anche le librerie ed i compilatori (fortunatamente esistono delle comode toolchain che permettono di compilare con un click o uno script biggrin2.gif) per le piattaforme di destinazione in modo da testare il grosso in locale e di tanto in tanto vedere il risultato sulla piattaforma.
    Su come far funzionare il vostro gioco su console torneremo in futuro, anche perché adesso non sapete neanche che forma avrà!

    • Windows
      L'approccio più intuitivo è quello dell'editor e ci sono molte scelte. Non supportando/sopportando ambienti M$ ve ne presento due: da una parte Dev-C++, spartano ma efficace, e dall'altra Code::Blocks, più carino esteticamente ma un po' incasinato.
      Una volta scaricata l'sdl si crea un nuovo progetto e lo si configura per leggere la lib, il progetto serve ad automatizzare le operazioni di compilazione ed esecuzione con un click o con un tasto funzione (aprire l'editor per dare una sbirciatina)
      • Dev-C++
        Spoiler : Clicca Qui per Aprire
        • Installare Dev-C++
        • Scaricare SDL-devel-mingw32 aggiornato
        • Estrarre la cartella dall'archivio
        • Porre SDL.dll situata nella cartella bin in C:\windows\system32
        • Copiare la cartella SDL (dentro include) nella cartella C:\Dev-Cpp\include
        • Copiare il contenuto della cartella lib all'interno di C:\Dev-Cpp\lib
        • Creare un Nuovo Progetto
          CITAZIONE(Guida)
          File->Nuovo->Progetto->Windows Application (Language C) con il nome che volete
          Progetto->Opzioni del Progetto
          >> Tab Parametri
          Nella Textarea sotto linker scrivere
          CODICE
          -lmingw32 -lSDLmain -lSDL
        • Eliminare il contenuto del main.c che viene creato automaticamente e rimuoverlo dal progetto
        • Aggiungere un nuovo sorgente (vuoto) al progetto e seguire il tutorial per il primo programma
      • Code::Blocks
        Spoiler : Clicca Qui per Aprire
        • Installare Code::Blocks con mingw32
        • Scaricare SDL-devel-mingw32 aggiornato
        • Porre SDL.dll situata nella cartella bin in C:\windows\system32
        • Spostare la cartella SDL-1.2.13 estratta dall'archivio in una locazione "sicura", ad esempio C:\Programmi\Codeblocks (se l'avete installato lì)
        • Creare un nuovo progetto
          CITAZIONE(GUIDA)
          File->New->Project Empty Project
        • Next...
        • Scegliere una cartella dove mettere i progetti, ad esempio C:\Programmi\Codeblocks\Projects
        • Scegliere il nome del progetto (niente di arzigogolato, il nome del programma sarà possibile cambiarlo in seguito)
        • Lasciare le configurazioni e fate attenzione che GNU GCC Compiler sia già selezionato
        • Ora bisogna configurare il linker
          CITAZIONE(Linker)
          Project->Build Options (o click destro sul progetto e poi Build Options)

          Sulla sinistra ci sono tre etichette, nome del progetto, debug e release, il linking va impostato per tutto il progetto quindi cliccate su nome del progetto, poi sulla tab Linker Settings
          in Link Libraries dovete immettere le seguenti:
          CITAZIONE
          mingw32
          SDLmain
          SDL

          Cliccare sul Tab Search Directories
          in Compiler dovete aggiungere
          CITAZIONE
          C:\Programmi\CodeBlocks\SDL-1.2.13\include

          con il percorso dove voi avete messo la cartella SDL
          in Linker dovete aggiungere
          CITAZIONE
          C:\Programmi\CodeBlocks\SDL-1.2.13\lib
        • Aggiungete un nuovo file
          CITAZIONE
          File->New->Empty File
          Cliccate Sì per aggiungerlo al progetto, salvatelo con il nome che volete ma con estensione .c ad esempio test.c
          Cliccate su Select All nella finestra Multiple Selection per fare in modo che il file esista sia nella modalità di debug che in quella di release
        • Seguire il tutorial per il primo programma
      • Documentazione
        E' essenziale per ogni programmatore che si rispetti avere sempre sotto mano una reference per i comandi per andare avanti spedito.
        Il mio consiglio è quindi di scaricare la SDL Reference e piazzarla sul desktop o dovunque sia a portata di mano
    • GNU/Linux
      Spoiler : Clicca Qui per Aprire
      • Come installare
        • Ubuntu GNU/Linux
          CODICE
          sudo apt-get install libsdl-1.2debian libsdl-1.2debian-alsa libsdl-1.2dev libsdl-image1.2 libsdl-image1.2-dev libsdl-mixer1.2 libsdl-mixer1.2-dev
        • (Altre a richiesta)

        Qui è molto semplice sviluppare da riga di comando grazie all'aiuto di make.
        Che cos'è make? E' un potente tool per automatizzare dei comandi, è usato perlopiù per automatizzare le operazioni di compilazione ma ci si può fare davvero di tutto.
        Come funziona?
        Si crea un file di nome Makefile in cui si mettono le istruzioni per compilare il binario e lo si colloca nella stessa directory dei sorgenti
      • Compilare
        • Senza Makefile
          CODICE
          gcc -o nomebinario sorgente1.c sorgente2.c sorgente3.c -lSDL #-lnomelibreria
        • Con Makefile
          CODICE
          make

          Nota: # sulla Shell viene interpretato come commento come // in C
      • Avviare
        CODICE
        ./nomebinario
      • TODO: Man page, Scrivere un Makefile


0

#2 L   napco Icona

  • Gran postatore
  • PuntoPuntoPuntoPuntoPunto
  • Gruppo: Utenti
  • Messaggi: 403
  • Iscritto: 11-November 08
  • Gender:Male
  • Location:Rovigo
  • Tool Preferito: Fantasia - Sony Vaio

Inviato 24 December 2009 - 11:07 PM

Ciao! A parte qualche incompatibilità tra le varie librerie di versioni diverse tipo mixer riesco tranquillamente a compilare giochi su Windows, ma se provo ad usare le SDL per creare applicazioni per PSP in C++ ho un errore di "undefined reference to SDL_main" che non riesco a risolvere. In C non mi da problemi! Qualche idea? Suppongo sia il Makefile, ma di questo tipo di files proprio non me ne intendo.
0

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Questa discussione e' chiusa

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi