1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| /*Charger une heightmap, remplit la matrice d'altitude, puis cree la matrice de couleurs et genere la texture correspondante */
multitexture creer_texture(multitexture m){
int i,j;
int k,l;
Image *image = (Image *) malloc(sizeof(Image));
ImageLoad(m.name, image);
//remplisage de la matrice d'altitude 'mt.heightmap[][]':
m.heightmap=(float**)malloc(SIZE*sizeof(float*));
for (i=SIZE-1,k=0;i>0;i--,k++){
m.heightmap[k]=(float*)malloc (SIZE*sizeof(float));
for(j=0,l=0;j<SIZE*3;j+=3,l++){
m.heightmap[k][l]=image->data[i*image->sizeX*3+j];
pourcentage[k][l]=Terrain_RemplitPart(m.heightmap[k][l]);//calcul de la matrice de couleur
}
}
generer_texture(m);//generation de la nouvelle texture
free(image);
return m;
} |
Partager