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


Réponses:


69

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

  • NuxCore
  • NuxGraphics
  • Nux

NuxCore est responsable des éléments de base tels qu'un système de types, des fonctions mathématiques, des définitions de couleurs, etc. Il fournit essentiellement tous les types primitifs d'un système de widgets (couleur, rectangle, point). Très peu de logique est présente ici, c'est une bibliothèque de base.

NuxGraphics est une couche d'abstraction OpenGL mince. Il fournit des simplifications des modèles OpenGL courants (poussées et sauts de rectangles de découpage, modification des cibles de rendu, réglage de l'état, etc.), mais n'interdit pas directement aux utilisateurs de passer eux-mêmes des appels OpenGL bruts. NuxGraphics fournit des abstractions pour les textures et les données de chargement / déchargement.

Nux est une bibliothèque de widgets implémentée sur NuxCore et NuxGraphics. Nux contient un duplicata de presque tous les principaux widgets de la pile GTK, ainsi que plusieurs widgets de composition (sélecteur de couleur, graphiques, vues 3D). Les widgets Nux ne sont pas encore au même niveau de complexité que les widgets GTK, ils ne disposent pas d'un rendu de texte avancé (en cours de correction) ni d'un support de thématisation clair.

Le rendu à l'intérieur de nux pourrait être décrit comme un «style de toile». Nux permet au peintre d'effectuer des primitives de dessin de base pouvant être utilisées en plus d'intégrer d'autres widgets. Ainsi, plutôt que d’incorporer un hbar pour créer une ligne horizontale, un auteur de widget peut, à son choix, utiliser le peintre pour dessiner directement la barre. Les images peuvent également être rendues de cette façon, plutôt que d'incorporer un widget supplémentaire simplement pour rendre une image statique non réactive. Cela n'exclut toutefois pas simplement l'intégration de widgets.

Dans Unity, nux est utilisé dans ce que nous appelons le «mode intégré». Nux fournit essentiellement une fonction permettant de se peindre dans un contexte étranger ouvert. Nous appelons la fonction paint et nux se bloque sur le backbuffer. Nous pouvons ensuite continuer à peindre dessus si nous le souhaitons (parfois, nous permettons à Compiz de le faire). Il y a des fonctions fournies pour faire la gestion d'état opengl en mode intégré.


1
très instructif, Jason. Merci. Existe-t-il un lien permettant de trouver plus d'informations?
SB

Y a-t-il un objectif éventuel "d'élargir" Nux dans une boîte à outils principale pour Ubuntu de la même manière que GTK + est actuellement la boîte à outils "principale"?
ShroudedCloud
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.