Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Tree [b3e57e] master /
History



File Date Author Commit
README 2011-09-13 Benjamin Flaming Benjamin Flaming [b3e57e] Updated README.
ROADMAP 2011-09-13 Benjamin Flaming Benjamin Flaming [d23374] Projects can be saved and loaded.
animable.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [59d8ec] Bug/crash fix: Pass pointer-to-self when notify...
animable_list_box.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [ed72d9] GUI lists are sorted.
animata.rb 2011-09-12 Benjamin Flaming Benjamin Flaming [d23f93] Changed coding style to match Tinara.
animator.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [461fe7] Fixed broken animation algorithm.
animator_list_box.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [ed72d9] GUI lists are sorted.
better_observer.rb 2011-09-12 Benjamin Flaming Benjamin Flaming [a42382] Engine can be "observed" for changes.
bone.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [ebcd3b] Bones can be loaded from project file on disk.
engine.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [d23374] Projects can be saved and loaded.
joint.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [d23374] Projects can be saved and loaded.
keyframe.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [59d8ec] Bug/crash fix: Pass pointer-to-self when notify...
keyframe_list_box.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [c89c07] Keyframe list shows values.
keyframe_panel.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [2da710] Rudimentary keyframe editing in GUI.
layer.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [d23374] Projects can be saved and loaded.
main_window.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [ebcd3b] Bones can be loaded from project file on disk.
oscimator.rb 2011-09-13 Benjamin Flaming Benjamin Flaming [d23374] Projects can be saved and loaded.

Read Me

You'll find a development plan in the file ROADMAP.  The core is written in
Ruby, using the ruby-osc gem.  You can install ruby-osc under Ubuntu
thusly:

$ sudo apt-get install rubygems1.8
$ sudo gem install ruby-osc

The GUI is written in wxRuby, which I'm also using for my "Tinara" media
production system.  You *might* be able to get wxRuby working by installing
the wxRuby gem:

$ sudo gem install wxruby

Unfortunately, if you are running Ubuntu (like me) things may be a bit
more complicated.  The reason for the difficulty is that overzealous Ubuntu
package maintainers removed one of the standard controls from the wxGTK
packages, which means that one of the libraries required by the standard
wxRuby gem is missing.

To make matters worse, wxRuby cannot be built from source using the version
of Swig that is available in the Ubuntu repositories - it requires an older
version.

Finally, the wxRuby source code attempts to bind to a function called
ResetMode in the wxDisplay class, but this function simply doesn't exist.

The steps currently required under Ubuntu, therefore, are:

1. Download, build, and install Swig version 1.3.38 (*NOT* a newer version)
http://sourceforge.net/projects/swig/files/swig/swig-1.3.38/

2. Download the source code for wxRuby
http://rubyforge.org/frs/download.php/63379/wxruby-2.0.1.tar.gz

3. Extract the wxRuby sources, and open the file:
swig/classes/include/wxDisplay.h:
in your favorite text editor.

4. Comment-out the line:
void ResetMode();

5. Build and install wxRuby

Once you have wxRuby up-and-running, you can run the "oscimator.rb" script.