Per poter iniziare con i tutorial, bisogna che venga settato sdl.
Andate a scaricare l'ultima release a questo indirizzo : http://www.libsdl.org/download-1.2.php
scegliendo quella che vi è più consona [linux, windows, ecc.], scompattatela in una cartella [preferibilmente nelle cartelle include ,lib, e bin del vostro ide/compilatore ]
dopo queste semplici operazioni, possiamo iniziare.
I tutorial sono basati su VC++ Express 2005, ma si possono riadattare senza problemi anche agli altri compilatori/ide ^^
Il codice principale è ovviamente, la vostra classe Principale, in questo caso chiamata CMain [ che fantasia neh? ]
I 2 files sono :
CMain.h [ conterrà la struttura della classe ]
Codice:
#ifndef CMAIN_H
#define CMAIN_H
#include "stdafx.h"
class CMain
{
public:
CMain(); // Costruttore della classe CMain
~CMain() { Release(); } // Distruttore della classe
void Release(); // Funzione che rilascerà le risorse occupate dalla classe CMain
bool Initialize(); // Inizializzazione di SDL
void Run(); // Avvio del programma
private:
};
#endif
CMain.cpp [ conterrà l'implementazione di CMain.h
Codice:
#include "stdafx.h" // Include del file d'intestazione stdafx.h [ header precompilato di VC++ ]
#include "CMain.h" // include del file d'intestazione CMain.h [ il codice della classe ]
CMain::CMain() // Implementazione del costruttore [ per adesso vuoto, non ci serve ]
{
}
void CMain::Release() // Implementazione della funzione Release
{
SDL_Quit(); // Questo comando dice a SDL di terminare.
}
bool CMain::Initialize() // Inizializzazione della Classe
{
if( SDL_Init( SDL_INIT_EVERYTHING ) == -1 ) return false; // Controlla che le SDL siano inizializzate, se ciò non avviene, restituisce false
return true; // Se tutto è andato a buon fine, ritorna vero
}
void CMain::Run() // Funzione di Run della classe [ qui andranno tutti i cambi, la gestione delle sottclassi, ecc. ]
{
}
stdafx.h [ Header precompilato]
Codice:
#pragma once
#include <SDL.h> // Include header SDL
#pragma comment( lib, "SDL.lib") // Include le lib necessarie al linker.
#pragma comment( lib, "SDLmain.lib")
main.cpp
Codice:
#include "stdafx.h" // Include Header stdafx.h
#include "CMain.h" // Include header CMain.h
int main( int argc, char* args[] ) // Funzione d'ingresso del programma c++
{
CMain* main = new CMain(); // Creazione della classe CMain e sua inizializzazione
if( !main->Initialize() ) return 1; // Se la classe non è stata inizializzata con successo, ritorna codice di errore 1
main->Run(); // Avvio del programma
return 0;
}
bene, provate a far avviare il tutto.
se non restituisce errori, è andato tutto bene, sennò, c'è qualcosa che non va
per la cronaca, non verrà visualizzato niente, questa classe serve solo come scheletro per le future lezioni.