Fix one landscape orientation rendering image upside down
`SurfaceTexture.getTransformMatrix()` for a custom SurfaceProvider does not vary with `Preview.targetRotation` — it only encodes the static sensor-to-buffer transform. The v1.1.8 rebind-on-rotation fix did update Preview's target rotation, but the matrix returned to the GL renderer was identical across all four device orientations. Combined with the activity rotating under fullSensor (so the GL clip-space "up" direction tracks the device, not the world), one of the two landscape orientations rendered the image upside down on a real device. The emulator masked this because its virtual scene is roughly symmetric. Compose the missing piece on the GL thread: rotate the texcoord sampling pattern around its centre by the inverse of the activity rotation before sampling the camera texture. The four orientations now produce four distinct matrices, keeping world-up at screen-up in all of them while leaving portrait unchanged. Bump to 1.1.9. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f0d81db068
commit
6d7be66341
2 changed files with 45 additions and 5 deletions
|
|
@ -1,4 +1,4 @@
|
|||
versionMajor=1
|
||||
versionMinor=1
|
||||
versionPatch=8
|
||||
versionCode=10
|
||||
versionPatch=9
|
||||
versionCode=11
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue