質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

解決済

1回答

783閲覧

Visual studio 2022 の Fine Kernel ToolKit System で野球ゲームを作りたい

Hunaken0018

総合スコア1

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

1グッド

0クリップ

投稿2023/01/12 13:58

編集2023/01/12 23:31

急募!!!Visual studio 2022 の Fine Kernel ToolKit System についてです。

自分は今野球ゲームを作ろうとしています。

質問内容

  • ここまではかけたのですが、ボールの反射の仕方がわかりません。真ん中からボールが出て、ボールに向かって飛んできて、model3で跳ね返して、壁に反射することが出来るようにすればどうすればいいですか?

  • model2を得点にしようと思っていて、[0]を+1ポイント [2]を+3ポイント [4]を+2ポイント [1][3]を0ポイントにしたいと考えており、ポイントをとるごとにリスタートされるようにするプログラミングを教えてください!!!


using FK_CLI; using System; //Window settings var window = new fk_AppWindow(); window.Size = new fk_Dimension(1200, 800); window.BGColor = new fk_Color(0.6, 0.7, 0.8); //var var block1 = new fk_Block(1.0, 50.0, 5.0); var block2 = new fk_Block(1.0 ,10.0 ,5.0); var model1 = new fk_Model[3]; var model2 = new fk_Model[5]; var model3 = new fk_Model(); var model4 = new fk_Model[10];//o1o2o3o2o1 //Model1 for (int i = 0; i < 3; i++) { model1[i] = new fk_Model(); model1[i].Shape = block1; model1[i].Material = fk_Material.MatBlack; window.Entry(model1[i]); } //mdel2 for (int i = 0; i < 5; i++) { model2[i] = new fk_Model(); model2[i].Shape = block2; model2[i].GlAngle(0.0, 0.0, Math.PI / 2.0); window.Entry(model2[i]); } //model3 model3.Shape = block2; model3.GlAngle(0.0, 0.0, Math.PI / 2.0); window.Entry(model3); //Model1 x,y,z model1[0].GlTranslate(25.0, 0.0, 0.0); model1[1].GlTranslate(-25.0, 0.0, 0.0); model1[2].GlAngle(0.0, 0.0 , Math.PI / 2.0); model1[2].GlTranslate(0.0 ,-24.5 ,0.0); //Model2 x,y,z model2[0].GlTranslate(0.0 , 24.5 , 0.0 ); model2[0].Material = fk_Material.Blue ; //+1 model2[1].GlTranslate(10.0 , 24.5 , 0.0 ); model2[1].Material = fk_Material.GrassGreen; //0 model2[2].GlTranslate(20.0, 24.5, 0.0); model2[2].Material = fk_Material.Red; //+3 model2[3].GlTranslate(-10.0, 24.5, 0.0); model2[3].Material = fk_Material.White; //0 model2[4].GlTranslate(-20.0, 24.5, 0.0); model2[4].Material = fk_Material.Pink; //+2 //Model3 x,y,z model3.GlTranslate(0.0 , -20.0 , 0.0); model3.Material = fk_Material.Brown; //Camera window.CameraPos = new fk_Vector(0.0, 0.0, -100.0); window.CameraFocus = new fk_Vector(0.0, 0.0, 0.0); //Open the Window window.Open(); //ループ処理 double speed = 0.0; //ボール while (window.Update() == true) { if (window.GetKeyStatus(fk_Key.RIGHT) == true) { model3.LoAngle(0.0, 0.0, Math.PI / 100.0); } else if (window.GetKeyStatus(fk_Key.LEFT) == true) { model3.LoAngle(0.0, 0.0, -Math.PI / 100.0); } model3.LoTranslate(0.0, 0.0, -speed); }
退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Pseudocode

1if (ball.touches(model3)) ball.angle = -ball.angle 2 3model2.value = (1, 0, 3, 0, 2) 4if (ball.touches(model2)) restart();

投稿2023/01/12 14:16

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hunaken0018

2023/01/12 14:23

ボールを追加して棒のほうに向かわせるようにするにはどうすればいいですか?
退会済みユーザー

退会済みユーザー

2023/01/12 14:25

すみません。そこはわかりません... 多分、ボールのインスタンスをnew関数などで作って、それと同時に新しいボールの座標、棒の座標を取得し、ボールの方向をそれらの座標をもとに定める方法があると思います。
Hunaken0018

2023/01/12 14:29

ありがとうございます!
退会済みユーザー

退会済みユーザー

2023/01/12 14:31

どういたしまして。頑張ってください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問