Bonjour,
J'ai aujourd'hui un moteur qui fait un rendu sur le pipeline T&L classique en directx9 et je voudrais maintenant implémentés la gestion des shaders. J'ai lu pas mal de docs et je pense avoir saisi dans les grandes lignes comment permettre d'appliquer un shader dans mon programme et comment le paramétrer. (Je ne me suis pas encore vraiment penché sur l’écriture proprement dite que je n'ai que survolé)
Mais si j'ai bien compris qu'on devait définir dans le shader les paramètres à échanger avec le programme, il y a une information que j'ai du mal à trouver : Que deviennent les données du T&L comme les textures, les données de matériaux et des éclairage que j'utilise actuellement ? (SetTexture, SetMaterial, SetLight etc .... )
J'ai bien compris qu'on pouvais paramétrer ce qu'on voulait dans le shader, mais est ce que sa signifie que si je veut l'appliquer sur un objet je dois le paramétrer moi même avec ces données ou est ce que j'ai aussi accés au données transmise via device->SetTruc() dans le shader ?
Je me pose également des questions sur le coût d'un changement de shader et la façon dont ont le paramètre. Par exemple si j'utilise un shader différent sur certains objets de ma scène c'est pertinent où il faut éviter ? Et lors du changement de shader est ce que je doit tout reparamétrer ou est ce qu'il conserve ses paramétrés précédent ?
Merci
Partager