2010-12-31 4 views
5

Je suis en train de faire un jeu Android en utilisant des sprites, (ou des personnages très pixélisés, des arrière-plans etc.). Je les dessine sur la toile comme si ...Android Canvas.DrawBitmap sans flou/AntiAliasing?

matrix.preScale(xrat,yrat);

canvas.drawBitmap(img, matrix, null);

Où img est le Bitmap et la XRAT et yrat sont les échelles.

Mon problème est que lorsque je teste, le bitmap est flou ou anti-aliasé, est-il possible d'empêcher cela? Le style d'art rigide-blocky du jeu sera ruiné si les blocs sont flous.

Toute (ANY) aide appréciée!

Répondre

20

Créer une nouvelle peinture à utiliser lors de l'élaboration des bitmaps avec les paramètres:

Paint drawPaint = new Paint(); 
drawPaint.setAntiAlias(false); 
drawPaint.setFilterBitmap(false); 

Filtrage Je crois par défaut et tenter de lisser les bitmaps quand Dessiné plus grande échelle.

+2

Je crois que le filtrage n'est appliqué que si vous augmentez, pas en bas. Je voulais juste faire remarquer que le PO n'a pas précisé. – user432209

+2

Salut merci beaucoup les gars, je voudrais aussi ajouter à tous ceux qui font un jeu de 8 bits ou d'essayer de faire ce que je fais, vous devez mettre vos ressources d'image en drawable-hdpi ou Android le filtrera de toute façon . – seveibar

+0

Les deux bons points. – GuyNoir