問題タブ [pacman]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Pacman in Java に関する質問
大学の課題のために、ネットワーク対応バージョンの pacman を作成する必要があります。最初に pacman のローカル コピーを作成してから、この機能をネットワーク プレイ用に拡張することで、この問題に対処するのが最善だと考えました。
私は Java GUI 開発に比較的慣れておらず、Java 内でそのような機能を利用していると言わざるを得ません。
Java 内でのゲーム開発と pacman ゲームの例に関して、上記のリンクをたどり始めました。
私は迷路を int 配列として表現することにしました。異なる値は異なる意味を持ちます。ただし、メイン ゲーム ループ内のペイント メソッドが実行されると、このメソッドで迷路全体を再描画しています。
ただし、これは1fps未満を提供しています。上記のリンクの例では、paint メソッドが呼び出されるたびに同様の再描画方法を使用していることに気付きましたが、表示できない画像でこれを行うと思います (ダブルバッファリングのようなものです [最初のリンクのように BufferStrategy を使用しました説明します]) 迷路を再描画するより良い方法は何ですか?
これに関するポインタ/アドバイスは役に立ちます。
お時間をいただきありがとうございます。
http://pastebin.com/m25052d5a - メイン ゲーム クラス用。
編集:どのコードが実行に非常に時間がかかっているかを確認しようとした後、非常に奇妙なことが起こっていることに気付きました.
paintClear(Graphics g) メソッドに追加しました
これにより、すべてがスムーズに実行されました-しかし、これらの行を削除すると、すべてが遅くなりましたか? 何が原因でしょうか?
java - ダブルバッファリングを使用してJavaでパックマンの口の開閉アニメーションを表示するには?
ゲームプログラミングを独学するために作っている使い捨てのパックマンゲームで、パックマンキャラクターの有名な口の開閉アニメーションを表示しようとしています。
私がやっていることは、開いた口の画像を描画してから、まったく同じ (x/y) の位置に閉じた口の画像を再描画することです。しかし、これは機能せず、閉じた口のアニメーションが常に表示されます。
これをループに入れると、システムがフリーズするだけで、開いた口の画像がちらつきますが、画像が置き換えられることはありません。
テストを行い、両方のイメージが正しく期待どおりにロードされていることを確認しました。
これが私のstartAnim()
関数です。アプレットをダブルクリックすると呼び出されます。
java - Ms. Pac-Man の実装での Java インターフェイスの過剰使用の可能性
私は過去 6 年間 Java プログラマーをしており、今年の初めからゲーム プログラミングに興味を持つようになりました。それで、人気のあるゲームから始めるのは良い考えだと思い、JavaでMs. Pac-Manというゲームを実装しました。私の実装は元のゲームとほぼ 90% 似ていると言えます。これは基本的な 2D ゲームのコーディングを学ぶための個人的なプロジェクトにすぎないため、できるだけ多くのデザイン パターンとベスト プラクティスを使用するように努めました。
コーディングを終えた今、19 個のインターフェースと 17 個のクラスしかないことに気付きました! そのため、インターフェイスを使いすぎているのではないかと考え始めました。
私が使用するいくつかのクラス/インターフェースの例を次に示します。
クラス- FullGame (FullGameInterface と FullGameObservable を実装)
クラス- View1 (FullGameObserver を実装)
インターフェイス- FullGameInterface (基本的な機能メソッド: 再開、一時停止、再生など)
インターフェース- FullGameObservable (更新通知用にビューを登録できます)
インターフェース- FullGameObserver (通知を受け取るために、ゲームの 2 つの異なるビューによって実装されます)
インターフェイスを使いすぎていませんか?
あなたの意見は何ですか?
path-finding - パックマンのパスファインディングアルゴリズム
ゲームパックマンを実装したかった。AIについては、多くのフォーラムで見たA*アルゴリズムの使用を考えていました。ただし、いくつかの単純なパスファインディング(特定の障害物を挟んでポイントaからポイントbに移動)の幅優先探索を実装したところ、常に最適なパスが得られることがわかりました。単純なパスファインディングを使用するpacmanのようなゲームでは、グラフにコストの概念がないためかもしれません。それで、パックマンのパスファインディングにA *の代わりにBFSを使用しても大丈夫ですか?
javascript - GoogleホームページのPacMan、どのように実装されていますか?
Google.comのパックマンゲームはどのように実装されたのでしょうか。
Javascript?
c++ - パックマンゲームを作りたいと思ったら?
私はすぐにこれをコミュニティウィキのものとして配置します。私はまだプログラミングの助けを求めたり、プログラミングについて具体的な質問をしたりしたくはありませんが、そのようなゲームを作るために必要なプロセスとリソースを求めています。
簡単に言うと、大学の友達と私は、プログラミングのスキルをさらに伸ばすために、本当に大きな挑戦をすることにしました。6か月後には、パックマンのゲームを披露したいと思います。パックマンはゴーストのようにAIで制御され、一連の試行が勝った後、パックマンの寿命が最も長くなります。
これは、これまでに行ったこととは異なります。ここでの目標は、私にとって、完璧なゲームを作成することではなく、それを試して完成させるために、その過程でたくさんのことを学ぶことです。時間内に終わらせなくても、それは良い可能性ですが、少なくともこれを試してみたいと思います。
だから私の質問はこれです:私はどのように自分自身を準備し始めるべきですか?私はすでにベクトル数学、行列、そのすべての楽しいものを始めました。私が望むプラットフォームはDirectX9.0cです。それはお勧めですか?これはこのプロジェクトだけの好みではありませんが、グラフィックス開発に何らかの未来を持ちたいので、未来に安全なプラットフォームを選びたいと思います。
ゲーム開発全般について、何を考慮すればよいですか?私はこれまで実際のゲームをしたことがないので、中規模プロジェクトの開発についてアドバイスをいただければ幸いです(これが中規模プロジェクトの場合)。
私の主な関心事は、落とし穴とデモチベーターです。
質問があいまいな場合は申し訳ありません。ここに属していない場合は削除します。それ以外の場合は、大規模なプロジェクトの作成に関するすべてのアドバイスをいただければ幸いです。
actionscript - パックマン ゲーム: プログラミング言語と ActionScript の処理
私が作りたいパックマンゲームに合わせて、これにタイトルを付けます。
たとえば、DirectX よりもオーバーヘッドが少ないプログラミング言語またはプラットフォームから始めるように勧められました。特に、実装ではなくゲームのデザインに集中できるため、この段階ではより重要だと思います。
シンプルなゲームを作れる言語として、Processing にはどのようなメリットがあるのだろうと考えていました。画像の作成はほとんど自明のように簡単に思えるので、アルゴリズムをいじる遊びの余地がたくさんあります。ただし、その言語がゲームや、リソースを大量に消費するコードに適しているかどうかを知りたいと思っていましたか?
一見すると、これは簡単に画像を生成しようとする言語である Actionscript の単純化されたバージョンのように見えます。ActionScript は、私が既にプログラムしたものですが、好きではありません。どういうわけか、その言語は私にとってそれほど魅力的ではありません。処理もそれほど多くはありませんが、これの画像処理機能は、構文に対する私の否定的な見方を上回っていると感じています。
だから私の質問は、Processing に関する人々の経験はどうですか? ActionScript と比較することは本当に正当でしょうか? ゲームを作成するのに適していますか?画像を作成するのは快適で簡単だと思いますが、特にアルゴリズムを導入すると、プログラム全体の速度が低下するように感じます。
さらに、単純なパックマン ゲームを作成するのに適している場合、代わりに ActionScript を試してみるべきでしょうか?
artificial-intelligence - 2人のパクマンのためのパスファインディングアルゴリズム
Pacmanを実装しようとしています。これは正常に機能しますが、これまでのところ、ゴーストはパスファインディングを使用していません。代わりに、各パスジャンクションでどのパスを取るかをランダムに決定します。したがって、パックマンがゲームに勝つことはそれほど難しいことではないことを想像できます;)
だから私はパックマンのパスファインディングアルゴリズムについて少し読んだので、ここで私は本当に良い答えを見つけました:パックマンのパスファインディングアルゴリズム
答えはhttp://home.comcast.net/~jpittman2/pacman/pacmandossier.html#Chapter%204を参照しています
これはすべて問題ありませんが、パックマンの私の実装では、2人の異なるプレーヤーによってプレイされる2つのパクマンがあります。ですから、幽霊が常に1人のプレイヤーを追いかけるとは限らないように、パスファインディングアルゴリズムをどのように適応させるのか疑問に思います。
ゴーストが両方のプレイヤーにほぼ等しく公平になるようにアルゴリズムを変更する方法について何か考えはありますか?
artificial-intelligence - パックマン:目はどのようにしてモンスターの穴に戻るのですか?
パックマンで幽霊のAIについて多くの言及を見つけましたが、パックマンが幽霊を食べた後、目が中央の幽霊の穴に戻る方法については言及していませんでした。
私の実装では、単純ですがひどいソリューションを実装しました。どちらの方向に進むべきか、隅々までハードコーディングしました。
より良い/または最良の解決策はありますか?おそらく、さまざまなレベルの設計で機能する一般的なものですか?