keid-core-0.1.9.0: Core parts of Keid engine.
Safe HaskellSafe-Inferred
LanguageGHC2021

Engine.Camera

Synopsis

Documentation

data ProjectionKind Source #

Constructors

Perspective 
Orthographic 

Instances

Instances details
Bounded ProjectionKind Source # 
Instance details

Defined in Engine.Camera

Enum ProjectionKind Source # 
Instance details

Defined in Engine.Camera

Generic ProjectionKind Source # 
Instance details

Defined in Engine.Camera

Associated Types

type Rep ProjectionKind :: Type -> Type #

Show ProjectionKind Source # 
Instance details

Defined in Engine.Camera

Eq ProjectionKind Source # 
Instance details

Defined in Engine.Camera

Ord ProjectionKind Source # 
Instance details

Defined in Engine.Camera

type Rep ProjectionKind Source # 
Instance details

Defined in Engine.Camera

type Rep ProjectionKind = D1 ('MetaData "ProjectionKind" "Engine.Camera" "keid-core-0.1.9.0-inplace" 'False) (C1 ('MetaCons "Perspective" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Orthographic" 'PrefixI 'False) (U1 :: Type -> Type))

data Projection (pk :: ProjectionKind) Source #

Instances

Instances details
Generic (Projection pk) Source # 
Instance details

Defined in Engine.Camera

Associated Types

type Rep (Projection pk) :: Type -> Type #

Methods

from :: Projection pk -> Rep (Projection pk) x #

to :: Rep (Projection pk) x -> Projection pk #

Show (Projection pk) Source # 
Instance details

Defined in Engine.Camera

Methods

showsPrec :: Int -> Projection pk -> ShowS #

show :: Projection pk -> String #

showList :: [Projection pk] -> ShowS #

type Rep (Projection pk) Source # 
Instance details

Defined in Engine.Camera

type Rep (Projection pk) = D1 ('MetaData "Projection" "Engine.Camera" "keid-core-0.1.9.0-inplace" 'False) (C1 ('MetaCons "Projection" 'PrefixI 'True) (S1 ('MetaSel ('Just "projectionTransform") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Transform) :*: S1 ('MetaSel ('Just "projectionInverse") 'NoSourceUnpackedness 'SourceLazy 'DecidedLazy) (Rec0 Transform)))

type family ProjectionParams (pk :: ProjectionKind) where ... Source #

spawnPerspective :: (MonadReader (App GlobalHandles st) m, MonadResource m, MonadUnliftIO m) => m (ProjectionProcess 'Perspective) Source #

Spawn a perspective projection worker with initial FoV of 90 degrees.

pattern PROJECTION_NEAR :: (Eq a, Num a, Fractional a) => a Source #

pattern PROJECTION_FAR :: (Eq a, Num a) => a Source #

data View Source #

Instances

Instances details
Show View Source # 
Instance details

Defined in Engine.Camera

Methods

showsPrec :: Int -> View -> ShowS #

show :: View -> String #

showList :: [View] -> ShowS #

data ViewOrbitalInput Source #

Camera orbiting its target

Instances

Instances details
Show ViewOrbitalInput Source # 
Instance details

Defined in Engine.Camera