package Ġde . tw ometer . ne ko . render Ċ Ċ import Ġorg . lwjgl . opengl . GL 1 1 .* Ċ Ċ enum Ġclass ĠShader Property ( val Ġapply : Ġ( String ) Ġ-> ĠUnit ) Ġ{ ĊĊĠĠĠ ĠDepth Test ({ ĊĠĠĠĠĠĠĠ ĠOpenGL . set Boolean ( GL _ DEPTH _ TEST , Ġit Ġ== Ġon ) ĊĠĠĠ Ġ}), ĊĊĠĠĠ ĠDepth Mask ({ ĊĠĠĠĠĠĠĠ ĠOpenGL . depth Mask ( it Ġ== Ġon ) ĊĠĠĠ Ġ}), ĊĊĠĠĠ ĠDepth Func ({ ĊĠĠĠĠĠĠĠ ĠOpenGL . depth Func ( open Gl Mapping [ it ] !! ) ĊĠĠĠ Ġ}), ĊĊĠĠĠ ĠC ull Face ({ ĊĠĠĠĠĠĠĠ Ġif Ġ( it Ġ== Ġoff ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOpenGL . disable ( GL _ C ULL _ FACE ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOpenGL . enable ( GL _ C ULL _ FACE ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOpenGL . c ull Face ( open Gl Mapping [ it ] !! ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}) ĊĊĠĠĠ Ġ; ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġopen Gl Mapping Ġ= Ġhash Map Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" Back ", ĠGL _ BACK ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" Front ", ĠGL _ FRONT ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" LE qual ", ĠGL _ LE QUAL ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" Less ", ĠGL _ LESS ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" Equal ", ĠGL _ EQUAL ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" G Equal ", ĠGL _ G EQUAL ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" Greater ", ĠGL _ GRE ATER ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval Ġon Ġ= Ġ" On " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval Ġoff Ġ= Ġ" Off " ĊĠĠĠ Ġ} Ċ Ċ }