Sha256: d65e0ff3bcc4eab46cf5051d1598aadd8156d8ee3ed599c549ec539c789e8fe0

Contents?: true

Size: 968 Bytes

Versions: 2

Compression:

Stored size: 968 Bytes

Contents

$:.unshift File.expand_path(File.dirname(__FILE__) + "/../../lib")
$:.unshift File.expand_path(File.dirname(__FILE__) + "/../../ext")

require 'ray'

Ray.game "My Own Index Buffer" do
  register { add_hook :quit, method(:exit!) }

  scene :triangle do
    @buffer = Ray::GL::Buffer.new :static, Ray::Vertex

    @buffer[0] = Ray::Vertex.new([100, 100], Ray::Color.new(255, 0, 0))
    @buffer[1] = Ray::Vertex.new([200, 100], Ray::Color.new(255, 255, 0))
    @buffer[2] = Ray::Vertex.new([200, 200], Ray::Color.new(255, 255, 255))

    @buffer.update

    @index_buffer = Ray::GL::IndexBuffer.new :static

    @index_buffer[0] = 0
    @index_buffer[1] = 1
    @index_buffer[2] = 2

    @index_buffer.update

    # We need this: projection matrix isn't set if you don't use drawables
    window.shader["in_Projection"] = window.view.matrix

    render do |win|
      win.make_current
      Ray::GL.draw_elements :triangles, 3, 0
    end
  end

  scenes << :triangle
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ray-0.1.1 samples/buffer/index_buffer.rb
ray-0.1.0 samples/buffer/index_buffer.rb