[x3d-public] OrthoViewpoint fieldOfView
GPU Group
gpugroup at gmail.com
Fri May 4 14:32:48 PDT 2018
Its like a zoom.
on bind, freewrl checks if fieldOfView.n == 4 and copies, else uses defaults
then on each frame, it honors the ymax - ymin range (like you say a single
value would do)
- and scales the xmax- xmin range to match the aspect ratio of the screen.
-- this assumes you don't want anisotropic scaling,
- and treats the field as outputOnly on each frame (in case you want to
know the range in other nodes)
- until the next bind when it starts fresh
-Doug
On Fri, May 4, 2018 at 2:57 PM, Andreas Plesch <andreasplesch at gmail.com>
wrote:
> There was a user question on how to use the fieldOfView field for
> OrthoViewpoint:
>
> http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/
> components/navigation.html#OrthoViewpoint
>
> The description in the paragraph is hard to follow since it does not
> explicitly name the four components of the MFFloat field. If we name
> the four components minx, miny, maxx, maxy in that order, then my best
> guess is that:
>
> minx: left x away from center of current view
> miny: bottom y away from center of view
> maxx: right x away from center of view
> maxy: top y away from center of view
>
> The "minimum and maximum extents" in the spec. then refer to corners
> defined by these coordinates. These should be comfortably visible in
> the viewport.
>
> Then there is this correspondence:
>
> display width (maximum_x - minimum_x)
> -------------- = -----------------------
> display height (maximum_y - minimum_y)
>
> I think it is intended as an implementation note to suggest the
> maximum/minimum_x/y need to be recomputed by the browser to fit the
> display aspect ratio before being used in a projection matrix but I am
> not sure. I may also be a warning that the fieldOfView parameters need
> to have the same aspect ratio than the viewport which, however, is
> typically not known to the scene author in advance. Overall, the note
> may be more confusing than helpful.
>
> There is also the question why the four corners should be provided and
> not just a width and height, eg. two parameters, more similar to the
> perspective field of view. In theory, providing the four corners
> allows for an asymmetric projection, eg. an additional shift away from
> the center. Since the center is also the center of rotation of examine
> mode, this option seems exotic and not very useful. In fact, x3dom
> seems to override any asymmetry and just uses the width and height
> (deltas) with 0 offset. It looks x_ite allows that, on the other hand,
> although I did not test. There was perhaps some additional
> consideration when the field was introduced ? Does anybody recall ?
>
> Finally, the default value of "-1, -1, 1, 1" seems to suggest some
> fractional coordinates, following the idea of an angular field of view
> for a perspective, although I am pretty sure that they are in units of
> local coordinates (as stated). The default then only works for scenes
> of about that 2x2x2 size, I suspect. On the other hand the default
> viewpoint is 10m away from the origin, so perhaps a -10,-10,10,10
> default would be more consistent with the default viewpoint position.
> Since users may be surprised if the default does not work for their
> 100x100x100 or very small scene, a tool tip note may be appropriate,
> if that is indeed the case.
>
> Any confirmation or clarification much appreciated,
>
> -Andreas
>
>
> --
> Andreas Plesch
> Waltham, MA 02453
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20180504/38827e52/attachment.html>
More information about the x3d-public
mailing list