Back to class index
Frustum[Class Summary]
horizontalFov
orthographicWidth
verticalFov
orthographicHeight
ctor
SetKind(...)
SetViewPlaneDistances(...)
SetFrame(pos,front,up)
SetPos(pos)
SetFront(front)
SetUp(up)
SetPerspective(...)
SetOrthographic(...)
Handedness()[const]
Type()[const]
ProjectiveSpace()[const]
Pos()[const]
Front()[const]
Up()[const]
NearPlaneDistance()[const]
FarPlaneDistance()[const]
HorizontalFov()[const]
VerticalFov()[const]
OrthographicWidth()[const]
OrthographicHeight()[const]
NumEdges()[const]
AspectRatio()[const]
SetHorizontalFovAndAspectRatio(...)
SetVerticalFovAndAspectRatio(...)
WorldRight()[const]
NearPlane()[const]
NearPlaneWidth()[const]
NearPlaneHeight()[const]
FarPlane()[const]
Left/Right/Top/BottomPlane()[const]
GetPlane(faceIndex)[const]
GetPlanes(outArray)[const]
CenterPoint()[const]
Edge(edgeIndex)[const]
CornerPoint(cornerIndex)[const]
GetCornerPoints(outPointArray)[const]
AnyPointFast()[const]
ExtremePoint(direction)[const] (+1 overload)
ProjectToAxis(...)[const]
UniqueFaceNormals(out)[const]
UniqueEdgeDirections(out)[const]
SetWorldMatrix(worldTransform)
WorldMatrix()[const]
ComputeWorldMatrix()[const]
ViewMatrix()[const]
ComputeViewMatrix()[const]
ProjectionMatrix()[const]
ComputeProjectionMatrix()[const]
ViewProjMatrix()[const]
ComputeViewProjMatrix()[const]
UnProject(x,y)[const] (+1 overload)
UnProjectFromNearPlane(x,y)[const]
UnProjectLineSegment(x,y)[const]
PointInside(x,y,z)[const] (+1 overload)
Project(point)[const]
NearPlanePos(x,y)[const] (+1 overload)
FarPlanePos(x,y)[const] (+1 overload)
IsFinite()[const]
Volume()[const]
FastRandomPointInside(rng)[const]
UniformRandomPointInside(rng)[const]
Translate(offset)
Transform(transform) (+3 overloads)
MinimalEnclosingAABB()[const]
MinimalEnclosingOBB(expandGuardband)[const]
ToPolyhedron()[const]
ToPBVolume()[const]
Contains(point)[const] (+7 overloads)
ClosestPoint(point)[const]
Distance(point)[const]
Intersects(ray)[const] (+11 overloads)
ToString()[const]
SerializeToString()[const]
ViewportToScreenSpace(...)[static] (+1 overload)
ScreenToViewportSpace(...)[static] (+1 overload)

Frustum::UniformRandomPointInside

Syntax

float4 Frustum::UniformRandomPointInside(LCG &rng) const; [17 lines of code]

Generates a uniformly random point inside this Frustum.

For orthographic frustum type, this function is identical to FastRandomPointInside.

See Also

class LCG, FastRandomPointInside(), PointInside().