Skip to main content

RubyからLG3D APIを呼び出 す

4 replies [Last post]
Anonymous

?????

Ibrik?????????????????????(^^;?

DRUM??????ORB?????Ruby(??)??LG3D API????
????????????????

???????JavaOne?LG3D BoF??????Kawa?LG3D API?
?????????????????

?????LG3D????C++?????????????????
???????????????????????

??????LG3D??DRUMServer?????????

?????????????????????????????
???????

----
require 'drum/client'

set_client("localhost", 8080)

SimpleAppearance = "org.jdesktop.lg3d.utils.shape.SimpleAppearance"
Sphere = "org.jdesktop.lg3d.utils.shape.Sphere"
Frame3D = "org.jdesktop.lg3d.wg.Frame3D"
Component3D = "org.jdesktop.lg3d.wg.Component3D"

frame = dnew(Frame3D)
comp = dnew(Component3D)
appearance = dnew(SimpleAppearance, 0.7, 0.5, 0.7, 1.0)
sphere = dnew(Sphere, 0.03, appearance)
comp.addChild(sphere)
frame.addChild(comp)
frame.changeEnabled(true)
frame.changeVisible(true)
----

irb???Ruby????????????????LG3D?API?
??????????????????

DRUM??TCP?????????????ORB??????????
????????LG3D API???????????????(^^;?

DRUM????????????????????????????

---------+---------+---------+---------+---------+---------+----------
NISHIMOTO Keisuke

[ruby-drum-sample.jpg]
---------------------------------------------------------------------
To unsubscribe, e-mail: interest_ja-unsubscribe@lg3d.dev.java.net
For additional commands, e-mail: interest_ja-help@lg3d.dev.java.net

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Yuichi SAKURABA

こんにちは、西本さん。さくらばです。

Ruby 書けないのですが... ^^;;

On Wed, 18 Jan 2006 07:18:33 +0900
NISHIMOTO Keisuke wrote:
> DRUMという一種のORBを使って,Ruby(など)からLG3D APIを呼び出
> すことが出来るようになりました.
>
> えんどうさんがJavaOneのLG3D BoFでデモをしたKawaでLG3D APIの
> 呼び出しと同じような事ができます.

おもしろそうですね。blog を見ていて面白そうと思っていたので
すが、LG3D ときましたか。確かにプロトタイピングには役立ちそ
うですね。それ以外にも 3D のオブジェクトの挙動などをスクリプ
トで書けるとおもしろいかもしれません。

ところで、すでに Java 側に存在しているオブジェクトにバインド
することってできるのでしょうか?

個人的に Mustang の JavaScript で遊んでいるのですが、Mustang
だとすでに存在しているオブジェクトにもバインドできます。
これができると、LG3D ですでに描画されている 3D のオブジェクト
にスクリプトからアクセスできるので、テクスチャを変更すること
やイベント処理をスクリプトで書くこともできます。

> DRUM自体まだ公開していませんが,そのうち公開するつもりです.

期待していますっ ;-)

---------------------------------------------------------------------
To unsubscribe, e-mail: interest_ja-unsubscribe@lg3d.dev.java.net
For additional commands, e-mail: interest_ja-help@lg3d.dev.java.net

NISHIMOTO Keisuke

西本です.

Yuichi SAKURABA wrote:
> こんにちは、西本さん。さくらばです。
>
> Ruby 書けないのですが... ^^;;

一応,JavaからJavaも呼び出せます(^^;.

C#版はまだ作ってませんが,予定に入ってますので,その中
(Java/Ruby/C#)から相互に呼び出し可能(なはず)です.

> おもしろそうですね。blog を見ていて面白そうと思っていたので
> すが、LG3D ときましたか。確かにプロトタイピングには役立ちそ
> うですね。それ以外にも 3D のオブジェクトの挙動などをスクリプ
> トで書けるとおもしろいかもしれません。

はい,まず取っ掛かりとしてはプロトタイピングとか勉強用にも使
えると思っています.

それからセキュリティの問題が解決できていませんが,LG3D APIを
ネットワーク上から呼び出せますので,遠隔地からLG3Dを操作する
といった使い方も出来ると思います.

> ところで、すでに Java 側に存在しているオブジェクトにバインド
> することってできるのでしょうか?

既にインスタンス化されたオブジェクトでもオブジェクトが参照で
きれば,バインドできる(はず)です.
#ただし取っ掛かりとなるオブジェクトは必要になります.
#インスタンスを生成しなくとも,staticなメソッドも呼び出せま
#すので,目的は達成できると思います.

> 個人的に Mustang の JavaScript で遊んでいるのですが、Mustang
> だとすでに存在しているオブジェクトにもバインドできます。
> これができると、LG3D ですでに描画されている 3D のオブジェクト
> にスクリプトからアクセスできるので、テクスチャを変更すること
> やイベント処理をスクリプトで書くこともできます。

そこまで発想しきれていませんでしたが,面白そうですね.
うまく環境が揃えば,敷居が低くなるかもしれませんね.
#特にJavaだけで環境を用意できれば,他の環境を用意しなくても
#よくなりますから,導入が楽になりそう.

>>DRUM自体まだ公開していませんが,そのうち公開するつもりです.
>
> 期待していますっ ;-)

様々なバグ,仕様上の不具合などが多数ありますが,初版バージョ
ンが近日中に公開できればと思ってます.

---------+---------+---------+---------+---------+---------+----------
NISHIMOTO Keisuke

---------------------------------------------------------------------
To unsubscribe, e-mail: interest_ja-unsubscribe@lg3d.dev.java.net
For additional commands, e-mail: interest_ja-help@lg3d.dev.java.net

Yuichi SAKURABA

こんにちは、西本さん。さくらばです。

On Thu, 19 Jan 2006 20:57:19 +0900
NISHIMOTO Keisuke wrote:
> > ところで、すでに Java 側に存在しているオブジェクトにバインド
> > することってできるのでしょうか?
>
> 既にインスタンス化されたオブジェクトでもオブジェクトが参照で
> きれば,バインドできる(はず)です.
> #ただし取っ掛かりとなるオブジェクトは必要になります.
> #インスタンスを生成しなくとも,staticなメソッドも呼び出せま
> #すので,目的は達成できると思います.

そうですね。Singleton か何かを用意しておけば、オブジェクトは
取り出せますね。

Mustang の場合は名前と参照を持つマップを作っておいて、それを
登録するような形になっています。

LG3D の場合は SceneManager がすべての Frame3D を統括している
はずなので、SceneManager さえ取り出せるようにしてあれば 3D
のオブジェクトにアクセスできそうです。

なおさら期待が高まってきました ^^;;

> >>DRUM自体まだ公開していませんが,そのうち公開するつもりです.
> >
> > 期待していますっ ;-)
>
> 様々なバグ,仕様上の不具合などが多数ありますが,初版バージョ
> ンが近日中に公開できればと思ってます.

Ibrik も公開してくださいねっ ;-)

---------------------------------------------------------------------
To unsubscribe, e-mail: interest_ja-unsubscribe@lg3d.dev.java.net
For additional commands, e-mail: interest_ja-help@lg3d.dev.java.net

hideya
Offline
Joined: 2003-07-22

西本さん,さくらばさん,こんにちは.ひでやです.

これはまたディープなネタですねぇ~ ;-)

私もRubyは書けないのですが(汗),最近特に話題の言語なのでこれを
機会に勉強しちゃおっかなぁ(Lispも最近話題なので,少し勉強して
みました).

> 個人的に Mustang の JavaScript で遊んでいるのですが、Mustang
> だとすでに存在しているオブジェクトにもバインドできます。
> これができると、LG3D ですでに描画されている 3D のオブジェクト
> にスクリプトからアクセスできるので、テクスチャを変更すること
> やイベント処理をスクリプトで書くこともできます。

これって,とっても面白いアイデアですね.色々応用が広がりそう...

> Ibrik も公開してくださいねっ ;-)

私の方からもお願いいたしますっ ;-)

ひでや