トップページgamedev
984コメント340KB

JAVAでゲーム作成

■ このスレッドは過去ログ倉庫に格納されています
0001JAVA初心者・・・04/01/17 22:47ID:eiE+Mw3o
はじめまして!!
今年に入ってからJAVAでゲームを作ってみようと勉強しています。
どなたか宝さがしゲームを作るうえで参考になるゲームとツール知りませんか??
知っていたら教えてください。<(_ _)>ぺこり
0220名前は開発中のものです。04/08/31 14:25ID:Z2xpHABT
サーバープログラムの参考になるソースどこか教えてください。
0221名前は開発中のものです。04/08/31 19:02ID:eG4/8KZG
>>219
どの部分で行き詰まっているのかかいてもらわんとなんともいえん

>>220
ネットワークの仕組みが分かってるかどうかだよな
まずはTCPベースでいろいろやってみるといいよ
小規模やリアルタイム性が問題にならないのならそのままでもいい

この2者ともまだ言語的にJavaかどうかのレベルではないなー
0222名前は開発中のものです。04/08/31 23:28ID:bWsLtK/e
>>220
全体的な構造は、下記のソースコードを参考にして作成しています。
(エミュレートサーバプログラムです)
ttp://sourceforge.net/projects/l2j/
ttp://sourceforge.net/projects/tupi/

>>221
全体的にこんな構造で作成するといったものが分からず、適当に作成しているため、
特にアーキテクチャと言うものが存在しない状態で、
何とか動いているようだけど、ソースはすでによくわからない状態になっています。
このような状態なので、何か機能を追加するにもなかなか進みません。
ネットワークゲームのクライアント作成に関して、
何か参考になるリソースを教えていただけないでしょうか?
今プログラムは、複数の人がマップを歩けるといった状態です。
0223名前は開発中のものです。04/09/01 00:45ID:JSL7Dn8l
そこまでできているならあとはそのパケットの種類を増やすだけじゃないの?

とにかく機能をプラグイン的に開発で追加できるようにしておいたほうがいい

特に大規模になるRPGならなおさらだが、STGや格闘なんかもこのプラグイン開発が非常に有効だ

だらだら書いたコードは自分の書いたものであっても後からはかなり追いにくくなるしね
0224名前は開発中のものです。04/09/01 00:52ID:jkCSki8i
クライアントの作り方が良く分からないという段階で、
このような大規模(に見える。ソースを見たわけではないので)
サーバのアプリを参考にしてもどうにもならんと思う。

まずは、サーバとクライアントにどのように分けられているかを考えて見ることをお勧めする。

ゲーム作る前に、チャットサーバとチャットクライアントをTCPで作ってみなされ。
それが出来れば、そこに書いているようなプログラムは
ある程度想像できるとおもうが。

要するにチャットでクライアントから送信する文字列の代わりに
クライアントでのキャラクタの操作を送ればいい。
サーバはクライアントから受け取った全ての情報を
全てのクライアントに送り返すだけ。
(ここでは敵キャラとかも居ない前提だから)

まぁ30人ぐらいなら問題なく動くと思うよ。
ちゃんとクリッピングする必要はあるけど。
0225名前は開発中のものです。04/09/01 01:43ID:7oUT+/5j
>>223
ご指摘の通り、だらだらとその場限りのコードを書いているので、
コードが難読化してきました。
プラグインですか。そういう方向性も考えて、
できるだけモジュール化して少しでも読みやすい形に変えていくしかないでしょうか...

>>224
以前、多人数チャットプログラムは作成したことがあります。
チャットとネットワークゲームのギャップは大きいです。
今は全員にブロードキャストしていますが、そのうちAOI (Area of Interest)も考えていきたいと思います。
0226名前は開発中のものです。04/09/01 17:01ID:ISPB1QLl
単発質問スレだろ。
とっとと削除依頼出して来いよ。
0227名前は開発中のものです。04/09/02 07:45ID:Y1Yx8GTH
お前が出してこればいいだろカス
0228名前は開発中のものです。04/09/02 19:10ID:cCoZW+h9
いや、有用です。
jreって同梱して配布してもいいんですか?
0229名前は開発中のものです。04/09/02 19:17ID:u4jYIec6
ライセンスにちゃんとかいてあるだろ
アプリと一緒なら大丈夫と

細かいところはちゃんと自分で読めよ
日本語でかいてあるんだから
0230名前は開発中のものです。04/09/05 18:37ID:JFvG5Cpo
http://www13.org1.com/~taro/typing/frame.html
↑アプレットで作ったタイピングゲーム。
データはたぶんCGIで処理されてランキングを競える。
はまった(σ・∀・)σ
0231名前は開発中のものです。04/09/05 19:08ID:3h4b8ntN
そもそもjreってどうやって添付するの?
0232名前は開発中のものです。04/09/05 19:17ID:GEDEt6J2
jreってのはwinでsunのインストーラしか使ったこと無いやつはわからんだろうが
一定のディレクトリ構成で解凍できていればそれだけで動く

jreのパス/bin/javaw.exeを実行すればそのjreのファイルを使って動いてくれるよ
0233名前は開発中のものです。04/09/06 00:04ID:w3gEzBit
起動するだけならManifest入りのjarじゃ駄目?
jre+exeにするメリットがよくわからない。誰か教えてプリーズ。
0234名前は開発中のものです。04/09/06 00:23ID:Ce27N6UB
>>233
クリックだけで起動できるようにしておけば十分だというのはプログラマ側の意見。
Winユーザは「起動はhogehoge.exeをダブルクリック」とかいうイメージを持っているから、
Win向けならexeも用意しておくのが親切だろうと思う。
0235名前は開発中のものです。04/09/06 00:32ID:mbfLc7Vo
>>234
あるいは、JWS使ってデスクトップにアイコンを置くか、かな。
0236名前は開発中のものです。04/09/06 11:28ID:i7I+EB4B
winユーザなんて低脳は相手にしてないからいいよ
0237名前は開発中のものです。04/09/06 12:20ID:ZBANa6io
FPSを実装する場合、Threadのrun()の中でThread.sleep()使うだけでもいいんでしょうか?
たとえば、sleep(10)とすれば20msごとにrun()(1フレームの処理)が実行されるので50FPSになりますか?

それともrun()の中を無限ループにしてThread.sleep()を使わずif文で

if (System.currentTimeMillis() - temp > 20) {
  temp = System.currentTimeMillis();
1フレームの処理
}

とした方がいいでしょうか?
どんな性能のマシンでも大体50FPSを保つようにしたいと思っているんですが。一般的な
方法はどうやるのでしょう。ヒントお願いします。
0238名前は開発中のものです。04/09/06 18:38ID:+gWz+dMO
>>233
ユーザーにJREが入ってるのを期待するという時点で使いにくい
ネイティブアプリと同じ感覚で使うならコレ

しかも、ユーザーのJREを無理矢理上書きしないことと
稼働確認したバージョンが入っていることで安心感がある

セットアッププログラム使えば簡単にデスクトップにショートカット作ったりできるしな
0239名前は開発中のものです。04/09/06 18:41ID:+gWz+dMO
>>237
タイマ管理ならメインルーチンはなんらかのObject.wait()で待機
そしてTimerTaskのFixedのほうでnotify()
これで一定間隔で綺麗な時間管理が可能

いろんなのをためしたがコレが一番fpsの安定度が高かった
whileなどのループで監視し続けるのは実は安定度がイマイチ
0240名前は開発中のものです。04/09/06 19:47ID:ZBANa6io
>>239
ありがdそれも試してみます
0241名前は開発中のものです。04/09/14 15:41:48ID:9W9CzUmZ
Javaでドラクエ風RPGのスクロール処理実装してみました(けっこうむずいな)。
ソースも入っているのでなんか感想ください。

ttp://gamdev.org/up/img/1230.zip
0242名前は開発中のものです。04/09/14 16:37:46ID:XDf3I/sN
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●きなこ●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
これを見た人は確実に【きなこ】です。これをコピペでどこかに1回貼れば回避できます。
これは本当です。やらないときなこ無駄になります
0243名前は開発中のものです。04/09/14 16:46:02ID:mzvwC+OS
きれいで見やすいソースだと思います。
Runnableをインプリメントって昔の手法のようなきがしますが、
ゲームでは普通なんですかね。

ゲーム作ってないJava使いの戯言なので、気にしないでください。

あと、マップデータの保存方法が面白かったです。
これなら、エンコーダ、デコーダが必要ないですね。
こんな発想は私にはありません。

さらにがんばってください。
0244名前は開発中のものです。04/09/14 19:48:38ID:9W9CzUmZ
>>243
ありがとございます。

マップデータは最初アスキーコードでファイルに書き込んでたんですが、最近オブジェクトのシリアライズ機能を知ったので使ってみました。

アニメーション入れるときはRunnableをimplementsするか別にThread拡張したスレッドクラス作るかだと思うんですが新しくスレッドクラス作るの面倒くさかったのでimplementsしちゃいました。本当はアニメーション用のクラス作ったほうがきれいだとは思います。
0245名前は開発中のものです。04/09/14 23:09:03ID:oCIZVQtI
>>241
TimerTask使え
動作が一定にならんぞ
0246名前は開発中のものです。04/09/15 01:11:45ID:x9fcMx2z
>>245
スレッドの代わりにってことですよね。
動作が一定にならないってのはどういう意味でしょうか?
性能が違うマシンで実行すると移動速度が変わるってことですか?
0247名前は開発中のものです。04/09/15 09:04:05ID:x9fcMx2z
上の方に書いてありました。
0248名前は開発中のものです。04/09/18 00:17:02ID:vzZqw4Gl
>>241
すごい。ドラクエっぽいですね!

ブラウザにつなぐだけ、携帯にものってるjavaって
良い言語だねー 自分も色々作れるように調べてみようかな
0249名前は開発中のものです。04/09/19 01:28:27ID:SSes8fIu
>> 239
TimerTask でためしに組んで見たけど、アプレットだと描画が行われない。
アプレットじゃなく普通にフレーム作ってやると動くのだが。
メインスレッドは止めちゃいけないのかな。他にスレッド用意する必要があるとか。

class App extends JApplet {
  public void start() {
    timer = new Timer();
    timer.scheduleAtFixedRate(new WakeTask(this), 0L, 20L);
    run();
  }

  public synchronized void run() {
    while (true) {
      try { this.wait(); } catch (InterruptedException e) {}
      Graphics g = getGraphics();
      g.drawString("hogehoge", 100, 100);
      g.dispose();
    }
  }

  public synchronized void wake() { notify(); }
}

class WakeTask extends TimerTask {
  App app;
  WakeTask(App app) { this.app = app; }
  public synchronized void run() { app.wake(); };
}
025024904/09/19 01:44:48ID:SSes8fIu
自己解決。スレッド作ってそちらで回したらうまくいった。
こーゆーやり方が正しい作法なのかは知らんが。

class App extends Japplet implements Runnable {
  public void start() {
    timer = new Timer();
    timer.scheduleAtFixedRate(new WakeTask(tins), 0L, 20L);
    new Thread(this).start();
  }

  public synchronized void run() {
      ・
      ・
0251名前は開発中のものです。04/09/19 09:06:51ID:goqDjYTZ
start()をオーバライドしちゃだめだろ
0252名前は開発中のものです。04/09/19 10:53:43ID:Aq0Xkjw4
横から失礼。
public class App extends Applet{
      :
  class task extends TimerTask{
    public void run(){
メインの処理;
      repaint();
      :
ではどうなんでしょうか?
0253名前は開発中のものです。04/09/19 10:56:46ID:g0x391w9
よく分かってないのならrunのなかで各種初期化処理やれ
ゲーム自体独立したスレッドでいい
0254名前は開発中のものです。04/09/20 06:02:36ID:W3SKt6/C
TimerTaskを使った絵画ループの書き方としては


TimerTask task = new TimerTask() {
public void run() {
canvas.repaint();
}
};
timer.schedule(task, 0, 1000/fps);

これでいいのかな。
誰が参考になるコードキボンヌ(2D対戦格闘もイケるとか、640x480で30fpsはいけるとか、これ本当?)
0255名前は開発中のものです。04/09/20 13:13:54ID:ioTee/hT
GraphicsConfiguration#createCompatibleImage(width, height, Transparency.BITMASK);
を使用すると恐らくハードウェアアクセラレーションがかかる状態で描画が出来る予感。
OSとJavaVMによりけりだけど。
実はSWTのGCを使うほうが安定して上記とあまり変わらないスピードで描画が出来る罠があったりする。
0256名前は開発中のものです。04/09/20 18:28:35ID:faYuQGQa
>>239
おまいさんが実験したJavaのソース キボンヌ。
0257名前は開発中のものです。04/09/20 19:27:10ID:Y6umYSPO
>>254
640*480-60fpsいけるよ
ただしアルファブレンド拡大縮小回転を使わないという前提
1.4.2ではこれらはアクセラレーション効かないからね

アクセラレーションはいろんな場合に様々な要素で効いている
Windowsならメモリの確保の仕方でDDB、DIB、DirectXを使って実装している。
G400とかMatrox系はDIBやDDBはすんごい早い。
DirectXはRIVA128以降〜最新チップまで比較的安定。

>>255
それであってる
描画先がVolatileImageやフルスクリーン時のバックバッファならDirectXが積極的に使われるっぽい
描画先もコンパチブルイメージだとDDB
通常のBufferdImageはDIBになる

>>256
あの説明で分からないのならやめとけ
0258名前は開発中のものです。04/09/20 19:46:32ID:faYuQGQa
>>257
実装は出来てるよ。
だけど人のソース見るのって楽しいじゃん。
0259名前は開発中のものです。04/09/20 19:54:46ID:Y6umYSPO
ちゃんと動いているのならそれでいいだろ
026024104/09/21 22:03:43ID:og0kzD+1
>>241でドラクエ作ってたものです。
Javaのゲームプログラムを扱ったページを始めたのでよろしければいらしてください。いろいろアドバイスいただければ幸いです。

http://f57.aaacafe.ne.jp/~javagame/index.html
0261名前は開発中のものです。04/09/21 23:17:10ID:BR/zZftm
がんばれ

個人的にはMSVMの新規配布がもはや不可能な現状では
Java2対応にしてスタンドアロンアプリケーションのほうが
いろんなことできて面白いと思うんだが

がんばれ
0262名前は開発中のものです。04/09/21 23:34:31ID:og0kzD+1
>>261
ありがd。
アプリケーションにすると余計な処理が増えて、少しわかりにくくなると思ったんでアプレットから書きました。
一応、Java知っている人向けに書いてるのでJDK入れてあることを前提にしてます。
今後はアプリケーション版も追加していこうと思います。
0263名前は開発中のものです。04/09/22 01:17:04ID:OSkO/iZz
というかアプリケーションの方が大概なめらかで高速
しかもアプレットより簡単だぞ
0264名前は開発中のものです。04/09/22 10:50:38ID:4p3loCSB
>>263

>しかもアプレットより簡単だぞ
そうなんですか?
私のアプリケーションの作り方だと

public class FrameClass extends JFrame {
 public FrameClass() {
  MainPanel panel = new MainPanel();
  getContentPane().add(panel);
 }
}

class MainPanel() extends JPanel {
 public void paintComponents(Graphics g) {
  // アプレットのpaint()と同じ
 }

 // キーボード・マウス処理・スレッド等の実装
}

っていうようにフレームとパネルの2部構成にしてるんですが結構面倒なような。
あとアプレットの方がダウンロードしなくても手軽に見てもらえると思ってます。
完成品はアプリケーションの方がいいのは同意しますが。
0265名前は開発中のものです。04/09/22 16:34:46ID:OSkO/iZz
いやそれだとSwingつかって描画してるだろ
そんな面倒な手続きはいらん
0266名前は開発中のものです。04/09/22 20:33:54ID:xw9EK35l
Swing使いたいんで。というかSwingから入ったのでFrame使ったプログラム知らないです・・・
よく考えた結果アプレットやめてアプリケーションにしました。
0267名前は開発中のものです。04/09/22 20:54:00ID:OSkO/iZz
別にSwingつかってもかまわんよ
RPGみたいなのはうまく使えば便利に管理できるだろう
たとえばウインドウはレイヤー使えば綺麗に重ね合わせされるわけだし

でも重ね合わせの処理とか絶対的な速度はSwingまかせなであぶないので
STGとかアクション系ならフレームの生成くらいしかSwingつかわないんじゃないかな

アプリケーションならおとなしくBufferStrategyつかっとけ
0268名前は開発中のものです。04/09/22 21:22:57ID:YNa9oJMU
参考サイト
http://www5.airnet.ne.jp/sakuraba/java/laboratory/JDK1.4/Graphics/BufferStrategy/BufferStrategy.html
0269名前は開発中のものです。04/09/22 23:38:43ID:xw9EK35l
アドバイスありがとうございます。
勉強させてもらいます。
0270名前は開発中のものです。04/09/24 04:57:16ID:JbcS0+vI
ゲームってゲームの雰囲気に合ったUIがあってこそだと思うんだよ

Swingなんてクソ重いライブラリ呼び出すなんてNO
ゲームに必要な分だけのシンプルなUI widgetを作るのが漏れは好きだ。
0271名前は開発中のものです。04/09/24 12:33:08ID:iDLeFsqJ
>>270
JComponent継承して作れよ

どのみちゲームでやるなら特にアクション系は垂直同期とるだろうし、
バッファリングをSwingにまかせるのはRPGやAVGならありだと思う
0272名前は開発中のものです。04/09/24 23:41:38ID:JbcS0+vI
>>271

漏れはゲームのデザインはユーザインターフェースのデザインでもあると考える。
A列車で行こう4っていうゲーム、ユーザインターフェースがWindows標準の(しかしVBで作ったようなダサい)
ウィンドウシステム使ってた。あれでどれだけゲームの削がれたか。
0273名前は開発中のものです。04/09/25 00:30:14ID:LEmXE2S9
>>272
いや、Swing誤解している

あれまじめにいじればわかるけど、ゲームのインターフェース並のことができるぞ
Swing作ったやつはいかれてると思った
0274名前は開発中のものです。04/09/25 02:21:25ID:GBpB+5WY
>>273

だろうけど、よくよく考えると自分で必要最小限のもの作ったほうがスマート
せっかくJavaのパフォーマンス上がっているのに、Swingなんざ、いろいろ制約あるし重いし。
0275名前は開発中のものです。04/09/25 03:01:16ID:LPiCwWti
重いってコンポーネントが?描画が?
0276名前は開発中のものです。04/09/25 07:51:08ID:Nt5AgBoK
>>275
コンポーネントじゃないかな。起動が重いのは確かだと思うけど。

ただ個人で作るミニゲーム程度なら全然問題ないと思うけど。Swingの重さが目につくレベルのゲームってどのくらいの規模かな?3DMMOとかその次元の話?
というかSwingのコンポーネント(ボタンとかテキストボックス)とか普通のゲームでは使わないじゃん。
0277名前は開発中のものです。04/09/25 09:21:38ID:LEmXE2S9
ボタン、リストボックス、パネル、テキストボックスあたりはMMORPGとかでふつーに使うね
0278名前は開発中のものです。04/09/25 14:32:41ID:VXdMSo9v
作りたいゲーム次第だろ。
しっかり作り込んでまともなゲーム作りたいならSwingは使わないだろうし、
ちょっとしたミニゲーム程度ならわざわざUI自作するのはだるい。
適材適所って奴だな。
0279名前は開発中のものです。04/09/25 16:28:11ID:piik0Rlz
http://appelv053.itbdns.com/game.html

こういうゲームを作ってみました
クリックすると始まります

感想をお聞かせください
0280名前は開発中のものです。04/09/25 17:37:50ID:Nt5AgBoK
わ、早稲田を馬鹿にするなーーーーーー。


で?これ本物の写真なの?
0281名前は開発中のものです。04/09/27 00:04:06ID:aLBna6ae
質問です。
Javaアプリでゲーム作ってますが、どうしても逆コンパイルかけられて
ソースを覗かれるのがいやなのです。
何か良い方法はありませんか?
0282名前は開発中のものです。04/09/27 00:26:23ID:6bIETT3B
Javaで書かない。
0283名前は開発中のものです。04/09/27 00:32:04ID:+O7GVTTF
>>281
JETとかTowerJとかGCJとか。
0284名前は開発中のものです。04/09/27 00:32:55ID:+O7GVTTF
ってマルチだったのか。

……ってのまで見てしまった。
0285名前は開発中のものです。04/09/27 00:38:10ID:yFK54/bd
>>281
難読化ツール使え。
それでも、がんばれば覗けるから、
結論は>>282

商用のものはループ改変までしてくれてすごいよ。
別のソースのように逆コンパイルされる。

まぁ、完璧って言葉はこの業界にはないからね。
0286名前は開発中のものです。04/09/27 00:44:34ID:be/ifB4A
オレも「マルチだったのか」って書いた一人なわけだが。
あちこちで、「マルチだったのか」って書き込みがあって、
なんか笑える。
0287名前は開発中のものです。04/09/27 10:15:54ID:xjw1fHGW
俺もマルチだったのかと書いてしまった
Javaとつくスレすべてにかいてある壮絶なマルチなんだもん
0288名前は開発中のものです。04/09/27 12:00:46ID:fcgkGfZt
http://www.vector.co.jp/download/file/win95/game/ff323005.html
0289名前は開発中のものです。04/09/27 12:09:40ID:IizXWLKV
('A`)?
0290名前は開発中のものです。04/09/27 12:16:48ID:fcgkGfZt
宝さがし
0291名前は開発中のものです。04/09/27 14:23:52ID:xjw1fHGW
いきなりダウンロード直ではウイルスと思われても仕方ないな
こういうのはスルーで
0292名前は開発中のものです。04/09/27 20:45:36ID:on1oRaja
ゲームを作るのなら
C→javaかjava→Cのどっちの順番の方がいいですか?
0293名前は開発中のものです。04/09/27 20:52:50ID:dHj2rp56
御前が何で作りたいかで変わるだろうが・・・。
0294名前は開発中のものです。04/09/27 21:20:20ID:xjw1fHGW
言語は手段であって目的ではない
どっちの言語もなれればそれなりに応用は利くものだ

言語自体が未体験ならHSPあたりでプログラムというものについて
勉強したほうがいいかもしれない
029529204/09/27 22:37:39ID:on1oRaja
ありがとうございます!
HSPの勉強から始めたいと思います
0296名前は開発中のものです。04/09/28 12:56:38ID:DMH4xDMY
HSPでRPG作りたいんですが、正直難しいと思います。
でもやりたいんです!!僕はHSPで文字表示ぐらいならできます
今のところ、オープニングまで作ったのですが、どなたか僕に
HSPの基礎からすべてを叩き込んでくれませんか??
お願いします。
0297名前は開発中のものです。04/09/28 13:00:11ID:9DADYBn0
そのテンプレJavaのスレで張られても・・・
0298名前は開発中のものです。04/09/28 13:57:04ID:0NUfckFm
面白いテンプレでもないのに、なぜ張るんだろう。
0299名前は開発中のものです。04/09/29 06:30:32ID:2psQOMW0
HSPはプログラミングの悪習慣が身についてしまう最低最悪の言語だ
OOが強力な言語でやると自然にいい書き方が身に付く
0300名前は開発中のものです。04/09/29 11:14:55ID:OWdyzEvX
昔はみんなBASICやアセンブラだったんだから
まずはプログラムの基礎知識を付けるというのが大事かと

本当にプログラムが出来ない、論理的に考えれない人ってのはいる
何か一つでも言語覚えたらあとは応用の範囲だと思うけどなぁ

さっきからJavaと関係なくageてる時点でお察しくださいか
0301名前は開発中のものです。04/09/29 21:44:52ID:9wU1LsNm
>>300
BASICやアセンブラでコード書いてきた人のコードは、汚いことが多い。
なんで奴らは、あんなに変数名に、2、3文字のものを使うのか。
グローバル変数大好きだしさあ。

>>299
Ruby/SDKとか、ご希望に沿うだろうか?
自分はrubyの書式が肌に合わない & スクリプト言語なのにタイプセーフなので、
いまひとつ好きになれんのだが。
0302名前は開発中のものです。04/09/29 22:40:26ID:+gxptf2V
>301
自分はBASIC,アセンブラでプログラミングを覚えた世代だけど、同意。
BASICの悪い癖を捨てて、まともなコードが書けるようになるまで苦労した。

これからプログラミングを始める人なら、Javaも良いと思う。Javaで学んだ
ことは C++ でも応用できるし、今時のPCなら遅いと言われるJavaでも
2DのアクションRPGぐらいなら、充分遊べるものが作れる。
0303名前は開発中のものです。04/09/29 23:07:12ID:9wU1LsNm
>>302
問題はWinXpにデフォではJavaVM入ってないことだな。
0304名前は開発中のものです。04/09/29 23:21:34ID:6WW72moI
>>303
どうせ開発にはJ2SDK入れるんだからあまり関係ないと思うが。
0305名前は開発中のものです。04/09/29 23:55:14ID:QrpfaUn5
JREをzipで固めたものを渡せば大丈夫ですよ。
インストールしなくても、C:\hoge\java.exe -jar hoge.jar で動きます。
0306名前は開発中のものです。04/09/30 00:51:33ID:SaksPDuX
開発がどうこう言ってるんじゃなく、成果物を無条件で見れない初心者が
けっこう存在するってことが問題なのだが。
0307名前は開発中のものです。04/09/30 00:56:10ID:HsaYO+is
>>302
3Dも出来ますよ。
海外だとJava用3Dエンジンとかあるけど、
動かしてみるとネイティブ版と見た目変わらない。
0308名前は開発中のものです。04/09/30 00:59:07ID:9zy4ATQQ
>>306
一つ上のレスぐらい見ようよ。
JREと起動ランチャー付きの物を自動解凍EXEで配布なら大丈夫ですか?
クリックして自動解凍、中にある起動ランチャーをクリックで動くと思いますが。
0309名前は開発中のものです。04/09/30 01:59:10ID:r2ZmL0cE
>>301
ん〜どうだろ
昔からやってる人はピンキリだけど
基本的に職業プログラマならコードは年々綺麗になっていくと思うよ

俺もさすがにJava8年くらいおいかけてるんで
昔の自分のCのソースとかみれたもんじゃない
0310名前は開発中のものです。04/09/30 04:50:09ID:Jfc28Ggo
jre同梱についてくわしく説明しているサイトを
教えてください。ググッたけどうまいの見つからないのです。
0311名前は開発中のものです。04/09/30 10:37:53ID:r2ZmL0cE
普通にディレクトリ構造あのままで一緒に展開するだけ
特にWindows版以外のjreみればわかるけど、本当にそれだけなんだよ

また、jre配布のドキュメントにもかいてある
何を削っていいかとか何を足していいかとか
まずはそれをよんでからだな
0312名前は開発中のものです。04/09/30 18:26:59ID:r2ZmL0cE
J2SE5きたね
Windows以外の環境でもJava2Dが高速化されてるのがウリなはずだから気になるな
0313名前は開発中のものです。04/10/02 00:43:26ID:KZCjahUY
Java2DのOpenGL実装が動かない・・・うちの環境だけか
0314名前は開発中のものです。04/10/07 19:14:19ID:DkYzRhHU
何このスレ?
凄く参考になる。
0315名前は開発中のものです。04/10/07 20:46:12ID:S5+NIL6W
>>313
うちも動かない。
Swingの動きは速くなったんだけど。
0316名前は開発中のものです。04/10/09 10:39:39ID:G6mygju1
これ良さそうだね。
http://www.lwjgl.org/
0317名前は開発中のものです。04/10/09 21:56:50ID:1XDzJp+5
とりあえずWindowsに関してはゲームに影響する部分は
1.4.2から5.0で大きく変わる部分はないな
もちろんGCの大幅高速化は影響がでかいが

LinuxなどはOpenGLでやっとアクセラレーションできるようになったけどね
0318名前は開発中のものです。04/10/09 22:20:33ID:G6mygju1
Swingが速くなったけど、それはゲームには影響しないかな。
まだ全然試してないんで、よくわからんけど。
0319名前は開発中のものです。04/10/10 00:59:58ID:2gZf+UVq
Swing使ってゲームなら大幅に早くなるだろうね
自分でウィジット作れればRPGとかAVGとからくちんになる
とりあえずレイヤー勉強してみそ
■ このスレッドは過去ログ倉庫に格納されています