2010-07-05 2 views
0

J'utilise une classe OpenGL Texture2D et une méthode initWithString pour afficher les chaînes à l'utilisateur. Lors de l'exécution avec iOS 3.0 et XCode 3.1.3 tout le texte apparaîtrait noir dans le simulateur et blanc sur le téléphone. Après la mise à jour vers iOS 4.0, XCode 3.2.3 et iPhone SDK 4.0, le texte apparaît en noir sur le téléphone! Pas si bien que mon application est presque complète et l'illustration a été conçue autour du texte blanc. Comment puis-je réparer cela?La couleur du texte de Texture2D a changé après la mise à jour d'iOS 3.0 vers 4.0

Plus d'infos: Je suis en train de tester sur un téléphone 3G. De plus, la classe texture2D provient de Crashlanding.

+0

De quelle couleur est apparu le texte sur les appareils SGX (iPhone 3GS, iPod touch de 3e génération, par exemple)? En outre, utilisez-vous les modes d'environnement de texture standard ou configurez-vous votre propre état de combinateur de texture personnalisé? – Pivot

+0

J'ai seulement testé sur la 3G. Je ne suis pas sûr en ce qui concerne votre deuxième question (nouveau pour OpenGL ES et OpenGL). – MrDatabase

Répondre

0

Ok, j'ai trouvé une solution avec quelques awesome aide fournie par this blog (majicjungle.com). Fondamentalement, j'ai modifié la méthode initWithString de la classe Texture2D comme mentionné dans les premières étapes du tutoriel lié.

Voici les modifications I faites:

1) a remplacé quatre lignes de initWithString w/ces quatre lignes:

colorSpace = CGColorSpaceCreateDeviceRGB(); 
data = calloc(1, width * height * 4); 
context = CGBitmapContextCreate(data, width, height, 8, width * 4, colorSpace,   kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big); 
CGColorSpaceRelease(colorSpace); 

2) a remplacé kTexture2DPixelFormat_A8 avec kTexture2DPixelFormat_RGBA8888 dans l'appel à initWithData 3) Changé CGContextSetGrayFillColor (context, 1.0, 1.0) ; à CGContextSetRGBFillColor (context, 1.0, 1.0, 1.0, 1.0);

Les arguments 2nd à 4th de CGContextSetRGBFillColor sont les valeurs RVB. Les faire tous 1.0 a abouti à la couleur de police blanche souhaitée.

Je conseille vraiment de lire le blog ... c'est très utile.

Questions connexes