Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- type Segment = Allocated 'Staged Packed
- type Vertex = Vertex3d ()
- createVertices :: MonadVulkan env m => Maybe Text -> Queues CommandPool -> Float -> m Segment
- verticesRoundRound :: Float -> Vector Packed
- type Points = Vector InstanceAttrs
- point :: Float -> Vec4 -> Vec2 -> InstanceAttrs
- data InstanceAttrs = InstanceAttrs {}
- type Buffer s = Allocated s InstanceAttrs
- type Observer = ObserverCoherent InstanceAttrs
- observeCoherentResize_ :: (MonadVulkan env m, HasOutput source, GetOutput source ~ Vector output, Storable output) => source -> ObserverCoherent output -> m ()
- newtype Batches v a = Batches [v a]
- type BatchObserver = ObserverIO (Buffer 'Coherent, Ranges)
- newBatchObserver :: (MonadVulkan env m, MonadResource m) => ("initial size" ::: Int) -> m BatchObserver
- observeCoherentBatches :: (GetOutput output ~ Batches Vector InstanceAttrs, HasOutput output, MonadVulkan env m) => output -> BatchObserver -> m ()
Documentation
createVertices :: MonadVulkan env m => Maybe Text -> Queues CommandPool -> Float -> m Segment Source #
verticesRoundRound :: Float -> Vector Packed Source #
Generate mesh for the round joints / round caps special case.
With a bit of vertex shader code it allows drawing a batch of smooth lines in one call.
type Points = Vector InstanceAttrs Source #
point :: Float -> Vec4 -> Vec2 -> InstanceAttrs Source #
data InstanceAttrs Source #
Instances
type Buffer s = Allocated s InstanceAttrs Source #
type Observer = ObserverCoherent InstanceAttrs Source #
observeCoherentResize_ :: (MonadVulkan env m, HasOutput source, GetOutput source ~ Vector output, Storable output) => source -> ObserverCoherent output -> m () #
Batches [v a] |
Instances
type BatchObserver = ObserverIO (Buffer 'Coherent, Ranges) Source #
newBatchObserver :: (MonadVulkan env m, MonadResource m) => ("initial size" ::: Int) -> m BatchObserver Source #
observeCoherentBatches :: (GetOutput output ~ Batches Vector InstanceAttrs, HasOutput output, MonadVulkan env m) => output -> BatchObserver -> m () Source #