@Banjamin
Пишу

Как правильно создать обработчики в playcanvas?

Добрый день. Задача в playcanvas сгенерировать примитивы и повесить обработчики на каждый или один общий, что бы при клике получать именно выбранный объект. В коде ниже обработчик ссылается сразу на все созданные объекты, что в принципе логично. В объекте evt также нет ссылки на кликнутый объект. Подскажите каким методом получить кликнутый примитив

var CreateCube = pc.createScript('createCube');

// initialize code called once per entity
CreateCube.prototype.initialize = function() {
    
    var el = this.app.root.findByName('BoxTemplate')
    for(var i = 0; i < 10; i ++){
        var newEl = el.clone()
        newEl.name = 'BoxTemplate'+ i
        newEl.rigidbody.teleport(0,0,5)
        this.app.root.addChild(newEl)
this.app.mouse.on(pc.EVENT_MOUSEDOWN, this.onMouseDown, newEl)
        
    }
};

// update code called every frame
CreateCube.prototype.update = function(dt) {
    
};
CreateCube.prototype.onMouseDown = function(evt){
  console.log(this)
}
  • Вопрос задан
  • 28 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы