Class: Quake::Renderer::GLWireframe

Inherits:
Object
  • Object
show all
Defined in:
lib/quake/renderer/gl_wireframe.rb

Instance Method Summary collapse

Constructor Details

#initialize(level) ⇒ GLWireframe

Returns a new instance of GLWireframe.



8
9
10
11
12
# File 'lib/quake/renderer/gl_wireframe.rb', line 8

def initialize(level)
  @level = level
  @face_polygons = precompute_polygons
  puts "Precomputed #{@face_polygons.size} face polygons"
end

Instance Method Details

#render(camera, aspect) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/quake/renderer/gl_wireframe.rb', line 14

def render(camera, aspect)
  GL.Clear(GL::COLOR_BUFFER_BIT | GL::DEPTH_BUFFER_BIT)

  camera.apply_projection_gl(aspect)
  camera.apply_gl

  GL.Color3f(0.0, 1.0, 0.0)

  @face_polygons.each do |verts|
    GL.Begin(GL::LINE_LOOP)
    verts.each { |v| GL.Vertex3f(v.x, v.y, v.z) }
    GL.End
  end
end