問題タブ [breakout]
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 - Java - ブレイクアウト物理学?
ブレイクアウト ゲームを作成しています。以前にここで質問しましたが、解決策が提案されませんでした。Y
パドルとの衝突時にボールの速度を反転させる単純な物理学があります。しかし、たとえば、ボールがパドルの左側と右側に当たったときなど、より高度な物理システムを実装する必要がありますが、衝突後にボールをどこに向けるかをどのように計算すればよいでしょうか? ブレイクアウトの標準は、衝突がパドルの左側にある場合はボールを左に向け、衝突が右にある場合は右に向けることです。
ボールを打つ位置を計算するにはどうすればよいですか? X
パドル (幅、高さ、位置)、ボール (半径、高さ、幅、X
速度Y
、X
位置、Y
位置など)のすべての側面など、使用できる変数がたくさんあります。マウス リスナーを使用しX
て、古い位置から新しいマウスの位置を引いて、パドルの動きを取得したX
ので、パドルの移動速度と方向を確認できます。
基本的な物理学に精通していて、衝突後にボールを送るための軌道、パス、速度、または方向を計算するのを手伝ってくれる人はここにいますか?!
前もって感謝します。
java - java, android - ブレイクアウト ゲーム - ボール パドル バウンス
Android用の簡単なブレイクアウトゲームを作りましたが、ボールがバー(パドル)に到達したときにいくつかの問題があります。ボール、バーはビットマップです。x、y はボールの位置、bx と by はバー (パドル) の位置です。speedX と speedY はボールの速度です。これはあまり良い解決策ではありません。コードはどこで変更できますか?
c# - spriteBatch.Begin が NullReferenceException を取得しています
私は XNA に比較的慣れておらず、Jamie McMahon のガイドに従って C# で基本的なブレイクアウト ゲームを作成しています ( http://xnagpa.net/xna4beginner.php )。最近、Microsoft の Game State Management コード サンプル ( http://xbox.create.msdn.com/en-US/education/catalog/sample/game_state_management )を偶然見つけて、ブレークアウト コードを移動しようとしていたので、コードサンプルが提供するメニューを利用できます。ただし、ゲームを起動しようとすると、次のコードの spriteBatch.Begin で NullReferenceException が発生します。
では、ここでどこが間違っているのでしょうか? このエラーについて少し調査しましたが、解決策はどれも役に立ちませんでした。私はこの種のことに非常に慣れていないので、コードの他の冗長性/間違いを指摘してください。ありがとう!
編集: Microsoft の GameStateManagement コード サンプルから元の GameplayScreen.cs を追加し、それとマージしようとしているブレイクアウト ゲーム コードを追加します。簡単にできる方法を知っている方がいましたら、アドバイスをいただければ幸いです。
ブレイクアウト ゲーム コード:
Microsoft コード サンプルの元の GameplayScreen.cs:
c# - 単一の画像ボックス内のブレイクアウトの複数のオブジェクト
C# を使用して Breakout Game をシミュレートするプログラムを作成しています。
ゲーム用のレンガ、パドル、ボールを作成する方法についてさまざまなテクニックを学んできましたが、Visual Studio でそれらすべてを 1 つの画像ボックスに追加する方法がわかりません。
私が直面している主な問題は、たとえばボールを移動するために、次のコード セクションを使用して「キャンバス」を
paper.Clear(Color.White);
クリアする必要があることです。 (たとえば、ボールについて)画像ボックス内で夜明けになり、これが私の問題の始まりです。
Breakout ゲーム (私が練習したもの) 内の各コンポーネントは、すべてpaper.Clear(Color.White);
コードを使用します。これは、たとえば、パドルを動かしたり、レンガを表示したり、ボールをバウンドさせたりしたい場合、プログラムは一度に 1 つの機能を実行することを決定するだけであることを意味します。資産の 1 つから削除するpaper.Clear(Color.White);
と、プログラムは思いどおりに機能しなくなります。
これらすべてのコンポーネントを完全に見逃すことなく、ゲーム内で同時に実行する方法はありますか?
c# - 配列コンポーネントからボールを跳ね返そうとしていますか? (より良い言葉が思い浮かびません) C#
必要に応じてパドルと壁から跳ね返るボールがあり、draw.Rectangle ツールを使用して単一のレンガを追加し、ボールをこれで跳ね返らせてから色を変更しましたが、それ以上の衝突を止めるために非表示にすることはできませんでした。 . 私はレンガに配列を使用しています。これは、多くのレンガを使用でき、ヒット後にそれらを true または false に変えることができるためです。
私の問題は、ボールを上記のアレイブリックと衝突させようとしていることですが、できるだけ多くのグーグルでもそれを理解することはできません。これが私のコードのスニペットです。衝突に対して「すべき」と思います
私の理解では、このコードは、ボールの座標がレンガの場所のパラメータにあるかどうかを確認するという値を示しています。その場合は、方向を変えてください。現在のコードでは、ゲームを開始するまで正常に動作します (挿入ボタンをクリックすると、バウンス ボタンが機能します)
ここに私の完全なコードがあります
}