トップページgamedev
559コメント205KB

Javaアプレットのゲームの限界は!

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/11/08 23:35ID:kmeAWDum
PCのブラウザで出来ることは全てやりつくされた?
なんか凄いの作れないの?
もう携帯だけの過去の遺物?
032832104/10/03 18:19:21ID:l36e1OTn
>>327
なるほどなるほど。そういう意味でしたか ^^;
しかし、そうなると疑問なのは、実装どうなるのかなぁ?と。

自分の中では、

・クラスファイルをデコンパイルさせたくないぜ。
・専用クラスローダーでしか読めなくすればいい。
・コンストラクタの呼び方が面倒になっちゃった。
・暗号化対応ソース自動変換ツールで、暗号化を意識しなくても大丈夫なシステムを!
・自動置き換えの、置き換え方を考えるぞ〜

って流れなので。

暗号化インターフェイスで暗号化を制御するとなると、実装はどうなるんだろう?って思うわけです。
暗号化インターフェイスを実装していたら、暗号化する?
暗号化するのは誰?
com.sun.tools.javac.main.Main を使って自力で暗号化コンパイラを作る?

みたいな。
0329名前は開発中のものです。04/10/05 00:20:10ID:vzG1Y+sw
>>328
その前に一つ問題があるのですが、独自で実装したクラスが独自で実装した
インタフェースをimplementsしていた場合、どうやってクラスオブジェクトを
ClassLoaderから取得できるのでしょうか?
インタフェースだけならClassオブジェクトを取得出来るのですが、
インタフェースを実装したクラスの場合では、NoClassDefFoundError例外が発生します。
0330名前は開発中のものです。04/10/05 01:03:07ID:2w/Bi/QR
Javaアプレットって、やっぱりサーバにプログラムを置いていても
クライアントから持っていかれて逆コンパイルされるんだよね?
0331名前は開発中のものです。04/10/05 01:07:54ID:vzG1Y+sw
>>330
なので、逆コンパイルできないネイティブコードでClassLoaderクラスを
独自実装するか、それとも、逆コンパイルされても解読が難しくなるように
ソースを難読化するかのどちらかに分かれて検討しているところです。
0332名前は開発中のものです。04/10/05 12:43:28ID:pyJtAE+Y
クラスローダをネイティブコード?
アプレットならデフォだとセキュリティでひっかかるんじゃないの?

署名したりインストールの手間とか考えると
普通にアプリケーションベースでネット経由でJNIをまぜつつ
ダイナミックにクラスをロードするほうが便利な気がするんだが
0333名前は開発中のものです。04/10/05 13:06:55ID:J9uCsa2u
どんな暗号使っても
その独自クラスローダを勝手に呼び出されたら
それで終わりだと思うんだけど。

結局ユーザ側で実行できるってことは
どっかで普通のバイトコードに落ちるんでしょ?
それを読む方法が何かしらあるわけで
033432104/10/05 14:53:07ID:UnlMJM9l
>>329
すみません。今のところ全て机上論なので実際のところは分かりません。
今から実際にソース書いて実験します(´д`;)

>>333
独自クラスローダーのインスタンスの作成の仕方を難読化すればいいと考えています。

沢山の偽者コードの中に本物を一つ書いてスパゲッティーにしたり、
さらに難読化ツールでメソッド名なんかを変えると、読めなくなると思います。
また、ダミークラスローダーなんかも、いくつか作れば、どれが本物なのか分からず
解読を諦めるのではないでしょうか?
藁の中から針を探す難しさだと思います。

アプリケーションの中身とは全く違う部分で労力をかけますが ^^;
033533304/10/05 15:45:56ID:J9uCsa2u
>>334
いや、同じことだと思うよ

ClassLoader#(String,byte[],int,int)に
ブレークポイント張ってデバッガで実行されたら
アウトなんじゃないの?
033632104/10/05 16:37:25ID:oJqqTbhC
ぐはっ!!!
そうっすね…少々焦点が狭かったか…

あと、

new Exception().printStackTrace();

とか、コードに埋め込まれたら
処理の流れが分かるって事も、今思い出しますた。

工夫しても解読されるのは時間の問題か…

モウダメポ('A`)
033732104/10/05 16:51:04ID:oJqqTbhC
RMI 使ってインスタンスを取得すれば大丈夫そうな…
うーん。サーバーが常に動いてないとダメだけど。
0338名前は開発中のものです。04/10/05 17:00:29ID:pyJtAE+Y
そこまで暗号化が必要なアプレットのゲームってのはそうそう多くない希ガス
033932104/10/05 17:43:10ID:oJqqTbhC
まぁ、アプレット限定の話しではありませんです。
0340名前は開発中のものです。04/10/05 18:28:28ID:pyJtAE+Y
>>321
このスレの名前をいってみろ
034132104/10/05 18:37:44ID:oJqqTbhC
放置・過疎スレ。
0342名前は開発中のものです。04/10/05 21:51:30ID:qIq4WQNz
>>339
いきなりスレの前提からはずれとるがなw
それならJAVA使わずネイティブコードでやる方がより良さそうだし
0343名前は開発中のものです。04/10/05 21:57:58ID:u1RKRDG3
リバースエンジニアリングをどうしても防ぎたいのなら、ネイティブコードを吐く言語を使用したほうが良い希ガス。
0344名前は開発中のものです。04/10/05 22:38:11ID:pyJtAE+Y
ネイティブなバイナリでもそのプログラマとコンパイラの癖わかれば
それなりに簡単にわかるぞい

あたりがつけばどんどん加速度的に分かるものだ

クラックされるくらい関心度の高いゲームが作れるかどうかのほうが重要だと思うんだがね
034532104/10/05 23:10:54ID:oJqqTbhC
>>342
> いきなりスレの前提からはずれとるがなw

>312 で逆コンパイルを防ぎたいとのマルチ質問があり、
俺がうっかりマジレスしたのが始まりで、それからは逆コンパイルを防ぐ話題でした。
>>312 以降、アプレットの話しは一切してないっす。
人も全然いないみたいだし、問題ないか、と思って。

>>343
そりゃそうだけど・・・_| ̄|○

>>344
> クラックされるくらい関心度の高いゲームが作れるかどうかのほうが重要だと思うんだがね
ごもっとも。


どこかのスレで、

実行できるものを配るということは
暗号化したファイルと、複合化のキーを一緒にして配るようなものだから。
いくら暗号化しても防ぐのは無理。 解析されるのも時間の問題。

って読んだ希ガス。今、思い出した。
0346名前は開発中のものです。04/10/05 23:55:58ID:2w/Bi/QR
解析されるのが手間になる方向しかないわけね。
0347名前は開発中のものです。04/10/06 22:03:14ID:dUtJtg+D
難読化ってそういうことだからなぁ。

先進的なアイデアなら特許取れるし。
昔なら実行時書き換えって技もあったけど、いまどき現実的でないしなぁ。

どうやって難読化しようかって考えるより、一行でもコード書いたほうが
自分のためになるんだよな。

.NET用のは結構いいのがあるようなのだが。

乱文失礼
0348名前は開発中のものです。04/10/06 22:22:02ID:CQVHxZ5S
>昔なら実行時書き換えって技もあったけど、いまどき現実的でないしなぁ。
VM依存言語だと実行時中間言語生成ってな話かねぇ。

>.NET用のは結構いいのがあるようなのだが。
確かに。
Javaな方面ではサイズ縮小だけが狙いで、本来の意味での難読化の要求が少ないのかも。
0349名前は開発中のものです。04/10/06 22:34:27ID:WwhPAGcr
test
0350名前は開発中のものです。04/10/06 22:44:22ID:Em+Tmfm5
まぁ10年くらい前から開発されてきたものだしなぁ
0351名前は開発中のものです。04/10/06 23:04:15ID:ekr4P7Le
Java Pressのvol35に、難読化とクラスローダーについて書いてあった。
RetroGuardか何かが、クラス名やメソッド名をaとかbにするみたいだが、
クラスサイズを犠牲にしても、a05470210303とかの方が難読化にならないかな、
と思ったが、リファクタリングで変換一発か。
035231204/10/07 00:34:57ID:SXGuxMIT
>>351
詳細希望。ま、買えばいっか。

Javaアプレットでは無い時点で論外ですが、自分の作っている
ゲームアプリはJavaWebStartを使用しています。
なぜか、メインフレームの部分が解読不可能でした。
jodeとかmochaで試したのですが、エラー起きちゃいます。
そんな訳で当分は検討しなくてもよいかな〜と考えている所です。
勝手ながら、この件のレスはここでクローズと言うことで。
0353名前は開発中のものです。04/10/07 01:32:11ID:WcODZ6m5
変なフォーマットのclassファイルを作って
MSのVMでは動くけどSunのjavapではエラーが
出るようにしてたアプレットがあったなー

たしかkomplexのデモだったと思うけど
0354名前は開発中のものです。04/10/07 01:42:39ID:+NyIBcQo
クラスファイルのバージョンに対応してないとか
0355名前は開発中のものです。04/10/07 02:05:51ID:7BhZIGQ/
webstartはアプレットとアプリケーションとあるから
一応また次元の違う話ではある

あとメインフレームってのが独自用語か?
なんとなくわかるが
035631204/10/07 02:36:24ID:SXGuxMIT
>>354
いえいえ。jodeで試した結果では、Java1.4でclassファイルを普通に認識しました。
ですが、複数のクラスを読み込んだうち、ソースに変換するものと例外が発生するものと様々でした。
例外はjodeパッケージに含まれている独自の例外クラスでしたので、詳細は分かりません。

>>355
>webstartはアプレットとアプリケーションとあるから
WebStartってアプレットでも配布可能でしたっけ?

>メインフレームってのが独自用語か?
すいません、これは、mainメソッドを実装しているFrameクラスの継承クラス
の事を指します。
0357名前は開発中のものです。04/10/07 11:01:50ID:7BhZIGQ/
webstartアプレットってしらんかね
JNLPしらべてみそ

ちなみに新しいウインドウが出てブラウザから独立するので
ブラウザを終了させてもいいとかそういう感じ

もはやアプレットである利点はさほどないけど
すでにアプレットになっているやつをwebstartにするならそれなりに価値もあるのかも
あとはinsetsを気にしなくていいくらいかな

もちろんいろいろなやりとりはJNLPAPIでやるというのもかわらない
0358名前は開発中のものです。04/10/10 11:51:36ID:RlxkQKMF
>>357
webstartを起動したときに、クライアント側にアプレットのモジュールを
DLしておき、ブラウザを自動で起動した後で、クライアントにDL
したモジュールを読み込ませるって事ですか?

単純にブラウザを起動するアプリをjnlpのAPIを使って実装し、
ブラウザ側ではアプレットを配置してあるページを表示させる
だけであるなら、webstartはあまり関係が無いような。
jnlpAPIでブラウザを起動するとき、何か利点あるのでしょうか?

0359名前は開発中のものです。04/10/10 14:23:36ID:2gZf+UVq
WebStartは

・ブラウザを閉じても起動したままで終了処理とか管理が楽
・JNLPAPIでローカルの資源を(デフォで警告は出るが)比較的危険のない範囲で使える
・キャッシュ処理によりアプレットのように毎回ロードしない
・細かいVMのバージョンチェックが可能
・2回目からはデスクトップやランチャーのショートカットでブラウザに関係なく起動できる

質問の意味がちょっとわからないが
URLClassLoaderを勉強するといい

これを使えばスタンドアロンのJavaアプリケーションでもバージョン管理とかが可能
これで俺はシステムたくさん組んでいる

ゲームでもjarファイルを別管理することによりゲーム本体と拡張部分を分けて管理が可能
RPGならソーサリアンとかのシステムとシナリオを分けるとかSTGだとコアと面データを分けるとか
0360名前は開発中のものです。04/10/10 15:07:46ID:RlxkQKMF
>>359
質問はwebstartって何?
では無くて、
質問はwebstartappletって何?
です。

私も、webstartで2DRPGを作っています。
0361名前は開発中のものです。04/10/10 19:15:39ID:2gZf+UVq
jnlpファイルの書式みてみろ
普通のアプレットを指定できる

利点はWebstartのAPIが使えるなど上に書いたのと同じだ
0362名前は開発中のものです。04/10/10 19:36:52ID:7+4TU6CI
アプレットも署名すれば、ローカルPCにアクセスできるよね。
0363名前は開発中のものです。04/10/10 20:13:16ID:inJquGiH
署名ってどうやるの
0364名前は開発中のものです。04/10/10 20:25:04ID:RlxkQKMF
webstart経由でアプレットが起動されれば、
クラスローダーやセキュリティマネージャがwebstartに依存されているため、
アプレットの時のようなややこしい設定プロセスを簡略化できる。

ということは、アプレットプログラム内でコンソール出力したり
すれば、webstartにログ出力されるという事か。

もし、そうだとしたら、使えるかも。
やりたいことがあるが、ちょっとセキュリティ上無理かと思っていたことが
可能になるかも・・。(独り言)
0365名前は開発中のものです。05/02/22 18:59:11ID:KzKSqXlr
やっぱりみんなそこまでしてソースを隠したいんだよね。
だから参考にしようとソース探しても全然ない。
結局掲示板で質問房が増える。
なんだかな〜。
0366名前は開発中のものです。2005/03/28(月) 02:49:42ID:kEg8t2iM
ってなわけで、作ってみました。
03673672005/04/04(月) 01:42:44ID:29VrGWc9
こんな感じになりましたが、どうでしょう?
>>http://gbsaga.ddo.jp/netgame/dillema/cliant/Dillema.jnlp

0368名前は開発中のものです。2005/08/02(火) 10:06:22ID:T+awd9IP
保守
0369π2005/12/14(水) 00:42:07ID:au/Ihpoc
質問です。
Linux環境でアプレットのアニメーションを作っています。
ダブルバッファリングしているのにちらついています。
どこかの大学の講義のページでダブルバッファリングするとこうなる、っていう例を見てもちらついているようなので、LinuxとNetscapeで実行するのに何か問題があるのでしょうか?
不思議なことにアプレットビューワの上でマウスを動かし続けていると非常になめらかに動き続けます。
カーソルを止めるとまた、たまにカクッカクッと止まります。
なんなんでしょう?アプレットビューワの上でカーソルを動かしてる間はなめらかってのは…。
0370名前は開発中のものです。2005/12/14(水) 03:26:56ID:UOIsfffY
>>369
ソース公開汁。
アプレットビューワはそんなに信用しないほうがいい。
ブラウザでは出来ない動作が可能だからだ。

0371名前は開発中のものです。2005/12/14(水) 09:22:28ID:VHYWcMtd
Flash 8.5が出たらJavaアプレットは今度こそ死ぬな。
0372π2005/12/14(水) 12:46:00ID:au/Ihpoc
ありがとうございます。そうなんですか。アプレットビューワは信用できないんですか?
実際に何が起こっているのかはわかりませんが、外見上は、たまにrepaint飛ばしてるんじゃないかって感じで、
一瞬止まったように見えるのです。で、カカカカカカカカカカクッカカカカカカカカカクッカカカカカカと…
マウスカーソルをアプレットビューワの上で動かしてると、凄くなめらかなアニメーションになって
スーと動きます。ずっとこんな風に動けばいいのに…。普通のことしか書いてませんがソースはこんな感じです。
0373π2005/12/14(水) 12:46:39ID:au/Ihpoc
//RunnableをimplementしているAppletのサブクラス内です。
public void start(){
super.start();
image = createImage(width, height);
/*オフスクリーンのGraphics*/
preg = image.getGraphics();
if(thread == null){
thread = new Thread(this);
thread.start();
}
}
public void stop(){
thread = null;
}
0374π2005/12/14(水) 12:47:50ID:au/Ihpoc
public void run()
{
Thread thread0 = Thread.currentThread();
/*whileの条件式は丸移しですがこれでいいのか気になります*/
while(thread == thread0){
try{
thread0.sleep(50);
}
catch(InterruptedException e){
}
/*
ここにパラメータの変更
*/
repaint();
}
}
public void update(Graphics g){
paint(g);
}
public void paint(Graphics g){
preg.clearRect(0, 0, width, height);
/*
ここに描画の部分draw****(preg, *****)って感じ
*/
g.drawImage(image, 0, 0, this);
}
0375名前は開発中のものです。2005/12/14(水) 20:39:46ID:cJCmSJXT
repaint()の直後に、再描画が行われる訳じゃないんですよ。
描画イベントをイベントキューに入れるだけなんですね。
イベントキューから描画イベントが取り出された時点で、初めて描画されるのですね。
そのスレッドのタイミングによっては、複数のrepaint()がある特定のコマで
一緒にされたり、故にあるコマでのrepaintが飛ばされてしまうのですね。
マウスカーソルを動かすと、システムから連続でrepaintが発送されるので
タイムラグがなくなり、スムーズに描画できるのです。故に解
0376π2005/12/14(水) 21:00:58ID:au/Ihpoc
なるほどX11だとXFlushしないといけないのと同じなのですね。
納得です。
ありがとうございました。
0377名前は開発中のものです。2005/12/14(水) 21:15:58ID:7r834BYR
どういたしまして
0378名前は開発中のものです。2006/02/07(火) 02:44:56ID:YcqHXq4X
「アプレットの読み込みに失敗しました。」
コンソールには
「************.classが見つかりません。」
と書いてあります。
デスクトップ上ではアプレットがちゃんと動作するのですが、
同じファイル(jarファイルとhtmlファイル)をアップロードしてから読み込むと見つからないと言われます。
どのような間違いが考えられるでしょうか?
0379名前は開発中のものです。2006/02/09(木) 01:59:14ID:2XaB8tQa
winSCPで転送するときに、
バイナリとか、テキストとか、なんか削除するとか設定が問題なのかなぁ。
転送後の画像がめちゃめちゃになったりしている…。
0380名前は開発中のものです。2006/02/09(木) 02:18:23ID:KZsev84P
文字変換して転送してるのかよ
0381名前は開発中のものです。2006/02/09(木) 03:30:00ID:2XaB8tQa
転送モードがテキスト、バイナリ、自動(特定の拡張子のファイルはテキストモード)とあって、
テキストモード、バイナリモード試してもうまくいかない。
サイズも変わってなさそうだし…。
自分のPC上では動くし…。
0382名前は開発中のものです。2006/02/09(木) 11:25:08ID:A4OVcy5n
その自分のPC上でhttpでとってくるようにはやってみたの?
0383名前は開発中のものです。2006/02/09(木) 18:17:46ID:2XaB8tQa
やったことないんですが、
それはhttpサーバをインストールして、
そこにファイルを置いてアクセスするってことでしょうか?
サーバを介すと状況が変わってくる可能性があると…。
0384名前は開発中のものです。2006/02/09(木) 19:10:26ID:A4OVcy5n
その状況が変わるかどうかをみないとなんとも

コードがおかしい可能性が高いわけだし

初心者でもhttp鯖立ち上げるのに一番楽なのは
NetBeansのようにTomcatこみのIDE使うあたりか
0385名前は開発中のものです。2006/02/10(金) 07:41:28ID:GjTMzduU
フォルダの配置とか実行コマンドとかもう少し詳しく書いてください。あとアプレットのhtmlファイルの<applet>の内容とか。
0386名前は開発中のものです。2006/02/10(金) 10:06:44ID:8daTPLyQ
マジスレ返してるし。
ボケろよつっこめねぇ!
0387名前は開発中のものです。2006/02/10(金) 11:16:22ID:8p7psy6q
まずhtmlファイルは、
<body>
<applet archive="piyo.jar"
code="hoge.class"
width=500 height=400>
</applet>
</body>
で、自分のPC上で実行するとIEの下のバーに「アプレット hoge started」と表示されてちゃんと動きます、
htmlとpiyo.jarを同じフォルダにアップロードしてhtmlを開くと「例外:java.lang.NullPointerException. java アプレットの読み込みに失敗しました..」あるいは、「アプレット hoge notinited」と出ます。
もう少しいろいろ調べてみます。
0388名前は開発中のものです。2006/02/10(金) 11:54:55ID:8p7psy6q
また387ですが、
hogeはHogeの間違いでした。
あと、実験でHello Worldもアップロードしてみたら動きました。
両方Linuxからscpコマンドで転送しました。
386さんはもし単純なミスに気づいてたら教えてください。
0389名前は開発中のものです。2006/02/10(金) 14:02:02ID:GjTMzduU
IE使えるならツール>SunのJavaコンソールに何かエラーの詳細が表示されてませんか?
0390名前は開発中のものです。2006/02/10(金) 17:36:59ID:8p7psy6q
表示されています。
java.lang.ClassNotFoundException: Hoge.class at sun.applet.AppletClassLoader.findClass(Unknown Source)…
Caused by: java.io.IOException: open HTTP connection failed. at sun.applet.AppletClassLoader.getBytes(Unknown Source)…
Exception in thread "Thread-9" java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)…
java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
Exception in thread "thread applet-Ex2b_RotateEarth.class" java.lang.NullPointerException at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
やはり HTTP connection failed がポイントでしょうか。
0391名前は開発中のものです。2006/02/10(金) 17:40:29ID:hccRquls
HTTPブロックしてるのかよ
0392名前は開発中のものです。2006/02/10(金) 18:06:52ID:8p7psy6q
詳しくよろ
0393名前は開発中のものです。2006/02/11(土) 01:52:51ID:QWiuJU/z
ヒント:codebase
0394名前は開発中のものです。2006/02/11(土) 02:24:35ID:tfXfazFi
codebase属性は同じディレクトリに配置する場合省略できる
とあったので省略しています。書いてもうまくいきません。
それともなにか別のプログラムが必要なのでしょうか…。
0395名前は開発中のものです。2006/02/11(土) 03:36:41ID:tfXfazFi
PC上のApatchのlocalhostに置いてhttpアクセスしてみました。
やはり、動きませんでした。
しかし、HelloWorldは動きました。
同じアプレットのプログラムで何が異なっているんでしょう。
マニフェストファイル?(gcc環境で作成したことぐらいしか書いてない)
PC上の同じディレクトリにhtmlとjarを置いてブラウザで開くとちゃんとstartするのです。
まったく意味がわかりません。
0396名前は開発中のものです。2006/02/11(土) 09:29:15ID:mZnM3IUc
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=12&topic=23657
と同じ原因じゃない?
0397名前は開発中のものです。2006/02/11(土) 12:19:21ID:uCg0fPDg
その2つのコードの違いがわからんとなんとも
0398名前は開発中のものです。2006/02/11(土) 13:52:36ID:tfXfazFi
動きました。
何を変えたかというと、10個ぐらいのクラスをjarアーカイブにしてたんですが展開してディレクトリ内にばらばらに置きました。
そうしたら動きました。
「たくさんあるときはjarにまとめなくてはいけない。」
思い込んでいたし、そう解説しているページもあった気がするのですが…。
だから残念ながら根本的に何がまずかったのかわかったわけではないです。
(ブラウザかJVMかが、なぜかjarをダウンロードして展開した一時フォルダを探していなかった?よくわかりません。)
なにか助言があればお願いしたいです。いろいろありがとうございました。
0399名前は開発中のものです。2006/02/11(土) 15:18:42ID:uCg0fPDg
ようはJavaの基本が分かってないってことだろ?
勉強しなおしたほうがいい

classで配布なんてありえんし
0400名前は開発中のものです。2006/02/12(日) 02:22:58ID:I+qrsV4/
>>398
私も似たような経験があります。
現象は逆で、サーバでは動作するのにローカルではエラーが起こるというものです。
だからそのままほったらかしです(汗

エラーが起こるのは、jar内のクラスからjar外のzipファイルの中にあるデータを
読みにいったときでした。security関係のexceptionでしたが名前は覚えていません。
ローカルではjarかzipのどちらかをバラしてテストし、サーバには圧縮したデータを
転送していました。
今のところ不具合報告はきていませんがちょっと気持ち悪いです。
0401名前は開発中のものです。2006/02/12(日) 12:59:55ID:iEqclzSA
セキュリティ関連なら逆に分かりやすいと思うけど
0402名前は開発中のものです。2006/03/15(水) 01:12:19ID:cXOEjtfT
保守
0403名前は開発中のものです。2006/03/18(土) 14:44:20ID:FQ/Z8uaG
描画速度がネックで大したゲーム作れなかったけど
いまでは問題なしだね。でも作ってる人昔ほどいないような・・・
0404名前は開発中のものです。2006/03/18(土) 15:52:21ID:xwepgm3J
VMのチューニングするときアプレットよりアプリのほうがいいからね
0405名前は開発中のものです。2006/03/19(日) 01:57:22ID:ax51vhV/
今度NINTENDO DS用のブラウザ(Opera)が発売されるらしい。
これはJava Appletに対応しているか?知っている人いたら情報キボンヌ。

あと、PSPでは既出だが、これはどう?

こいつらがAppletをサポートしてたら、魅力だな。
だって、NINTENDO DSやPSPでも動くソフトを誰でも作れるって事だもんな。
0406名前は開発中のものです。2006/03/19(日) 08:45:57ID:ixUijk9F
Flashも対応してないみたいだから無理っぽい
0407名前は開発中のものです。2006/03/19(日) 12:37:59ID:UecNa0OI
JavaSEとJavaMEは違うぞ
0408名前は開発中のものです。2006/03/20(月) 20:33:46ID:mFl3mT/C
JavaSE … スーパーJAVA
JavaME … MEタソ専用JAVA
0409名前は開発中のものです。2006/03/23(木) 14:17:29ID:8dGLcxi0
球体を表示するにはどんなプログラムにしたらいいのですか?
0410名前は開発中のものです。2006/03/23(木) 21:28:59ID:uBzyklzV
球体を表示すればいいのでは?
BufferedImageなりGraphics2D#drawOvalなりお好きな方法で
0411名前は開発中のものです。2006/03/23(木) 21:36:47ID:fbbvz6K/
System.err.print( "球体" );
0412名前は開発中のものです。2006/03/24(金) 00:02:15ID:J0OqK5m9
マルチだしな
0413名前は開発中のものです。2006/03/24(金) 03:00:53ID:j+UDUKod
こんなもんか?

                _,,.. -──‐- .、.._.
           ,. ‐''"´           ``'‐.、
          ,.‐´                 `‐.、
          /                          \.
       ,i´                           `:、
      /                                ヽ.
    ,i                                i、
    .i                                     i.
   .i                                  l
   |                                   |.
    |                                        .|
   |                                   |
.   l                                  l.
.    i、                                 ,i
.    i、                                ,!
.     ヽ                               /
.      `:、                           ,‐'
          \                        /
          `‐、                   , ‐´
           ` '‐.、 _            _, ‐''"
                 `` ‐-----‐ '"´

0414名前は開発中のものです。2006/04/02(日) 15:22:56ID:EkMiIzf/
これはいい円ですね
0415名前は開発中のものです。2006/04/15(土) 01:32:41ID:sf5nUDiw
Javaアプレットのゲームの限界は!?

弾幕一万発
0416名前は開発中のものです。2006/04/15(土) 01:52:26ID:kA305qJB
スプライト数1万なら環境にもよるが普通に出るな
0417名前は開発中のものです。2006/04/15(土) 02:30:47ID:Vc+Xe/9j
FlashとAppletってどっちが軽快?
0418名前は開発中のものです。2006/04/15(土) 10:48:43ID:MVUUElru
Flash 8.5からはJITコンパイラ搭載して爆速になる。
0419名前は開発中のものです。2006/04/15(土) 14:20:59ID:Vc+Xe/9j
じゃあJIT同士これから互角の攻防が繰り広げられるのか
普及率を取るか費用を取るか、悩ましいところだな・・・
0420名前は開発中のものです。2006/04/15(土) 16:43:08ID:godpVUlN
なんでJavaアプレットの起動はFlashに比べて遅いの?
普及率も問題だけど、起動の遅さも問題だと思う。
0421名前は開発中のものです。2006/04/15(土) 17:00:15ID:hisjoupK
>>420
「なんで自動車は自転車より重いの?」といってるのとおなじだよ

ランタイムのサイズが違いすぎる
Javaは全方位でフラッシュには出来ないことがたくさん出来る
J2MEのようにほとんどライブラリさえなければJavaもかなり小さいよ

ただ、そのライブラリの量がJavaSEやJavaEEの開発の容易さのうりだから
どこで妥協するかが問題

ランタイムが大きくてもJavaVMの起動自体はいまやマシンスペックも
上がったことによってかなり解消されている

ただし、ファイルサイズが大きいのでアンチウィルスソフトがでっかいライブラリをチェックしに行くんだよ
そこを検索させないようにすればびっくりするほど早くなってる

遅すぎと思われる原因は昔のねすけに使われたシマンテックJITVMの影響もあるのは確かだが
0422名前は開発中のものです。2006/04/16(日) 22:58:49ID:npa0GXet
>>415
何でもいいから一万発近く出してみた
2000あたりからヤバ気な感じ
ttp://summerclap.hp.infoseek.co.jp/test/Barrage10000/
0423名前は開発中のものです。2006/04/16(日) 23:21:58ID:HI3eThbN
ウチでは2000ぐらいでは平気。

6000ぐらいで60FPS切って、9700前後では
39〜40FPSで安定した。
0424名前は開発中のものです。2006/04/16(日) 23:52:44ID:1FanCPH2
そーすこーどきぼん
背景の描画でフィルレートとられるから描画方法によってはそれも多少は影響してるかも

オブジェクト数が1万ともなると移動処理だけでも多少はマシンパワー取られるかな
あたり判定がつけばなおさらか

これがJavaアプリケーションだとチューニングできるからねぇ
プロファイラでネックな場所をつぶせばさらにいけるか

あとこれだけオブジェクトが重なるようだと手前から描画するソフトウェア描画のほうが早くなるかも
0425名前は開発中のものです。2006/04/17(月) 01:44:13ID:4m3CfSvS
>>422
MacBook Pro + Safari + Java 1.4.2_09
3000くらいで60FPS切って、10000付近では30〜35FPSくらい。
2000〜3000ではなめらかに動いてる。
0426名前は開発中のものです。2006/04/17(月) 04:07:33ID:0J/yLTEC
液晶になった今では関係ないがスクリーンセーバーとして面白そうだな。
CPUが全然休まらないセーバーwww
0427名前は開発中のものです。2006/04/21(金) 23:57:51ID:SzgC5CnG
スーファミのF-ZERO風な描画をやってみた
ttp://summerclap.hp.infoseek.co.jp/test/Ground1/

背景描画だけでゲームにはなっていないが、川を道路に見立てて
走るとそれっぽい雰囲気が味わえた。
■ このスレッドは過去ログ倉庫に格納されています