anchor.diff:                          rnd.NextDouble() * 10.0 - 5.0,
                           rnd.NextDouble() * 10.0 - 5.0 )
               let trafo = Trafo3d.Scale 0.1 * Trafo3d.Translation pos
  -            let ig = Primitives.unitCone (rnd.Next(10, 2000))
  +            let ig = Primitives.unitCone (rnd.Next(1000, 50000))
               geometries.Add (ig, trafo) |> ignore
   
           for i in 0 .. 10 do
  
positive.code:                     Map.ofList [ 
                          DefaultSemantic.Positions, typeof<V3f>
                          DefaultSemantic.Normals, typeof<V3f> 
                      ]
                  uniformTypes = 
                      Map.ofList [ 
                          Sem.Hugo, typeof<M44f> 
                      ]
              }
  
  
negative.code:     open FShade
      module Sem =
          let Hugo = Symbol.Create "Hugo"
          let HugoN = Symbol.Create "HugoN"
  
      type HugoVertex = 
          {
              [<Semantic("Hugo")>] mt : M44d
              [<Semantic("HugoN")>] nt : M33d
              [<Position>] p : V4d
              [<Normal>] n : V3d
          }
  
      let hugoShade (v : HugoVertex) =
          vertex {
              return { v 
                  with 
                      p = v.mt * v.p 
                      n = v.nt * v.n
              }
          }
  
  