RyomaHori

Doing away with the ends of a sideways scroll

003

Context

On a screen with the works laid out around the inside of a cylinder, the vertical roll had no ends and turned forever, while only the sideways travel stopped short. Along its axis the cylinder is a finite tube with open ends, and travelling far enough let the dark beyond the opening show. To keep it hidden I had read the pixels off the screen to find how much margin was actually enough, and clamped the travel to that figure.

Options

  • Slide the whole group sideways and stop it as it nears the endsRejected
  • Wrap each panel's position by the length of the tube and send it round again off-screenChosen

What I chose

I stopped sliding the group as one piece and wrapped each panel's position instead. The seam of the wrap sits outside the field of view, so the hand-off never shows on screen.

Why the rest were rejected

Slide the whole group sideways and stop it as it nears the ends
The ends remain. Worse, the outer columns are grazed by the line of sight and cannot cover the opening, so the dark appears further in than the figure computed from the centre row — the margin had to be widened by looking at the actual screen. And as long as there is a place where it stops, not every column can be brought to the centre.

What I learned afterward

With the ends gone, the margin I had been adding for an opening I could not cover was no longer needed at all. As a side effect every column can now be brought to the centre, which also made reaching all of them by keyboard alone sturdier. The depth calculation, on the other hand, could no longer read the parent transform alone; it had to read each panel's own. Jumping the travel to values far apart from one another never brought the dark back.1

Back to notes