返回介绍

手册

参考

示例

开发者参考

视锥体(Frustum)

发布于 2021-07-10 14:14:18 字数 2953 浏览 1847 评论 0 收藏 0

Frustums 用于确定相机视野内的东西。 它有助于加速渲染过程——位于摄像机视锥体外的物体可以安全地排除在渲染之外。

该类主要用于渲染器内部计算 camerashadowCamera的视锥体。

构造器(Constructor)

Frustum(p0 : Plane, p1 : Plane, p2 : Plane, p3 : Plane, p4 : Plane, p5 : Plane)

p0 - (可选参数) Plane.
p1 - (可选参数) Plane.
p2 - (可选参数) Plane.
p3 - (可选参数) Plane.
p4 - (可选参数) Plane.
p5 - (可选参数) Plane.

使用6个面来构建一个视锥体。

属性(Properties)

.planes : Array

包含6个平面 planes 的数组。

方法(Methods)

.clone () : Frustum

返回一个与当前对象有相同参数的视锥体。

.containsPoint ( point : Vector3 ) : Boolean

point - Vector3 to test.

检测该点 point 是否在视锥体内。

.copy ( frustum : Frustum ) : Frustum

frustum - 用于拷贝的视锥体。

将传入 frustum 的属性拷贝到当前对象。

.intersectsBox ( box : Box3 ) : Boolean

box - Box3 用于检测是否要交的包围盒。

返回 true 如果该 box 与视锥体相交。

.intersectsObject ( object : Object3D ) : Boolean

检测 object 的包围球 bounding sphere 是否与视锥体相交。

注意:该对象必须有一个 BufferGeometry ,因为这样才能计算出包围球。

.intersectsSphere ( sphere : Sphere ) : Boolean

sphere - Sphere 用于检查是否相交。

返回true 如果球sphere与视锥体相交。

.intersectsSprite ( sprite : Sprite ) : Boolean

检查精灵sprite是否与截锥体相交。

.set ( p0 : Plane, p1 : Plane, p2 : Plane, p3 : Plane, p4 : Plane, p5 : Plane ) : this

从传入的平面设置当前视锥体。没有隐式的顺序。
Note that this method only copies the values from the given objects.

.setFromProjectionMatrix ( matrix : Matrix4 ) : this

matrix - Projection Matrix4 used to set the planes

Sets the frustum planes from the projection matrix.

Source

src/math/Frustum.js

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文