2009-07-03 21 views
0

Hey je me demandais si quelqu'un sait faire du découpage avec des textures 2D pour un système de type gui ou menu.Clip ou masque une texture 2D

Heres une sortie par exemple je voudrais produire

un écran de jeu avec une taille de 500 x 500. Avec un écran derrière elle avec une taille de 1000 x 1000.

Quand je dessine une texture à 0, 0 avec l'écran parent de 500 x 500 je voudrais que le composant ne soit pas montré

mais si je dessine le composant à 500, 450 et la largeur de la texture et la hauteur sont 100 je m'attendrais à seulement voir toute la largeur mais seulement la moitié de la hauteur du composant.

Je me demandais s'il y avait un moyen facile de le faire?

Edit:

Fondamentalement, je pensais quelque chose comme un effet de masque dans Photoshop.

ici est une image Clipping picture

Le contour noir est l'endroit où l'autre moitié de la texture serait tirée.

Répondre

0

Vous pouvez découper une texture. Lorsque la forme résultante est polygonale, vous pouvez le faire en modifiant simplement les sommets et les coordonnées de texture. Lorsque la texture tronquée est une forme compliquée, les choses deviennent plus compliquées.

Vous pouvez également découper en dessinant tout dans le bon ordre.
Il peut ne pas être efficace, mais c'est facile.

p.s. Une image aiderait ici.

0

Une autre façon de résoudre ce problème:

Fondamentalement, vous avez deux scènes pour dessiner: l'écran de jeu (la partie bleue dans votre picture) et l'écran d'arrière-plan (partie rouge de votre picture).

Je pense que vous pourriez dessiner l'écran de jeu et l'écran de fond dans deux objets bitmap différents (ou tout ce que vous avez dans votre bibliothèque graphique). L'étape suivante consiste à découper la totalité de l'image bitmap en arrière-plan sur l'objet bitmap en sortie, puis à découper uniquement la partie centrale (un carré de 500 x 500 centré dans l'écran de sortie) de l'écran de jeu.


P.S: Peut-être que ce serait mieux si vous pouviez ajouter plus de détails sur la bibliothèque graphique que vous utilisez.

+0

Eh bien, le rouge était supposé être un autre écran derrière. –