2013-03-18 5 views
5

मैं संशोधित मानक उदाहरण "नमस्ते दुनिया":cocos2d। सही मिश्रण?

 CCSprite *sprite = [CCSprite spriteWithFile:@"Untitled-1.png"]; 
     CGSize winSize = [CCDirector sharedDirector].winSize; 
     sprite.position = ccp(winSize.width/2, winSize.height/2); 
     [label setBlendFunc:(ccBlendFunc){GL_ZERO, GL_SRC_ALPHA}]; 
     [label setColor:ccBLACK]; 
     [sprite addChild:label]; 
     [self addChild:sprite]; 

मुझे मिल गया:

image enter image description here

कैसे नष्ट करने के लिए/एक पृष्ठभूमि के आसपास "नमस्ते दुनिया" लेबल में कटौती?

+0

आप क्या हासिल करने की कोशिश कर रहे हैं? {GL_ZERO, GL_SRC_ALPHA} के साथ आप स्रोत अल्फा द्वारा पृष्ठभूमि रंग को गुणा करते हैं और स्रोत रंग नहीं खींचते हैं, जिसके परिणामस्वरूप काला रंग होता है जहां स्रोत अल्फा 0 था और पृष्ठभूमि रंग जहां स्रोत अपारदर्शी था। – Kreiri

+2

मैं एक ढाल फ़ॉन्ट प्राप्त करना चाहता हूं और मैं खुद को ग्लिफ़ संपादक जैसे कुछ खरीदने की अनुमति नहीं दे सकता। – user2083364

उत्तर

3

मेरे वर्तमान समाधान इस तरह CCLabelTTF कुछ init के लिए है:

CCLabelTTF *label = [CCLabelTTF labelWithString:@"Hello World" fontName:@"Marker Felt" fontSize:64 dimensions:size hAlignment:kCCTextAlignmentCenter vAlignment:kCCVerticalTextAlignmentCenter]; 

आकार है, जहां [CCDirector sharedDirector] मेरे examle के लिए .winSize।

कोई अन्य सुझाव स्वागत है

+0

यह समाधान केवल 2 परतों के लिए सही काम करता है, लेकिन तीसरे और अन्य परतों को मिटा देता है। इसका मतलब है कि लेबल के आस-पास का क्षेत्र काला है, पारदर्शी नहीं है – user2083364