Bonjour à tous,

Actuellement mon projet personnel est un GUI utilisant OpenGL (je dis pas que je terminerai un jour ce projet ). Donc le GUI est organisé de façon suivante : une "application" (ou gestionnaire si vous préférez) principale gère toutes les fenêtres. Chaque fenêtre gère une vue principale (qui couvre toute la fenêtre). Et chaque vue gère ses sous-vues.

Pour mon GUI j'utilise l'objective-C, qui intègre la notion d'héritage. Donc pour créer une vue personnalisée, on peut reprendre certaines méthodes de ma classe comme celle qui permet de dessiner la vue. Or je souhaite empêcher l'utilisateur lambda de dessiner hors de la vue, pour ça j'utilise glViewport() mais ce qui m'embête c'est que l'utilisateur peut utiliser lui aussi cette fonction pour agrandir l'espace dans lequel il pourra dessiner. Du coup je me suis demandé si le test de scission me permettrait de virer tout ce qu'il a déssiné en dehors de la vue.

Je ne sais pas si le test de scission efface ce qui est en dehors de la zone et qui a été dessiné auparavant. Comment limiter le découpage à une certaine portion de code ? l'activation/désactivation du test de scission suffit-elle ?

Et enfin dernier point : les coordonnées demandées par la fonction glScissor() sont-elles relatives à la zone définie par glViewport() ou sont-elles relatives à la fenêtre enitère ?

Merci

Spootnik