Notifications
bg
t
taka1890
Other
0
Likes
1
Follower
1
Connection
All
Articles0
Games0
Showcases0
Column0
Jobs0
こんばんは!
いつもお世話になっております。

製作してきたゲームが形になったので投稿させていただきます!

初めてのUnity挑戦で分からないことばかりでしたが、
お学びグループや、わくわくキャンプなど、困った時に皆さんに助けて頂いたおかげでここまで出来ました!
このゲームを携帯で遊べるようにすることが今後の目標です!

t
taka1890
25 days ago
tamtamおーすごい! イカザベスというネーミングやキャラクターの独特のスタイルがイカしている!
ありがとうございます! 実はこのイカしたキャラクターは義姉が以前に書いたものを、 今回許可を得て借りたのです! 私には絵心がなかったので、、、笑
tamtam
25 days ago
おーすごい! イカザベスというネーミングやキャラクターの独特のスタイルがイカしている!
こんばんは
皆さんのアドバイスを得ながら、コツコツ作ってきたゲームが
ようやく形になってきました。
キャラクターの左右移動についてですが、今はPCで動作確認を行なっているため、矢印キーを使ってキャラクターを動かしています。
最終的にはスマホで動かしたいと思っています。
画面の右側をタッチしている間は右移動
左側をタッチしている間は左移動
のような感じです。

何か参考になるサイトや、考え方があれば教えていただきたいです。

抽象的な質問になってしまいますが、よろしくお願いします。

t
taka1890
3 months ago
tamtam考え方的には、スマホタッチした時に画面座標を取得して、左半分なら押し続けている=phaseがBeganしてからEndedになるまでは左移動、右半分なら右移動・・・という感じでしょうか。 マニュアル的にはInput.touchクラスを見ると良いでしょう https://docs.unity3d.com/ja/current/ScriptReference/Touch.html Input.GetTouchという似たようなクラスを使った事例だとこちら https://qiita.com/tempura/items/4a5482ff6247ec8873df 頑張ってみてください!
@tamtamさん 途中送信失礼しました。回答ありがとうございます。 勉強しながらいろいろと試してみたいと思います。また質問することもあると思いますが、よろしくお願いします。 進展があれば報告させていただきます。
t
taka1890
3 months ago
tamtam考え方的には、スマホタッチした時に画面座標を取得して、左半分なら押し続けている=phaseがBeganしてからEndedになるまでは左移動、右半分なら右移動・・・という感じでしょうか。 マニュアル的にはInput.touchクラスを見ると良いでしょう https://docs.unity3d.com/ja/current/ScriptReference/Touch.html Input.GetTouchという似たようなクラスを使った事例だとこちら https://qiita.com/tempura/items/4a5482ff6247ec8873df 頑張ってみてください!
@tamtamさん
tamtam
3 months ago
考え方的には、スマホタッチした時に画面座標を取得して、左半分なら押し続けている=phaseがBeganしてからEndedになるまでは左移動、右半分なら右移動・・・という感じでしょうか。 マニュアル的にはInput.touchクラスを見ると良いでしょう https://docs.unity3d.com/ja/current/ScriptReference/Touch.html Input.GetTouchという似たようなクラスを使った事例だとこちら https://qiita.com/tempura/items/4a5482ff6247ec8873df 頑張ってみてください!
こんばんは!
質問いいでしょうか?

今、2Dのゲームの作成に挑戦中です。
プレイヤーの左右移動に合わせて画像を反転させたいと思い、
添付画像のようなスクリプトを書きました。
画像の反転はできたのですが、プレイヤーのスケールも大きくなってしまいます。プレイヤーのサイズを維持したまま反転させるにはどうしたらいいでしょうか?
プレイヤーとして使用している画像は、元のサイズが大きかったため、小さくして使用しています。
反転させるときに、xとyに1が代入されるのでサイズが大きくなってしまうのでしょうか?
初歩的な質問かもしれませんが、アドバイス頂けると嬉しいです。
よろしくお願いします。

t
taka1890
4 months ago
zakurotakaさん、
zakuroさん 度々の回答ありがとうございます。 zakuroさんのおっしゃる通り、向きが固定になってしまったのは、keyにlocalScaleの値を入れていたからでした。 new Vector3(-key*size,size,1)の方法で、向きも大きさも正常に動かすことができました! 「ひとつの変数に持たせる意味は一つにする」とても重要な考え方ですね!今回はkey変数のみで向きも大きさも変えようとしていたので、よく分からなくなっていました、、、 とても勉強になりました! 丁寧に解説してくださり、ありがとうございました!
z
zakuro
4 months ago
zakurotakaさん、
いきなりの誤送信失礼しました。 takaさん、 keyの値は-1か1のままでいいかと思います。 keyと別にsizeの変数を用意し、反転時に new Vector3(-key*size, size, 1) を代入するのはどうでしょうか。 ひとつの変数に一つの意味のみを持たせるようにすることで、他の場所で共用する時など後々ややこしくなりませんので。 その上でsize(=スケール値)とkey(=向き)を掛けることで、「大きさの指定」と「向きの指定」を共存させることができます。 ソースを見ていないので推測ですが、 同じ向きで固定してしまったのはkeyにlocalScaleを入れて、"key=大きさ"となってしまったのではないでしょうか。 参考になれば幸いです。
z
zakuro
4 months ago
takaさん、
t
taka1890
4 months ago
zakuroお気づきの通り1が代入されているためサイズが変わっていると思われます。 ただ、この場合は反転でなくてもキー入力をした瞬間にサイズが変わってしまいます。 サイズの変更時に、インスペクタで設定しているlocalScaleと同じ値を入れると上手くいくと思います。 walkForceと同じようにそこに新しく変数(フィールド)を用意し、Start()内でScale値を取得、サイズ変更の時に参照すれば上手く実現できます。 アイテムを取って巨大化するという場合も、この変数の値を変えることで対応できますよ。
zakuroさん、回答ありがとうございます。 今回、keyに割り当てていた値を1から設定している値(今回は0.23)に変更したところ、サイズを維持したまま、反転ができました。  提案していただいた、変数を用意してScale値を取得する方法も試してみたいのですが、スクリプトがうまく書けずにいます。 localScaleの取得まではできたのですが、取得した値をどう参照させればいいか分かりません。Vector3のxにlocalScaleの値を取得した変数を代入したところ、一回反転すると、ずっとそのままになってしまいました。 度々の質問、申し訳ありません。 取得した値を、どのように参照させるのか教えていただきたいです。
tamtamさん、Uchidaさん、ゆに丸1号さん、丁寧な回答ありがとうございます。
Uchidaさんの言われたように、最初にコンポーネントを参照するスクリプトに変更したところ、エラーも無くなりました。C言語について勉強を始めたばかりで、まだ理解出来ない部分もあるので、丁寧な説明でとても助かりました。
これからも色々勉強させて頂きます。

初歩的なことかもしれませんが、質問させてください。
Unityチュートリアルの”Roll-a-Ball”のPlayerControllerScriptの中で添付画像のようにrigidbody部にエラー?が出てきました。ゲーム実行時の動作は問題ありません。
なぜこの部分に赤線が出てきたのか、教えていただけないでしょうか。
よろしくお願いします。

Yoshihiko Uchida
4 months ago
ゆに丸1号超自信ないですが、Unityが以前使っていたキーワードだから怒られてるんだと思います。 Unityは4までは GetComponent<Rigidbody> など Unity 側で最初から用意しているコンポーネントに対するGetComponentは rigidbody などの短縮ワードとして記載できていました。他には GetComponent<Renderer> に対する renderer や、GetComponent<Camera> に対する camera などです。その名残で Transform だけは今でも transform とかけます。 一方それらのキーワードは内部的にキャッシュしているか紛らわしい、つまり Uchida さんや tamtam さんが書いているように参照を保存しておいて使いまわすのを Unity が自動でやっているかわからないという問題があったためキーワードは廃止した、と元Unityの伊藤さんにむかーしTwitterで聞きました。 そういうわけで、以前は Unity 側で使っていたワードなので 5 以降はキーワードと同名の変数を定義してしまうとエラーが出る仕様になったという感じみたいですねー。
あぁ!!、だからUnity4で作られているチュートリアルはrigidbodyっていきなり書けるんですね!! すごく納得しました、ありがとうございます。
tamtam
4 months ago
ゆに丸1号超自信ないですが、Unityが以前使っていたキーワードだから怒られてるんだと思います。 Unityは4までは GetComponent<Rigidbody> など Unity 側で最初から用意しているコンポーネントに対するGetComponentは rigidbody などの短縮ワードとして記載できていました。他には GetComponent<Renderer> に対する renderer や、GetComponent<Camera> に対する camera などです。その名残で Transform だけは今でも transform とかけます。 一方それらのキーワードは内部的にキャッシュしているか紛らわしい、つまり Uchida さんや tamtam さんが書いているように参照を保存しておいて使いまわすのを Unity が自動でやっているかわからないという問題があったためキーワードは廃止した、と元Unityの伊藤さんにむかーしTwitterで聞きました。 そういうわけで、以前は Unity 側で使っていたワードなので 5 以降はキーワードと同名の変数を定義してしまうとエラーが出る仕様になったという感じみたいですねー。
へー、知らなかった! 勉強になる!
ゆに丸1号
4 months ago
超自信ないですが、Unityが以前使っていたキーワードだから怒られてるんだと思います。 Unityは4までは GetComponent<Rigidbody> など Unity 側で最初から用意しているコンポーネントに対するGetComponentは rigidbody などの短縮ワードとして記載できていました。他には GetComponent<Renderer> に対する renderer や、GetComponent<Camera> に対する camera などです。その名残で Transform だけは今でも transform とかけます。 一方それらのキーワードは内部的にキャッシュしているか紛らわしい、つまり Uchida さんや tamtam さんが書いているように参照を保存しておいて使いまわすのを Unity が自動でやっているかわからないという問題があったためキーワードは廃止した、と元Unityの伊藤さんにむかーしTwitterで聞きました。 そういうわけで、以前は Unity 側で使っていたワードなので 5 以降はキーワードと同名の変数を定義してしまうとエラーが出る仕様になったという感じみたいですねー。
tamtam
4 months ago
このメッセージは私もわかりません・・・。Visual Studioだとこうなりますね。 ちなみにこの書き方でも動きますが、 @Yoshihiko Uchida さんが言う通り、最初にコンポーネント参照するやり方のほうがいいと思います。
はじめまして。
ゲーム開発に挑戦して見たいと思い、Unityとプログラミングの勉強を始めました。色々勉強させて頂きます。
よろしくお願いします。

tamtam
4 months ago
こんにちは! Unityを始めたとのことで、素晴らしいです! 少しずつで大丈夫なので、一緒に勉強していきましょう! わからないことがあれば、このグループに質問などしてみてくださいね。
About Me
No description
See more
Skills
No skills added yet
Certifications (0)
Import
See all
taka1890's liked project (1)
Following (2)
Follower (1)
Following Companies (0)
Not following anyone yet