O exemplo abaixo ilustra uma aplicação no modelo 3D com drag e carregamento de material OBJ e MTL, usando Ruby-Processing.
Para trabalhar com .OBJ esse exemplo usa a biblioteca: .OBJ loader for Processing, você pode encontrar mais informações em: http://code.google.com/p/saitoobjloader/.
Para esse exemplo funcionar você deve possuir o Ruby-Processing instalado, caso não possua siga os passos: http://blog.patrickespake.com/2009/08/23/ruby-processing.
Exemplo Modelo 3D com Drag e Carregamento de Material OBJ e MTL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | class Example < Processing::App load_library :objloader import "saito.objloader" def setup size 800, 600, P3D @model = OBJModel.new(self, "m1.obj") @rot_x = 0 @rot_y = 0 end def draw background 51 no_stroke lights smooth push_matrix translate width/2, height/2, 0 rotate_x @rot_y rotate_y @rot_x scale 3 @model.drawMode POLYGON @model.draw pop_matrix end def mouse_dragged @rot_x += (mouse_x - pmouse_x) * 0.01; @rot_y -= (mouse_y - pmouse_y) * 0.01; end end Example.new :title => "Example 3D With .OBJ Loader" |
Esse exemplo importa um modelo 3D criado no 3D Studio Max, quando você clica e faz drag o modelo 3D se movimenta.
Executando
No terminal digite:
rp5 run example.rb
Resultado

Você pode ver esse exemplo em execução no endereço: http://lab.patrickespake.com/ruby-processing-examples/example_3d_objloader/run/. Você precisa ter paciência para visualizar o modelo rodando, ele demora um certo tempo para carregar no browser.
Código fonte completo: http://github.com/patrickespake/ruby-processing-examples/tree/c80a080dd1e27a562b252fa01bc1030d924a9f47/example_3d_objloader.
Se você gostou desse texto e acha que ajudou você, me recomende:
.



