Afficher par dessu TOUT!
elf
Membre
Hello,
J'aimerai dessiner un rond vert (un bezierpath) sur l'écran. Mais le truc, c'est que je veux l'afficher par dessu tout le reste. Par dessu des jeux qui se mettent en fullscreen.
Est-ce que quelqu'un saurrais comment faire?
Merci,
Kenneth
J'aimerai dessiner un rond vert (un bezierpath) sur l'écran. Mais le truc, c'est que je veux l'afficher par dessu tout le reste. Par dessu des jeux qui se mettent en fullscreen.
Est-ce que quelqu'un saurrais comment faire?
Merci,
Kenneth
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Mais je ne sais pas si ça marchera avec 100% des applis plein-écran...
.
L'affichage des fenêtres est de la responsabilité du window-server... Rien avoir avec cocoa.
NSWindow n'est jamais qu'une fenêtre du window-server dans laquelle ensuite les "fioritures" sont dessinées (excepté pour NSBorderlessWindow qui correspond à une fenêtre window-server presque pure).
Les contextes OpenGL s'affichent dans une fenêtre "standard" (du point de vue window-server) dont le niveau est CGShieldingWindowLevel.
Les limitations seraient plus au niveau de la carte graphique, notamment en accédant directement au buffer vidéo pour l'affichage.
.
Mais apparemment ça ne capture pas l'écran directement effectivement (ça ne bloque pas exposé).
Parce que je doute qu'après ça une autre appli puisse afficher quoi que ça soit au dessus...
Bah le problème est que en fait, si, ça bloque exposé, et tout le reste avec certains jeux (Warcraft 3, Unreal Tournament 2004) alors que d'autre ne bloquent pas (Halo, Black & White 2).
Mais le truc, c'est que j'aimerai afficher une petite orbe verte par dessu ceux qui bloquent (Unreal).
Je suppose que il faudrais tripoter avec le buffer de la carte graphique, comme tu le dit, Bru. Le truc, c'est de trouver un affichage plus bas-niveau que celui du jeu, histoire de pouvoir y implanter mon element.
J'espère que ça vous dérenge pas si je cross-poste sur la mailing list d'Apple, je vous tirenderai ou courrent de leur réponses?
C'est assez ennuiant, mais je pense que je serrais obliger de trouver une solution alternative. A moins que l'un de vous aie une idée de génie.
(En fait, mon but c'est d'afficher de l'information supplémentaire par dessu des jeux, entre autre, l'êtat de TeamSpeex)