gpt4 book ai didi

ios - SKSpriteNode - 创建圆角节点?

转载 作者:IT王子 更新时间:2023-10-29 07:48:14 24 4
gpt4 key购买 nike

有没有办法让 SKSpriteNode 变成圆角?我正在尝试创建一个带有颜色填充 SKSpriteNode 的 Tile likesqaure block :

SKSpriteNode *tile = [SKSpriteNode spriteNodeWithColor:[UIColor colorWithRed:0.0/255.0
green:128.0/255.0
blue:255.0/255.0
alpha:1.0] size:CGSizeMake(30, 30)];

如何让它变成圆角?

谢谢!

最佳答案

要获得圆角节点,您可以使用 2 种方法,每种方法都需要使用 SKShapeNode。

第一种方法是使用 SKShapeNode 并将其路径设置为圆角矩形,如下所示:

SKShapeNode* tile = [SKShapeNode node];
[tile setPath:CGPathCreateWithRoundedRect(CGRectMake(-15, -15, 30, 30), 4, 4, nil)];
tile.strokeColor = tile.fillColor = [UIColor colorWithRed:0.0/255.0
green:128.0/255.0
blue:255.0/255.0
alpha:1.0];

另一种使用 Sprite 节点、裁剪节点和带圆角矩形的SKShapeNode作为裁剪节点 mask :

SKSpriteNode *tile = [SKSpriteNode spriteNodeWithColor:[UIColor   colorWithRed:0.0/255.0
green:128.0/255.0
blue:255.0/255.0
alpha:1.0] size:CGSizeMake(30, 30)];
SKCropNode* cropNode = [SKCropNode node];
SKShapeNode* mask = [SKShapeNode node];
[mask setPath:CGPathCreateWithRoundedRect(CGRectMake(-15, -15, 30, 30), 4, 4, nil)];
[mask setFillColor:[SKColor whiteColor]];
[cropNode setMaskNode:mask];
[cropNode addChild:tile];

如果您的瓷砖是一种纯色,我建议您采用第一种方法。

关于ios - SKSpriteNode - 创建圆角节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21695305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com