J'ai vu cette question sur SO, mais ici je veux qu'elle se concentre sur GFX.
Donc, à votre avis, quelles applications / fonctionnalités chaque futur programmeur GFX devrait-il écrire / modifier pour s'améliorer?
Wiki communautaire car il n'y a pas de "bonne réponse".
LE: Ne fait pas référence à des jeux réels, mais à des fonctionnalités graphiques, par exemple changer quelque chose dans un moteur (par exemple, comment il charge des objets), faire un compositeur, etc.
Réponses:
Ma réponse est toujours la même: si vous n'en avez pas écrit auparavant, écrivez un raytracer.
Vous devrez traiter des structures d'optimisation, de la précision numérique et de toutes sortes d'autres problèmes, mais vous travaillerez également directement avec les mathématiques de la lumière d'une manière que vous faites rarement lorsque vous traitez avec tous les hacks et approximations qui composent un rendu de production en temps réel.
Supprimez tout l'édifice des systèmes de chargement, des mots à la mode de la semaine, différé ceci ou avant cela, et vous vous retrouvez enfin avec la lumière voyageant à travers un support. Au final, c'est tout ce qu'il y a de graphique.
la source
Il peut être de peu d'utilité pratique de nos jours, mais écrire sur un moteur de rendu logiciel, au moins un élémentaire (peut-être juste quelques cubes texturés en rotation), est un exercice utile.
Comprendre comment transformer, projeter, découper, trier en profondeur, pixelliser et texturer des polygones de carte vous-même vous permettra de mieux comprendre ce que font le matériel 3D et les API de rendu.
la source
Tout en ne rendant pas le code, je pense qu'écrire un compilateur BSP et le code de traversée qui l'accompagne est un bon exercice en mathématiques vectorielles.
Deuxièmement, un rendu différé. Non pas parce que c'est la réponse ultime au rendu, mais cela vous donnera un aperçu d'une autre approche du rendu.
la source
Apprenez la mécanique et les compétences pour écrire de bons shaders. Bien que n'étant pas 100% nécessaire dans tous les cas, c'est une compétence précieuse à savoir.
la source