diff --git a/assets/shader/standard.frag b/assets/shader/standard.frag index 630d901..a7103a4 100644 --- a/assets/shader/standard.frag +++ b/assets/shader/standard.frag @@ -56,7 +56,6 @@ void write2framebuffer(vec4 color, uvec2 id); void main(){ vec4 color = get_color(color, o_uv); {{light_calc}} - write2framebuffer( color, o_id diff --git a/src/visualize/mesh.jl b/src/visualize/mesh.jl index 51ab5f3..b60abf0 100644 --- a/src/visualize/mesh.jl +++ b/src/visualize/mesh.jl @@ -15,7 +15,8 @@ function _default{M <: GLNormalMesh}(mesh::TOrSignal{M}, s::Style, data::Dict) @gen_defaults! data begin shading = true end - if !shading + view = if !shading + # we need to remove the normals, because they're unused mesh = const_lift(x-> convert(GLPlainMesh, x), mesh) end @gen_defaults! data begin @@ -30,10 +31,20 @@ function _default{M <: GLNormalMesh}(mesh::TOrSignal{M}, s::Style, data::Dict) end end function _default{M <: GLNormalVertexcolorMesh}(mesh::TOrSignal{M}, s::Style, data::Dict) + @gen_defaults! data begin + shading = true + end + if !shading + # TODO remove this hack in a more graceful way! + mesh = const_lift(mesh) do x + dict = attributes(mesh) + delete!(dict, :normals) + GeometryTypes.homogenousmesh(dict) + end + end @gen_defaults! data begin main = mesh boundingbox = const_lift(GLBoundingBox, mesh) - shading = true color = nothing shader = GLVisualizeShader( "fragment_output.frag", "util.vert", "vertexcolor.vert", "standard.frag",