| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Mischief.Render.Core
Synopsis
- type CameraEntity = Entity
- type MeshEntity = Entity
- newtype RenderInstance = RenderInstance (Ptr WGPUInstance)
- newtype RenderSurface = RenderSurface (Ptr WGPUSurface)
- newtype DefaultSampler = DefaultSampler Sampler
- newtype RenderDevice = RenderDevice (Ptr WGPUDevice)
- newtype RenderAdapter = RenderAdapter (Ptr WGPUAdapter)
- newtype RenderQueue = RenderQueue (Ptr WGPUQueue)
- newtype WindowFormat = WindowFormat WGPUTextureFormat
- newtype WindowAlphaMode = WindowAlphaMode WGPUCompositeAlphaMode
- onAddWindow :: OnAdd SDLWindow -> System ()
- onSetWindowSize :: OnSet WindowSize -> System ()
- getSurfaceDescriptor :: Ptr WGPUInstance -> String -> SDL_PropertiesID -> Ptr SDL_Window -> IO (Ptr WGPUSurface)
- newtype BindLayout = BindLayout (Ptr WGPUBindGroupLayout)
- newtype RenderPipeline = RenderPipeline (Ptr WGPURenderPipeline)
- newtype Sampler = Sampler (Ptr WGPUSampler)
- getRenderingResources :: System (Maybe (RenderAdapter, RenderDevice, RenderQueue))
- data RenderFirst = RenderFirst
- data RenderPrepare = RenderPrepare
- data RenderUpdate = RenderUpdate
- data RenderTransparent = RenderTransparent
- data RenderPostprocess = RenderPostprocess
- data RenderLast = RenderLast
- getFormat :: RenderSurface -> RenderAdapter -> System TextureFormat
- newSampler :: RenderDevice -> System Sampler
Documentation
type CameraEntity = Entity Source #
type MeshEntity = Entity Source #
newtype RenderInstance Source #
Constructors
| RenderInstance (Ptr WGPUInstance) |
Instances
| Component RenderInstance Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook RenderInstance] # onSet :: [Hook RenderInstance] # onRemove :: [Hook RenderInstance] # onAddRel :: [HookRel RenderInstance] # onSetRel :: [HookRel RenderInstance] # | |||||
| type IsExclusiveRel RenderInstance Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype RenderSurface Source #
Constructors
| RenderSurface (Ptr WGPUSurface) |
Instances
| Component RenderSurface Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook RenderSurface] # onSet :: [Hook RenderSurface] # onRemove :: [Hook RenderSurface] # onAddRel :: [HookRel RenderSurface] # onSetRel :: [HookRel RenderSurface] # onRemoveRel :: [HookRel RenderSurface] # | |||||
| type IsExclusiveRel RenderSurface Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype DefaultSampler Source #
Constructors
| DefaultSampler Sampler |
Instances
| Component DefaultSampler Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook DefaultSampler] # onSet :: [Hook DefaultSampler] # onRemove :: [Hook DefaultSampler] # onAddRel :: [HookRel DefaultSampler] # onSetRel :: [HookRel DefaultSampler] # | |||||
| type IsExclusiveRel DefaultSampler Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype RenderDevice Source #
Constructors
| RenderDevice (Ptr WGPUDevice) |
Instances
| Component RenderDevice Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook RenderDevice] # onSet :: [Hook RenderDevice] # onRemove :: [Hook RenderDevice] # onAddRel :: [HookRel RenderDevice] # onSetRel :: [HookRel RenderDevice] # onRemoveRel :: [HookRel RenderDevice] # | |||||
| type IsExclusiveRel RenderDevice Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype RenderAdapter Source #
Constructors
| RenderAdapter (Ptr WGPUAdapter) |
Instances
| Component RenderAdapter Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook RenderAdapter] # onSet :: [Hook RenderAdapter] # onRemove :: [Hook RenderAdapter] # onAddRel :: [HookRel RenderAdapter] # onSetRel :: [HookRel RenderAdapter] # onRemoveRel :: [HookRel RenderAdapter] # | |||||
| type IsExclusiveRel RenderAdapter Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype RenderQueue Source #
Constructors
| RenderQueue (Ptr WGPUQueue) |
Instances
| Component RenderQueue Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook RenderQueue] # onSet :: [Hook RenderQueue] # onRemove :: [Hook RenderQueue] # onAddRel :: [HookRel RenderQueue] # onSetRel :: [HookRel RenderQueue] # onRemoveRel :: [HookRel RenderQueue] # | |||||
| type IsExclusiveRel RenderQueue Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype WindowFormat Source #
Constructors
| WindowFormat WGPUTextureFormat |
Instances
| Component WindowFormat Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook WindowFormat] # onSet :: [Hook WindowFormat] # onRemove :: [Hook WindowFormat] # onAddRel :: [HookRel WindowFormat] # onSetRel :: [HookRel WindowFormat] # onRemoveRel :: [HookRel WindowFormat] # | |||||
| type IsExclusiveRel WindowFormat Source # | |||||
Defined in Mischief.Render.Core | |||||
newtype WindowAlphaMode Source #
Constructors
| WindowAlphaMode WGPUCompositeAlphaMode |
Instances
| Component WindowAlphaMode Source # | |||||
Defined in Mischief.Render.Core Associated Types
Methods required :: Set DefaultComponentType # onAdd :: [Hook WindowAlphaMode] # onSet :: [Hook WindowAlphaMode] # onRemove :: [Hook WindowAlphaMode] # onAddRel :: [HookRel WindowAlphaMode] # onSetRel :: [HookRel WindowAlphaMode] # | |||||
| type IsExclusiveRel WindowAlphaMode Source # | |||||
Defined in Mischief.Render.Core | |||||
onAddWindow :: OnAdd SDLWindow -> System () Source #
Creates a WGPU Surface, Adapter, and Device for each new window. Inserts them as components.
onSetWindowSize :: OnSet WindowSize -> System () Source #
getSurfaceDescriptor :: Ptr WGPUInstance -> String -> SDL_PropertiesID -> Ptr SDL_Window -> IO (Ptr WGPUSurface) Source #
Maps a SDL driver name and window to the correct surface texture for WGPU.
TODO: implement the rest of the drivers.
newtype BindLayout Source #
Constructors
| BindLayout (Ptr WGPUBindGroupLayout) |
newtype RenderPipeline Source #
Constructors
| RenderPipeline (Ptr WGPURenderPipeline) |
data RenderFirst Source #
Constructors
| RenderFirst |
Instances
| Schedule RenderFirst Source # | |
Defined in Mischief.Render.Core | |
data RenderPrepare Source #
Constructors
| RenderPrepare |
Instances
| Schedule RenderPrepare Source # | |
Defined in Mischief.Render.Core | |
data RenderUpdate Source #
Constructors
| RenderUpdate |
Instances
| Schedule RenderUpdate Source # | |
Defined in Mischief.Render.Core | |
data RenderTransparent Source #
Constructors
| RenderTransparent |
Instances
| Schedule RenderTransparent Source # | |
Defined in Mischief.Render.Core | |
data RenderPostprocess Source #
Constructors
| RenderPostprocess |
Instances
| Schedule RenderPostprocess Source # | |
Defined in Mischief.Render.Core | |
data RenderLast Source #
Constructors
| RenderLast |
Instances
| Schedule RenderLast Source # | |
Defined in Mischief.Render.Core | |
newSampler :: RenderDevice -> System Sampler Source #