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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

1回答

3907閲覧

クレーンゲームのアームの動作を実現したいです

退会済みユーザー

退会済みユーザー

総合スコア0

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

1グッド

0クリップ

投稿2020/05/12 22:00

前提・実現したいこと

unityでクレーンゲームを制作している初心者です。
UIで作成したbutton(EventTrigger)を押しつづけることでアームをx、y、z軸上を移動できる仕組みを作ったのですが、その後の
<アームを開閉→アームの降下→物体を掴む→アームの上昇→景品獲得口まで移動>
の動作を実現するための方法がわかりません。

アームの開閉自体をアニメーションで作り、降下するためにもう一度ボタンを押し、決められた数値まで降下する・・・など、多分こうするのかな?といったことは思いつくのですが、知識不足のため検索のかけ方も不明な点が多い状況です。

過去に同様の質問がありましたのでそちらも確認し、同様にスクリプトをアタッチメントしてみましたが当然同様の動きにはならず…
ヒントなどご教授いただければ幸いです。

該当のソースコード

ボタン操作のコードです

using System.Collections; using System.Collections.Generic; using UnityEngine; //using UnityEngine.UI; public class LeftMove : MonoBehaviour { float sx = 0; //x方向移動量を入れる変数 float sy = 0; //y方向移動量を入れる変数 bool left = false; //Event Trigger用 bool型変数。 Lボタンが押されているかどうかを検知 void Start() { } //Lボタン押した public void Losita() { left = true; } //Lボタン離した public void Lhanasita() { left = false; } void Update() { //左移動 if (left == true) { this.sx =-4.0f; transform.Translate(this.sx, 0, 0); } } }

試したこと

似た質問のスクリプトを真似してみましたが実現不可でした。

補足情報(FW/ツールのバージョンなど)

退会済みユーザー👍を押しています

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

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

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

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

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

sakura_hana

2020/05/13 00:30

似た質問の方でも書きましたが、丸投げ質問です。 https://teratail.com/help/question-tips https://teratail.com/help/avoid-asking あなたがどう調べて何が不明なのかこちらには分かりませんし、ここは「一から教えてあげる」というサイトではありません。 「unity クレーンゲーム 作り方」で調べれば概要は分かりそうな気がしますし、それで分からないならチュートリアル等で基礎を固めるべきです。プログラムの書き方よりも「プログラムの考え方」を先に学ぶべきかもしれません(例えば「フローチャート」は今は現場ではあまり使ってませんが初心者の学習にはよいかと思いますので試してみてください)。
guest

回答1

0

アームがどう作られているかによるのでいろんな方法が考えられると思います。
逆をいえばアームをどう作るかを決めない限りはみなさんも答えようがないと思います。

スクリプト制御で左右のクローを回転させることで空き閉めをコントロールする
アニメーション制御で左右のクローの空き閉めのアニメーションを作ってそれを再生する
HingeJointを使ってジョイントの動かし方を制御してクレーンのような動きを制御する方法。
etc...

以下参考例

  1. unityでクレーンゲームを作っているのですが・・・(Hinge Joint使用)

https://teratail.com/questions/157545

  1. 2Dゲームですが、オブジェクトを回転させてアームを再現する例

https://youtu.be/XJNHdQmZDD0?t=887

  1. Claw_Machine_Simulator(海外の人が公開しているゲーム、Gitで公開されているので中身を見てみると参考になるかもしれません)

https://www.youtube.com/watch?v=I2k2pxo6CPU
https://github.com/czazuaga/Claw_Machine_Simulator

投稿2020/05/13 01:08

hogefugapiyo

総合スコア3302

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問