The hyperplane is a generalization of the current system that Second Life uses for inter-region communications, with regard to region borders.
From Wikipedia: In three-dimensional space, a hyperplane is an ordinary plane; it divides the space into two half-spaces.
A hyperplane is a 2D interface between two 3D regions. This concept would be used for inter-domain and intra-domain links.
A hyperplane is similar to the idea of a "portal", except it is not necessarily end-user-apparent.
When a hyperplane intersects a agent's viewer frustum, one of two things can happen:
- The agent becomes a child agent of the region on the other end of the hyperplane, and subscribes to object updates from the region on the other end. This is the case if a region can accept additional load from child agents.
- The agent receives a single static texture from the region on the other side of the hyperplane, which is displayed on the hyperplane. This is the case if the region is heavily loaded and can no longer accept further child agents, or the region opts to respond this way for other reasons.
If an agent intersects with a hyperplane, that causes a region hand-off, allowing agents to travel from region to region through hyperplanes.
Unresolved issues (propose fixes!):
- Since hyperplanes are not necessarily a 1 to 1 relationship, an agent entering a hyperplane will not generally be able to go back through to go to where they came from.
- Should hyperplanes be treated as regular assets?
- Cartesian mapping becomes an irrelevant matter. Is this important for a "virtual world"?