Informations de référence sur les annotations standard et la sémantique DirectX
Les annotations et sémantiques standard (DXSAS) fournissent une méthode d’utilisation de nuanceurs de manière standard qui permet aux nuanceurs d’être utilisés avec des outils, des applications et des moteurs de jeux. DXSAS définit un ensemble de sémantiques et d’annotations attachées aux valeurs d’application hôtes et aux paramètres d’effet dans le but de partager des effets. Pour que ces annotations et ces sémantiques soient utiles, elles doivent être implémentées à la fois dans l’application hôte et dans le fichier d’effet. Ce document décrit la norme DXSAS qui tire parti de la puissance de DirectX Effect Framework pour permettre aux applications hôtes et aux outils de partager des effets DirectX (fichiers.fx) par programmation, ainsi que de concevoir une interaction avec l’interface utilisateur.
Informations générales
Les annotations et la sémantique standard sont conçues pour lier des paramètres d’effet et de fichier X aux valeurs d’application hôte. D3DX Effect Framework (ou effets) encapsule l’état de rendu. Encapsulant l’état de rendu (y compris le vertex, la texture et l’état de traitement des pixels) dans un effet, vous pouvez créer une bibliothèque d’effets couvrant un large éventail d’options de rendu. Cela peut inclure des options telles que le rendu sur différents types de matériel ou le rendu avec fusion à plusieurs passes ou uniques. Pour plus d’informations sur l’infrastructure d’effet, reportez-vous à référence d’effet. DXSAS s’appuie sur ce framework pour offrir une expérience plus cohérente aux développeurs. Une fois la configuration de rendu encapsulée dans un effet, la norme DXSAS permet au développeur d’effet d’exposer l’intention des paramètres d’effet par le biais d’annotations. Ces annotations peuvent ensuite être lues par n’importe quelle application hôte ou outil (pas seulement celui qui a été conçu pour utiliser l’effet) qui est conforme à la norme va comprendre comment utiliser l’effet de la manière qui a été conçue.
La normalisation de l’ensemble de sémantiques et d’annotations d’effet prises en charge par les applications hôtes permet aux auteurs d’effets de créer des effets qui peuvent être utilisés dans plusieurs projets et ainsi promouvoir une communauté plus large d’utilisateurs d’effet. La norme DXSAS rend les fichiers lisibles par les développeurs, échangeables entre les outils et permet aux développeurs de tirer parti des outils tiers pour créer des effets pour leur pipeline.
Ce document décrit la norme DXSAS qui utilise des annotations pour exprimer l’intention des paramètres d’effet, ainsi que la définition d’une collection de valeurs d’application hôte que les applications hôtes acceptent de mettre à la disposition d’un effet.
Création d’effets avec annotations et sémantiques standard
Comme vous pouvez le voir dans le diagramme suivant, la norme DXSAS nécessite des annotations dans un fichier d’effet, ainsi qu’une application hôte qui suit les instructions décrites ici pour travailler avec le fichier.
diagramme
L’application hôte doit implémenter la logique d’interface utilisateur et l’environnement hôte. Pour implémenter des effets compatibles DXSAS, lisez les rubriques suivantes :
- Le paramètre global définit les informations pertinentes à l’effet, telles que la version ou l’auteur de l’effet.
- liaison de données définit la collection de paramètres (ainsi que leur type et leur structure) qui peuvent être utilisés par un effet qui peut être défini par l’application hôte exposée à des effets.
- Pour associer un contrôle d’interface utilisateur à un paramètre d’effet, utilisez une annotation d’interface utilisateur . Ces annotations sont les suivantes : SasUiMax, SasUiMin, SasUiSteps, SasUiStepsPoweret SasUiStride.
- Pour initialiser un paramètre d’effet avec des données contenues dans un fichier externe, utilisez une annotation d’initialisation de paramètre .
- Lorsque les données sont transférées entre l’application hôte et un effet (ou inversement), Cast and Conversion se produit lorsque les types ne correspondent pas exactement. Cette section spécifie comment les données sont écrites lorsque les types source et cible diffèrent. En outre, utilisez ParameterValueModifiers pour modifier la façon dont l’application hôte doit interpréter les données lues à partir du paramètre d’effet. Ces annotations sont les suivantes : SasNormalize et SasUnits.
Respect de la casse
Tous les identificateurs, sémantiques et valeurs d’annotation ne respectent pas la casse. Les noms d’annotation (et non les valeurs) respectent la casse. Les noms d’annotation sont reconnus par le système d’effets D3DX et par conséquent, les noms d’annotation SAP sont également.
Rubriques connexes