Color setup + Doc update

This commit is contained in:
blz
2026-03-08 04:13:03 +01:00
parent b47ad96af2
commit b72b63e057
2 changed files with 102 additions and 20 deletions

View File

@@ -47,16 +47,45 @@ $ ./sdl-glisseur_10
$ top (or ps ax) ---> get PID of the glider proccess $ top (or ps ax) ---> get PID of the glider proccess
$ kill -9 PID $ kill -9 PID
``` ```
or try to CTRL+C many times or try many times to close window
- - - - - - - - - - - - - -
# Adjust image size # Adjust image size
Update WIDTH and HEIGHT on lines 36 and 37
Update WIDTH and HEIGHT on
``` ```
// Canvas height and width //
#define WIDTH 640 #define WIDTH 640
#define HEIGHT 480 #define HEIGHT 480
``` ```
- - - - - - -
# Set up the 4 colors
```
// Canvas height and width //
#define WIDTH 640
#define HEIGHT 480
```
- - - - - - -
# Set up the 4 colors
```
// 4 colors definition //
#define COLOR_0_R 254
#define COLOR_0_G 254
#define COLOR_0_B 254
#define COLOR_1_R 254
#define COLOR_1_G 0
#define COLOR_1_B 0
#define COLOR_2_R 0
#define COLOR_2_G 254
#define COLOR_2_B 0
#define COLOR_3_R 0
#define COLOR_3_G 0
#define COLOR_3_B 254
```
- - - - - - - - - - - - - -
# Change glider moving rules # Change glider moving rules
Update the direction adding parameters, check examples from line 158 to line 205 Update the direction adding parameters, check examples from line 158 to line 205

View File

@@ -33,9 +33,39 @@
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// ///
// Canvas height and width //
#define WIDTH 640 #define WIDTH 640
#define HEIGHT 480 #define HEIGHT 480
// 4 colors definition //
#define COLOR_0_R 254
#define COLOR_0_G 254
#define COLOR_0_B 254
#define COLOR_1_R 254
#define COLOR_1_G 0
#define COLOR_1_B 0
#define COLOR_2_R 0
#define COLOR_2_G 254
#define COLOR_2_B 0
#define COLOR_3_R 0
#define COLOR_3_G 0
#define COLOR_3_B 254
/*
#define COLOR_0_R 254
#define COLOR_0_G 254
#define COLOR_0_B 254
#define COLOR_1_R 0
#define COLOR_1_G 0
#define COLOR_1_B 0
#define COLOR_2_R 240
#define COLOR_2_G 240
#define COLOR_2_B 0
#define COLOR_3_R 254
#define COLOR_3_G 0
#define COLOR_3_B 0
*/
// END - 4 colors definition //
Uint32 getpixel(SDL_Surface *surface,int x,int y) Uint32 getpixel(SDL_Surface *surface,int x,int y)
{ {
@@ -121,14 +151,18 @@ int main(int argc, char * argv[])
//SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format, 0xff, 0xff, 0xff)); //SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format, 0xff, 0xff, 0xff));
SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format, 254, 254, 254)); SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format, 254, 254, 254));
//i=320; //i=320;
//j=240; //j=240;
i = floor(WIDTH / 2); i = floor(WIDTH / 2);
j = floor(HEIGHT / 2); j = floor(HEIGHT / 2);
direction=1; direction=1;
//for (j = 0; j < screen->h; j++) { //for (j = 0; j < screen->h; j++) {
//for (i = 0; i < screen->w; i++) { //for (i = 0; i < screen->w; i++) {
// for (n = 0; n < 2000; n++) { // for (n = 0; n < 2000; n++) {
while (0!=1) { while (0!=1) {
@@ -145,13 +179,17 @@ while (0!=1) {
printf("g=%i - ",g); printf("g=%i - ",g);
printf("b=%i - ",b); printf("b=%i - ",b);
*/ */
if ((r==254) && (g==254) && (b==254)) //if ((r==254) && (g==254) && (b==254))
if ((r==COLOR_0_R) && (g==COLOR_0_G) && (b==COLOR_0_B))
couleur=0; couleur=0;
else if (r==254 && g==0 && b==0) //else if (r==254 && g==0 && b==0)
else if (r==COLOR_1_R && g==COLOR_1_G && b==COLOR_1_B)
couleur=1; couleur=1;
else if (r==0 && g==254 && b==0) //else if (r==0 && g==254 && b==0)
else if (r==COLOR_2_R && g==COLOR_2_G && b==COLOR_2_B)
couleur=2; couleur=2;
else if (r==0 && g==0 && b==254) //else if (r==0 && g==0 && b==254)
else if (r==COLOR_3_R && g==COLOR_3_G && b==COLOR_3_B)
couleur=3; couleur=3;
@@ -159,6 +197,7 @@ while (0!=1) {
//printf("direction=%i - ",direction); //printf("direction=%i - ",direction);
// ----- Glider moving rules ----- //
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// ///
/// for different gliders /// /// for different gliders ///
/// on each 4 following cases /// /// on each 4 following cases ///
@@ -251,6 +290,7 @@ while (0!=1) {
break; break;
} }
*/ */
// END ----- Glider moving rules ----- //
@@ -262,24 +302,36 @@ while (0!=1) {
//SDL_LockSurface(screen); //SDL_LockSurface(screen);
switch(new_couleur){ switch(new_couleur){
case 0: case 0:
nr=254; //nr=254;
ng=254; //ng=254;
nb=254; //nb=254;
nr=COLOR_0_R;
ng=COLOR_0_G;
nb=COLOR_0_B;
break; break;
case 1: case 1:
nr=254; //nr=254;
ng=0; //ng=0;
nb=0; //nb=0;
nr=COLOR_1_R;
ng=COLOR_1_G;
nb=COLOR_1_B;
break; break;
case 2: case 2:
nr=0; //nr=0;
ng=254; //ng=254;
nb=0; //nb=0;
nr=COLOR_2_R;
ng=COLOR_2_G;
nb=COLOR_2_B;
break; break;
case 3: case 3:
nr=0; //nr=0;
ng=0; //ng=0;
nb=254; //nb=254;
nr=COLOR_3_R;
ng=COLOR_3_G;
nb=COLOR_3_B;
break; break;
} }
putPixel(screen, i, j, SDL_MapRGB(screen->format, nr, ng, nb)); putPixel(screen, i, j, SDL_MapRGB(screen->format, nr, ng, nb));
@@ -352,6 +404,7 @@ while (0!=1) {
//SDL_UnlockSurface(screen); //SDL_UnlockSurface(screen);
SDL_Flip(screen); SDL_Flip(screen);
} }
//} //}
//sleep(5); //sleep(5);