All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cwinter.codecraft.graphics.engine.RenderStack.scala Maven / Gradle / Ivy

The newest version!
package cwinter.codecraft.graphics.engine

import cwinter.codecraft.graphics.materials.{Intensity, Material}
import cwinter.codecraft.util.PrecomputedHashcode
import cwinter.codecraft.util.maths._


private[codecraft] trait RenderStack extends PrecomputedHashcode {
  self: Product =>
  val MaterialXYZRGB: Material[VertexXYZ, ColorRGB, Unit]
  val BloomShader: Material[VertexXYZ, ColorRGB, Unit]
  val GaussianGlow: Material[VertexXYZ, ColorRGBA, Unit]
  val GaussianGlowPIntensity: Material[VertexXYZ, ColorRGBA, Intensity]
  val TranslucentAdditive: Material[VertexXYZ, ColorRGBA, Unit]
  val TranslucentProportional: Material[VertexXYZ, ColorRGBA, Unit]
  val TranslucentAdditivePIntensity: Material[VertexXYZ, ColorRGBA, Intensity]

  lazy val materials = List(
    MaterialXYZRGB, BloomShader, GaussianGlow, GaussianGlowPIntensity,
    TranslucentAdditive, TranslucentProportional, TranslucentAdditivePIntensity)

  private[graphics] def postDraw(camera2D: Camera2D): Unit = ()

  def dispose(): Unit
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy