Comment définir le matériel pour les métaux(comme l'argent) en OpenGL?
Comment définir le matériel pour les métaux(comme l'argent) en OpenGL? Quelqu'un sait?
- Pourquoi ne pas utiliser un métal texture que vous trouverez en ligne et de les appliquer à l'objet?
- Les Shaders + texturing.. et si vous vous sentez courageux, le lancer de rayons trop.
- Vous ne les appelez pas
glEnable(GL_METAL)
. Imitant le métal, ou tout du monde réel substance, est une chose complexe, qui peut être approchée de différentes manières pour obtenir des degrés divers de précision. À cause de cela, il n'y a aucun moyen de répondre à cette question sans en savoir plus sur la portée de l'ensemble du problème. - ne pas utiliser un métal texture" Parce que la texture n'est pas brillant.
Vous devez vous connecter pour publier un commentaire.
Si vous voulez que votre matériel a parfois l'air "un peu" comme le métal, vous devez définir correspondant diffus, de l'ambiance, spéculaire et de la "brillance" paramètres". Vous pourriez enquêter sur le matériel existant bibliothèques pour la 3d éditeurs comme blender et de voir comment ils le font. Ce n'est pas cher, mais il sera également regarder à bas prix. Normalement matériau à faible GL_SHININESS valeur (3..12 ans, je crois?) va chercher "un peu" comme la surface métallique.
Si vous voulez que votre matériel à regarder de plus comme le métal, mais sous certaines conditions d'éclairage, vous aurez besoin d'écrire pixel shader qui va utiliser photoréaliste de la texture de l'argent, d'autres de texture qui contrôle la couleur spéculaire et de la force. Une bonne texture vous permet de sortir avec d'horribles et facile shader, aussi longtemps que les conditions d'éclairage ont été soigneusement sélectionnés. Qui nécessite programmeur avec GLSL connaissances et un bon artiste pour faire de la texture et de l'artiste sera plus important - même un non-ombrage métallique comme par pixel phong peut être affiné à la main pour ressembler à ce que vous voulez (precess pourrait être ennuyeux et fastidieux). Shader elle-même ne nécessite l'éclairage par pixel avec spéculaire (tout spéculaire), normalmapping soutien et de l'environnement de la réflexion de la cartographie (avec lentille de fresnel soutien à long terme). À l'aide de la technologie HDR pour les faiblement réfléchissant des surfaces polies aidera aussi.
Si vous voulez un VRAI et PARFAIT d'argent, alors vous êtes en difficulté et devrait reconsidérer. Les surfaces métalliques ont "floue" réflexions qui peuvent être une douleur à mettre en œuvre rapidement, en fonction de votre matériel. Un autre problème est que vous aurez à peu près l'étude du métal lui-même, consultez chaque surface métallique démo qui existe là-bas, lire la GDC de papiers, etc. I. e. faire de la recherche, qui peut prendre beaucoup de temps, d'effort et de ne pas payer à la fin, car il est tout à fait possible que le résultat final sera horrible performance. La chose importante est que vous n'avez pas besoin de simuler le matériel pour le faire ressembler à droite vous avez besoin de tromper le spectateur en pensant que c'est de l'argent.
Si vous cochez ce site vous pouvez trouver une sélection de différents paramètres du matériau conçu pour imiter divers matériaux, y compris l'argent. Cependant, comme d'autres l'ont dit dans les commentaires, n'oubliez pas que l'éclairage de Phong, qui est ce que OpenGL utilise des matériaux réglages de cette façon de faire, a un moment difficile de rendu de certaines substances, de manière réaliste, en particulier réfléchissant, comme de l'argent. Mais les paramètres de matériau à ce site devrait vous donner quelque chose d'argenté, au moins en première approximation. (Assurez-vous d'attraper la note à la fin sur la multiplication brillance par 128)
Comme Solaraeus dit, vous pouvez faire un "matériau" de la classe à la définition d'un objet matériel, par exemple:
Après vous pouvez définir un fichier .h avec plusieurs matériaux pour une utilisation ultérieure, par exemple:
#endif
De sorte que vous pouvez les utiliser n'importe où, y compris les matériaux.h activant le matériel quand vous en avez besoin:
Exemple:
Est plus facile si vous pensez à des objets.
De haute qualité, aspect métallique peut être obtenue à l'aide de PBR - Physiquement Rendu - techniques.
Fondamentalement, les droits d'OBTENTEUR utiliser un shader et la texture suivants entrées:
Il y a d'abondance ou des articles sur les droits d'OBTENTEUR sur le Web. L'un de mai favoris est ce un.
Aussi, combiné avec un effet environnemental (Cube map ou autre réflexion technique) met en évidence l'effet métal.