{-# LANGUAGE ConstrainedClassMethods #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE OverloadedStrings #-}
module THREE.Material
( Material (..)
) where
import Miso
import THREE.Color
import THREE.Constants.CustomBlendingEquations
import THREE.Constants.CustomBlendingEquations.DestinationFactors
import THREE.Constants.CustomBlendingEquations.SourceFactors
import THREE.Constants.Materials
import THREE.EventDispatcher
import THREE.Internal as THREE
import THREE.Plane
class (EventDispatcher material, ToJSVal material, ToObject material) => Material material where
type_ :: ReadOnly material MisoString
type_ = MisoString -> ReadOnly material MisoString
forall object return.
(FromJSVal return, ToObject object) =>
MisoString -> ReadOnly object return
readonly MisoString
"type"
uuid :: ReadOnly material MisoString
uuid = MisoString -> ReadOnly material MisoString
forall object return.
(FromJSVal return, ToObject object) =>
MisoString -> ReadOnly object return
readonly MisoString
"uuid"
isMaterial :: ReadOnly material Bool
isMaterial = MisoString -> ReadOnly material Bool
forall object return.
(FromJSVal return, ToObject object) =>
MisoString -> ReadOnly object return
readonly MisoString
"isMaterial"
alphaHash :: Property material Bool
alphaHash = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"alphaHash"
alphaTest :: Property material Double
alphaTest = MisoString -> Property material Double
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"alphaTest"
alphaToCoverage :: Property material Bool
alphaToCoverage = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"alphaToCoverage"
blendAlpha :: Property material Double
blendAlpha = MisoString -> Property material Double
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blendAlpha"
blendColor :: Property material Color
blendColor = MisoString -> Property material Color
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blendColor"
blendDst :: Property material (Maybe DestinationFactors)
blendDst = MisoString -> Property material (Maybe DestinationFactors)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blendDst"
blendDstAlpha :: Property material (Maybe DestinationFactors)
blendDstAlpha = MisoString -> Property material (Maybe DestinationFactors)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"blendDstAlpha"
blendEquation :: Property material BlendingEquations
blendEquation = MisoString -> Property material BlendingEquations
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blendEquation"
blendEquationAlpha :: Property material (Maybe BlendingEquations)
blendEquationAlpha = MisoString -> Property material (Maybe BlendingEquations)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"blendEquationAlpha"
blending :: Property material (Maybe BlendingMode)
blending = MisoString -> Property material (Maybe BlendingMode)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blending"
blendSrc :: Property material SourceFactors
blendSrc = MisoString -> Property material SourceFactors
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"blendSrc"
blendSrcAlpha :: Property material (Maybe SourceFactors)
blendSrcAlpha = MisoString -> Property material (Maybe SourceFactors)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"blendSrcAlpha"
clipIntersection :: Property material Bool
clipIntersection = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"clipIntersection"
clippingPlanes :: Property material (Maybe [Plane])
clippingPlanes = MisoString -> Property material (Maybe [Plane])
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"clippingPlanes"
clipShadows :: Property material Bool
clipShadows = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"clipShadows"
colorWrite :: Property material Bool
colorWrite = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"colorWrite"
defines :: Property material (Maybe Object)
defines = MisoString -> Property material (Maybe Object)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"defines"
depthFunc :: Property material DepthMode
depthFunc = MisoString -> Property material DepthMode
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"depthFunc"
depthTest :: Property material Bool
depthTest = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"depthTest"
depthWrite :: Property material Bool
depthWrite = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"depthWrite"
forceSinglePass :: Property material Bool
forceSinglePass = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"forceSinglePass"
stencilWrite :: Property material Bool
stencilWrite = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilWrite"
stencilWriteMask :: Property material Int
stencilWriteMask = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilWriteMask"
stencilFunc :: Property material StencilFunctions
stencilFunc = MisoString -> Property material StencilFunctions
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilFunc"
stencilRef :: Property material Int
stencilRef = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilRef"
stencilFuncMask :: Property material Int
stencilFuncMask = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilFuncMask"
stencilFail :: Property material StencilOperations
stencilFail = MisoString -> Property material StencilOperations
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilFail"
stencilZFail :: Property material StencilOperations
stencilZFail = MisoString -> Property material StencilOperations
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilZFail"
stencilZPass :: Property material StencilOperations
stencilZPass = MisoString -> Property material StencilOperations
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"stencilZPass"
id :: Property material Int
id = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"id"
name :: Property material MisoString
name = MisoString -> Property material MisoString
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"name"
needsUpdate :: Property material Bool
needsUpdate = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"needsUpdate"
opacity :: Property material Double
opacity = MisoString -> Property material Double
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"opacity"
polygonOffset :: Property material Bool
polygonOffset = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"polygonOffset"
polygonOffsetFactor :: Property material Int
polygonOffsetFactor = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"polygonOffsetFactor"
polygonOffsetUnits :: Property material Int
polygonOffsetUnits = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"polygonOffsetUnits"
precision :: Property material (Maybe MisoString)
precision = MisoString -> Property material (Maybe MisoString)
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object (Maybe field)
optional MisoString
"precision"
premultipliedAlpha :: Property material Bool
premultipliedAlpha = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"premultipliedAlpha"
dithering :: Property material Bool
dithering = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"dithering"
shadowSide :: Property material Side
shadowSide = MisoString -> Property material Side
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"shadowSide"
side :: Property material Side
side = MisoString -> Property material Side
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"side"
toneMapped :: Property material Bool
toneMapped = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"toneMapped"
transparent :: Property material Bool
transparent = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"transparent"
version :: Property material Int
version = MisoString -> Property material Int
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"version"
vertexColors :: Property material Bool
vertexColors = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"vertexColors"
visible :: Property material Bool
visible = MisoString -> Property material Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"visible"
userData :: Property material Object
userData = MisoString -> Property material Object
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"userData"
clone :: FromJSVal material => Method material () material
clone = MisoString -> Method material () material
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"clone"
copy :: (FromJSVal material, ToArgs material) => Method material material material
copy = MisoString -> Method material material material
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"copy"
dispose :: Method material () ()
dispose = MisoString -> Method material () ()
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"dispose"
customProgramCacheKey :: Method material () MisoString
customProgramCacheKey = MisoString -> Method material () MisoString
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"customProgramCacheKey"
setValues :: Method material Object ()
setValues = MisoString -> Method material Object ()
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"setValues"
toJSON :: Method material Object Object
toJSON = MisoString -> Method material Object Object
forall object return args.
(FromJSVal return, ToArgs args, ToObject object) =>
MisoString -> Method object args return
method MisoString
"toJSON"
instance Material JSVal