19.5 C
Brasília
segunda-feira, dezembro 23, 2024

Problema com DEVICEMOTION – Cocos Creator


Olá, estou usando DEVICEMOTION com o projeto CC v2.0.10. Eu uso o seguinte código, no entanto, o nó que estou tentando mover com devicemotion não responde quando testado em um dispositivo móvel com inclinação.

cc.systemEvent.setAccelerometerEnabled(true);
cc.systemEvent.on(cc.SystemEvent.EventType.DEVICEMOTION, this.onDeviceMotionEvent, this);

 onDeviceMotionEvent: perform (occasion) {
        occasion.acc.x = this.ballAccel.x;
        occasion.acc.y = this.ballAccel.y; 
        cc.log(occasion.acc.x + "   " + occasion.acc.y);
    },

Mesmo que occasion.acc.x e .y não sejam iguais a 0, o código não funciona corretamente.

Você pode consultar os casos de exemplo que foram criados por um novo projeto, clique na aba Examples . Após a criação, o exemplo DeviceMotion está em asset->cases->03_gameplay->01_player_control->DeviceMotion

Na verdade, você deve ajustar o movimento do alvo na função de atualização.

Tenho o movimento ajustado na função de atualização com o código

replace (dt) {
        this.node.x += this.ballAccel.y * dt * this.pace;
        this.node.y += this.ballAccel.x * dt * this.pace;
    },

Onde this.ballAccel é um cc.v2, e this.pace é apenas um único inteiro. O nó da bola se transfer, mas não está recebendo entrada devicemotion. Eu tentei apenas fazer
this.node.x += this.ballAccel.y;porém o problema persiste.

Você verificou o exemplo que listei abaixo?

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

0FansLike
0FollowersFollow
0SubscribersSubscribe
- Advertisement -spot_img

Latest Articles