Historique des modifications - Message

Message #11787

Sujet: Changer la coloration de la texture d'une skybox


TypeDateAuteurContenu
Création du message06-05-2017 22:52:40Magun
un petit coup de shader: (ici version 1.2)

Code c++ :


uniform sampler2D texture;
uniform vec4 color;

void main(){
    gl_FragColor = texture2D(texture, gl_TexCoord[0].xy) * color;
}


sinon tu retouche directement la texture (donc garder un double en mémoire)
tu itère sur tous les pixel de ta texture et tu multipli par une couleur de reference

Code c++ :


      char* tmp = (char*)texture->lock();
      for(int x = 0; x<texture->getSize().X; x += 4) {
          for(int y = 0; y<texture->getSize().y; ++y) {
               tmp[y * texture->getSize().X + x + 0] *= color_alpha;
               tmp[y * texture->getSize().X + x + 1] *= color_red;
               tmp[y * texture->getSize().X + x + 2] *= color_green;
               tmp[y * texture->getSize().X + x + 3] *= color_blue;
          }
     }


il faut évidement vérifier le type de la texture, ici je te les fait pour A8R8G8B8
dsl je n'ai pas toucher au texture d'irrlicht depusi un moment, il faudras testerwink

si tu compte ajouter d'autre effets plus complexe et dynamique a ton ciel il vaut mieux un shader

Retour

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
65 invités en ligne
membre en ligne: -
RSS Feed