Hello,
I am experiencing a synchronization issue between the official HTML Element object and the Construct canvas when the camera moves.
The HTML element appears to lag behind its expected position. The faster the camera moves, the larger the visible offset becomes. When the camera stops, the HTML element returns to the correct position.
This looks like a temporal synchronization issue rather than an incorrect coordinate calculation:
visible offset ≈ camera speed × update delay
Minimal reproduction setup:
A Sprite and an HTML Element at exactly the same position and size
Both objects are on the same layer
Layer parallax: 100, 100
Layer scale rate: 100
Layer angle: 0
Z elevation: 0
Simple HTML content:<div style="width:100%;height:100%;background:red"></div>
No additional CSS classes or effects
V-synced framerate
Camera moved continuously across the layout
I also tested the project with Use worker enabled and disabled, but it did not change the result.
The Sprite remains correctly synchronized with the camera, while the HTML Element visibly trails behind it. The problem becomes much easier to see at higher camera speeds.
It seems that the WebGL canvas and DOM overlay may be updated or composed at slightly different times.
Is this a known limitation of the HTML Element plugin or the browser composition pipeline? Could Construct compensate for this internally, or update the DOM container at the same stage as the canvas camera transform?
A speed-based prediction could reduce the issue, but an engine-level solution would probably be more reliable because Construct knows the exact camera position and rendering timing.
Thank you.