(Software Renderer)Texture Minifcation/Magnification Problem
-
Hallo,
ich bin dabei mir einen Software Renderer zu schreiben und bin beim Texture Mapping auf folgendes Problem gestoßen:
Welche Filtermethode soll ich anwenden, wenn das Bild nicht in zwei Richtung vergrößert/verkleinert wird, sondern nur in eine (also in die eine Richtung verkleinert und in die andere vergößert werden müsste)?Pseudocode:
float ratio[2]; //Seitenverhältnis Textur/Bildschirm if(ratio[X] == 1.0f and ratio[Y] == 1.0f) /* Textur kann 1:1 übernommen werden */; else if(ratio[X] > 1.0f and ratio[Y] > 1.0f) /* Textur muss vergrößert werden (Bilinear)*/; else if(ratio[X] < 1.0f and ratio[Y] < 1.0f) /* Textur muss verkleinert werden (Trilinear)*/; else /* nicht eindeutig!? Was tun? */;
Danke
-
float ratio[2]; //Seitenverhältnis Textur/Bildschirm if(ratio[X] == 1.0f and ratio[Y] == 1.0f) //dir ist klar dass ein == vergleich bei floats so ziemlich NIE true sein wird? ;); else if(min(ratio[X],ratio[Y]) > 1.0f) /* Textur muss vergrößert werden (Bilinear)*/; else /* Textur muss verkleinert werden (Trilinear)*/;
bitte