Прямоугольное тело Box2d с закругленными углами

Я реализовал мягкое тело (форма круга) в Box2d, и когда это мягкое тело сталкивается с углом прямоугольного объекта box2d, оно теряет свою круглую форму. Я думаю, что это можно решить, сделав углы прямоугольника закругленными, или мы можем реализовать этот закругленный угол, используя концепцию мягкого тела.

Может ли кто-нибудь направить меня в этом сценарии?


person Renaissance    schedule 24.04.2013    source источник
comment
почему бы не попробовать свои две мысли, а затем вернуться с более конкретным вопросом? SO не предоставляет руководства, а отвечает на конкретные (желательно узкие) вопросы, см. FAQ.   -  person LearnCocos2D    schedule 24.04.2013
comment
Извините, что не задал конкретный (узкий) вопрос ... И я решил его с помощью редактора физики.   -  person Renaissance    schedule 24.04.2013


Ответы (1)


Чтобы получить закругленный угол, я использовал редактор физики, чтобы сделать физическое тело с закругленными углами. Вы можете получить редактор физики здесь: www.codeandweb.com/physicseditor

Чтобы добавить эту физику закругленных углов в cocos2d iphone, я использовал GB2ShapeCache для кэширования этой физической формы, а затем использовал ее из кэшированной памяти.

Вы можете получить этот пакет файлов GB2ShapeCache отсюда: http://www.4shared.com/zip/8H6BNDTH/GB2Shape.html

Чтобы кэшировать это физическое тело: импортируйте нижеприведенный файл в свой код, сначала импортируйте:

#import "GB2ShapeCache.h"

а потом,

[[GB2ShapeCache sharedShapeCache] addShapesWithFile:@"rectangleRoundedCornerBody.plist"];

Теперь прямоугольник с закругленными углами находится в вашем кеше, поэтому вы можете вызывать их, используя их имена, как показано ниже.

[[GB2ShapeCache sharedShapeCache] addFixturesToBody:PhysicsBody forShapeName:@"nameOfRectangleBody"];

Если кто-то хочет дальнейших объяснений, может прокомментировать ..

person Renaissance    schedule 02.08.2013