Librend 0.4


#1

Librend 0.4

Real-time rendering on Ruby

Download now! http://rubyforge.org/frs/?group_id=716

  • Gracefully degrading functionality! No more installing 6 support
    libraries just to get a rotating cube going!
  • RMagick support!
  • Billboards!
  • Vertical text alignment!
  • Brings the Ruby interpreter to its knees with very little effort! Is
    YOUR machine up to the challenge?!

More information available at http://librend.rubyforge.org

Requirements:

For 3D, you need SDL and OpenGL.
For playing sounds, you only need SDL.
For drawing vectors to PNG, you only need rcairo.

Recommended:

Input handling, sounds, window management:
Ruby/SDL bindings http://www.kmc.gr.jp/~ohai/rubysdl.en.html

Basic 3D:
Ruby/OpenGL bindings http://www2.giganet.net/~yoshi/

Loading images (Rend::Image, Rend::Texture):
Imlib2-Ruby bindings http://pablotron.org/software/imlib2-ruby/
or
RMagick http://rmagick.rubyforge.org/

For drawing 2D vector scenes (Rend::Vectors::VectorScene):
rcairo Cairo bindings for Ruby. http://cairographics.org/releases/

Not so necessary, but nice to have:

If you want to use FTGL text (Rend::Text):
Ruby FTGL http://www.rubyforge.org/projects/ruby-ftgl/

Advanced 3D, shaders in particular (Rend::Shaders):
Ruby/GLEW bindings http://www.rubyforge.org/projects/rubyglew/

For a speed boost, get:
Ruby Inline http://www.rubyforge.org/projects/rubyinline/


#2

Hi Ilmari,

From: “Ilmari H.” removed_email_address@domain.invalid

Librend 0.4

Real-time rendering on Ruby
[…]
Input handling, sounds, window management:
Ruby/SDL bindings http://www.kmc.gr.jp/~ohai/rubysdl.en.html

Looks very nice!!! I’m wondering, since SDL is used, does that mean
Librend
can only open one window?

I had planned to use SDL/OpenGL for my current application, but have
switched to
FreeGLUT since it allows multiple windows.

Regards,

Bill


#3

On 1/15/06, Bill K. removed_email_address@domain.invalid wrote:

Ruby/SDL bindings http://www.kmc.gr.jp/~ohai/rubysdl.en.html

Looks very nice!!! I’m wondering, since SDL is used, does that mean Librend
can only open one window?

I had planned to use SDL/OpenGL for my current application, but have switched to
FreeGLUT since it allows multiple windows.

Yeah, I think it’s limited to a single window. GLUT is a better fit
for multiple windows but sadly its input handling is less than stellar
:confused:

There still are remains of the old GLUT backend there, I suppose it
might work with some tweaking. Another possibility would be to write a
GTK/QT backend to manage the input and provide OpenGL context. Might
be a worthwhile goal to pursue for the next version…

-Ilmari


#4

From: “Ilmari H.” removed_email_address@domain.invalid

I had planned to use SDL/OpenGL for my current application, but have switched to
FreeGLUT since it allows multiple windows.

Yeah, I think it’s limited to a single window. GLUT is a better fit
for multiple windows but sadly its input handling is less than stellar
:confused:

Ah, rats. Hmm. Is it that it responds poorly/sluggisly to input? Or
inconvenient API for getting events? (or…?)

There still are remains of the old GLUT backend there, I suppose it
might work with some tweaking. Another possibility would be to write a
GTK/QT backend to manage the input and provide OpenGL context. Might
be a worthwhile goal to pursue for the next version…

Cool, I wasn’t/am not yet familiar with GTK - just did a web search and
found: GtkGLExt http://gtkglext.sourceforge.net/

Looks nice, I’ll have to try it out. (Cool, there seem to already be
Ruby
bindings: http://ruby-gnome2.sourceforge.jp/hiki.cgi?Gtk%3A%3AGL )

Regards,

Bill


#5

On 1/15/06, Bill K. removed_email_address@domain.invalid wrote:

inconvenient API for getting events? (or…?)
The last time i checked (a year or so ago (or was it three…)), it
didn’t have mousewheel support (on win, linux version seemed to have
mousebuttons 4 and 5) and there wasn’t a real Windows installer. The
event API is a bit of a pain as well, with all the events going to
separately set callbacks, instead of a single event pipe. Anyhow, it’s
been a while since I last used it, so take this with a grain of salt -
maybe things are better nowadays.

Apart from that, it’s a pretty good and easy to use system.

-Ilmari