/** ĠA ĠCamera Ġob serving Ġthe Ġscene Ċ Ġ* Ċ Ġ* ĠThis Ġclass Ġis Ġan Ġabstract Ġclass Ġfor Ġimplementing Ġdifferent Ġkind Ġof Ġprojection Ġonto Ġthe Ġscreen Ġfor Ġthe Ċ Ġ* Ġobserver Ġof Ġthe Ġscene Ċ Ġ* Ċ Ġ* ĠThe ĠCamera Ġis Ġalways Ġset Ġin Ġ(- d , Ġ 0 , Ġ 0 ) Ġwith Ġd Ġthe Ġdistance Ġfrom Ġthe Ġscreen Ċ Ġ* Ċ Ġ* ĠThe Ġvector Ġ" up " Ġis Ġ( 0 , Ġ 0 , Ġ 1 ) Ċ Ġ* Ċ Ġ* ĠThe Ġvector Ġ" right " Ġis Ġ( 0 , Ġ- AR , Ġ 0 ) Ġwith ĠAR Ġthe ĠAs pect ĠR atio Ġof Ġthe Ġscreen Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠConcrete ĠCam eras Ġare : Ċ Ġ* Ġ- ĠOr thogonal Camera Ċ Ġ* Ġ- ĠPers pective Camera Ċ Ġ* Ċ Ġ* Ġ@ see ĠOr thogonal Camera Ċ Ġ* Ġ@ see ĠPers pective Camera Ċ Ġ*/ Ċ Ċ abstract Ġclass ĠCamera Ġ() Ġ{ ĊĠĠĠ Ġabstract Ġfun Ġfire Ray Ġ( u Ġ: ĠFloat , Ġv : ĠFloat ) Ġ: ĠRay Ċ }