| Description | Uses | Classes, Interfaces, Objects and Records | Functions and Procedures | Types | Constants | Variables |
Calculating rays that correspond to the given points on 2D screen. This is used in situations such as by ray-tracing (that casts a ray for each image pixel) and when "picking" objects (e.g. user clicks with a mouse on window, and we want to know what object in 3D space he picked).
| Name | Description |
|---|---|
Class TRaysWindow |
This is used to calculate primary rays for given camera settings and screen size. |
function AdjustViewAngleDegToAspectRatio(const FirstViewAngleDeg, SecondToFirstRatio: Single): Single; |
function AdjustViewAngleRadToAspectRatio(const FirstViewAngleRad, SecondToFirstRatio: Single): Single; |
function PrimaryRay(const x, y: Single; const ScreenWidth, ScreenHeight: Integer; const CamPosition, CamDirection, CamUp: TVector3_Single; const ViewAngleDegX, ViewAngleDegY: Single): TVector3_Single; |
function AdjustViewAngleRadToAspectRatio(const FirstViewAngleRad, SecondToFirstRatio: Single): Single; |
function PrimaryRay(const x, y: Single; const ScreenWidth, ScreenHeight: Integer; const CamPosition, CamDirection, CamUp: TVector3_Single; const ViewAngleDegX, ViewAngleDegY: Single): TVector3_Single; |
|
Oblicz promien pierwotny na podstawie ulozenia kamery i ViewAngleXY. Ta funkcja tworzy rzutnie, pyta ja o jeden |