Skip to content

Is it right example ?  #191

@ryanhuh

Description

@ryanhuh

How to use ColliderManager


ColliderManager is used to manage collisions. Every scene has an instance of ColliderManager . You can use it like this to listen
collision events:

creator::CreatorReader* reader = creator::CreatorReader::createWithFilename("creator/CreatorSprites.ccreator");

// will create the needed spritesheets + design resolution
reader->setup();

// get the scene graph
Scene* scene = reader->getSceneGraph();

auto colliderManager = scene->getColliderManager(); <<== getColliderManager() is not member of scene ?

colliderManager->registerCollitionCallback([=](creator::Contract::CollisionType type,
creator::Collider* collider1,
creator::Collider* collider2) {
if (type == creator::Contract::CollisionType::ENTER)
colliderManager->enableDebugDraw(true);

    if (type == creator::Contract::CollisionType::EXIT)
        colliderManager->enableDebugDraw(false);

}, "");
More features of colliderManager can refer to the header file.


I know that it is member of CreatorReader .

but this example will crash at ColliderManager.cpp#145 removeCollider().

why collider manager has crash?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions