53 votes

Qu'est-ce que le nux et à quoi sert-il ?

Cette question mentionne qu'Unity utilisera nux en tant que boîte à outils.

Qu'est-ce que le nux ?

70voto

Jason Smith Points 1534

Nux est une boîte à outils et un canevas de widgets basés sur OpenGL, utilisés pour créer des interfaces utilisateur, similaires à GTK+. À un niveau élevé, nux est décomposé en 3 bibliothèques.

  • NuxCore
  • NuxGraphics
  • Nux

NuxCore est responsable des éléments de base tels que le système de types, les fonctions mathématiques, la définition des couleurs, etc. Elle fournit tous les types primitifs pour un système de widgets (couleur, rectangle, point). Très peu de logique est présente ici, il s'agit d'une bibliothèque fondamentale.

NuxGraphics est une fine couche d'abstraction OpenGL. Elle fournit des simplifications de modèles OpenGL communs (pousser et sortir des rectangles de découpage, changer les cibles de rendu, définir l'état, etc), cependant elle n'interdit pas directement aux utilisateurs de faire eux-mêmes des appels OpenGL bruts. NuxGraphics fournit des abstractions pour les textures et le chargement/déchargement de données.

Nux est une bibliothèque de widgets implémentée au-dessus de NuxCore et NuxGraphics. Nux contient une copie de presque tous les principaux widgets de la pile GTK ainsi que plusieurs widgets de composition (sélecteur de couleurs, graphiques, vues 3D). Les widgets Nux ne sont pas encore au même niveau de complexité que les widgets GTK, manquant d'un rendu de texte avancé (en cours de correction) et d'une prise en charge claire des thèmes.

Le rendu à l'intérieur de nux peut être décrit comme un "style toile". Nux fournit un peintre pour réaliser des primitives de dessin de base qui peuvent être utilisées en plus de l'intégration d'autres widgets. Ainsi, plutôt que d'intégrer une hbar pour créer une ligne horizontale, l'auteur d'un widget peut, s'il le souhaite, utiliser le peintre pour dessiner directement la barre. Les images peuvent également être rendues de cette manière, plutôt que d'intégrer un widget supplémentaire simplement pour rendre une image statique et non réactive. Cela n'exclut toutefois pas la possibilité d'intégrer simplement des widgets.

Dans Unity, nux est utilisé dans ce que nous appelons le "Embedded Mode". Essentiellement, nux fournit une fonction pour se peindre dans un contexte open gl étranger. Nous appelons la fonction paint et nux s'affiche sur le backbuffer. Nous pouvons alors continuer à peindre par-dessus si nous le souhaitons (parfois nous permettons à compiz de le faire). Des fonctions sont fournies pour gérer l'état d'opengl en mode intégré.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X