Buttons work but controls don't but on buildbox 3 on the pc it do https://play.google.com/apps/testing/co.catothebasterdgames.twistfall after testing som other controls I've found that the touch rotate node isn't working outside buildbox 3.1.2 environment
It seems bugged indeed. I tested Touch Rotate node on iPhone, and it didn't work. Someone else tested it on Android, didn't work either.
Hey, I'm on 3.1.4 and I'm getting this issue. Is there an update someone from the BB team can provide? Thanks!
Try this code for your Touch Rotate. works perfect on IOS. Code: let enabled = false; let scrX, scrY; let prev; let phys; let isTouched = false; let forward, right; let delta = new Vec3(0, 0, 0); let sens; function init() { smooth = this.attribute('Smooth'); smooth = Math.max(0, Math.min(0.99, 1 - smooth)); sens = this.attribute('Sensitivity'); if (this.attribute('Invert X')) sens.x *= -1; if (this.attribute('Invert Y')) sens.y *= -1; scrX = Number(this.attribute('Screen X')); scrY = Number(this.attribute('Screen Y')); forward = new Vec3( scrY == 0 ? 1 : 0, scrY == 1 ? 1 : 0, scrY == 2 ? 1 : 0 ); right = new Vec3( scrX == 0 ? 1 : 0, scrX == 1 ? 1 : 0, scrX == 2 ? 1 : 0 ); phys = this.entity().physics(); sens = sens.scale(0.025); if (phys && phys.type() != 'kDynamic') { phys = null; } } function update(dt) { if (!enabled) return; let pt = Input.currentTouchPosition(); if (Input.hasTouch()) { if (prev == null) { prev = pt; } let dx = sens.x * (pt.x - prev.x); let dy = sens.y * (pt.y - prev.y); let vel = getVelFromScreenMove(dx, dy); delta = delta.add(vel); prev = pt; if (phys) { addAngVel(delta.scale(smooth)); } else { let ent = this.entity(); let nPos = ent.rotation().add(delta.scale(smooth)); ent.setRotation(nPos.x, nPos.y, nPos.z); } delta = delta.scale(1 - smooth); prev = pt; } else { prev = null; } } function signal(name, value) { enabled = value; } function getVelFromScreenMove(dx, dy) { return forward.scale(dy).add( right.scale(dx)) } function addAngVel(vel) { setAngVel(vel.add(phys.angularVelocity())) } function setAngVel(vel) { phys.setAngularVelocity(vel.x, vel.y, vel.z); }