mischief-render-0.1.0.0: src/Mischief/Render/Material/Instance.hs
{-# LANGUAGE AllowAmbiguousTypes #-}
module Mischief.Render.Material.Instance where
import Language.Haskell.TH (Extension (AllowAmbiguousTypes))
import Mischief.ECS
import Mischief.ECS.World.Query.Queryable
import Mischief.Render.Material.Definition
import Mischief.Shader
-- import Mischief.Render.Shader.State
data FetchMaterialData m where
FetchMaterialData ::
(Queryable cam cam', Material m) =>
cam -> (cam' -> Query System (B m CPU)) -> FetchMaterialData m
-- class FetchMaterialData a cam cam' | a -> cam cam'
-- cameraData :: cam
-- fetch :: cam' -> a