Space Invaders (C++)

di
Anonimizzato7144
il
3 risposte

Space Invaders (C++)

Salve a tutti sono nuovo di questo forum per cui dò un saluto a tutti quanti. Io ormai programmo con il c++ da due anni però ultimamente ho riscontrato un grande problema nella prgrammazzione del gioco space invaders che tutti conosciamo. La mia domanda è una... Come faccio a implementare allìinterno di una matrice 3 x 8 il disegno degli alieni? Vi prego aiutatemi non so proprio come fare. Grazie mille anticipatamente

3 Risposte

  • Re: Space Invaders (C++)

    In grafica o testuale ?

    ~Max~
  • Re: Space Invaders (C++)

    Grafica
  • Re: Space Invaders (C++)

    Devi scegliere un formato per rappresentare le immagini. Dal primitivo bmp al xpm, dal gif al png, oppure il vettoriale svg. Tutti questi formati gestiscono anche la trasparenza.

    X Window System utilizza X BitMap (XBM) nel formato monocromatico e può essere caricato direttamente nel tuo codice C. Parlando di matrice, con le librerie di X11 puoi visualizzare la tua pixmap. Esempio:
    
    #define alieno_width  3
    #define alieno_height 8
    static char alieno_bits[] = {0x13, 0x00, 0x15};
    ...
    XCreateBitmapFromData(display, window, alieno_bits,alieno_width,alieno_height);
    ...
    
    Sempre per X11, un'evoluzione del XBM, + colori e canale alpha è il X Pixmap (XPM).
    Esempio:
    
    /* XPM */
    static char * alieno[] = {
    /* <Valori> */
    "3 8 2 1",
    /* <Colori> */
    "* c #ffffff",
    ". c #000000",
    /* <Pixels> */
    "*.*",
    ".*.",
    "*.*",
    ".*.",
    "*.*",
    ".*.",
    "*.*",
    ".*.",
    };
    
    Su Windows le bitmap sono gestite dalle API GDI (Graphics Device Interface) con le apposite funzioni. Altra soluzione per rappresentare altre tipologie di immagini è ricorrere a librerie dedicate tipo FreeImage http://freeimage.sourceforge.net

    ~Max~
Devi accedere o registrarti per scrivere nel forum
3 risposte