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

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

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

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

Unity

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

Q&A

解決済

1回答

1402閲覧

カメラの位置向きを変更せずオブジェクトを正対させたいです

hogepiyofoo

総合スコア1

Unity3D

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

Unity

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

0グッド

0クリップ

投稿2020/10/10 03:27

前提・実現したいこと

下記構成のオブジェクトをカメラのpositionやrotationを固定のままで正面に持って行きたいのですが、
なにか良い方法はないでしょうか。

[objの構成]
parent
∟ obj1
∟ obj2
∟ obj3
∟ obj4
L obj5

[やりたいこと]
カメラの捉えているオブジェクト群を…

     カメラ(位置向き固定)      / \   obj1↓ obj2↓ obj3↓ obj4↓ obj5↓(矢印はオブジェクトの向き)

カメラの位置や向きを変更せずに正体させたい!
[期待値]

     カメラ(位置向き固定)      / \ obj5↑ obj4↑ obj3↑   obj2↑ obj1↑

発生している問題・エラーメッセージ

parentをtransform.Rotationで180度回転させれば良いかと考えたのですが、
下記だと意図した配置になりませんでした。

parent.transform.rotation = new Quaternion(0, 180, 0, 0);

parent以下の各objが180度回転するので下記のような結果となります。

     カメラ(位置向き固定)      / \   obj1↑ obj2↑ obj3↑ obj4↑ obj5↑

該当のソースコード

GameObject parent = GameObject.Find("parent"); parent.transform.rotation = new Quaternion(0, 180, 0, 0);

試したこと

座標を軸にして親を回転させてみましたが駄目でした。

parent.transform.RotateAround(new Vector3 (parent.transform.x, transform.y, transform.z), transform.up, 180);

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

Unity 2020.1.4f1
カメラはどうしても動かせないんです…

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

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

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

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

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

guest

回答1

0

ベストアンサー

個々の子オブジェクトの位置関係を維持したまま向きを変えたいとなるとparentの操作だけではおそらく無理で、obj1~5をそれぞれカメラの方に向けてやらないといけないんじゃないでしょうかね...?

C#

1GameObject parent = GameObject.Find("parent"); 2Transform cameraTransform = Camera.main.transform; 3foreach (Transform child in parent.transform) 4{ 5 child.LookAt(cameraTransform); 6}

すみません、ご質問の文面を読み違えていたようですので上記の案は取り消します。のちほど再検討してみますが、ご質問者さんのおっしゃる「parentのtransformを操作する」というのが適切なように思われます。ですがそれだとうまくいかなかった...とおっしゃるのがちょっと謎ですね。
parentやobj1~5には他に何かスクリプトをアタッチしているでしょうか?
あるいはアタッチ先がこれら以外であっても、これらオブジェクトに作用を及ぼすスクリプトが存在しているでしょうか?

投稿2020/10/10 05:28

編集2020/10/10 07:55
Bongo

総合スコア10807

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

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

hogepiyofoo

2020/10/10 09:23 編集

ご回答誠に有難うございます! ご記載頂いた通り、parentの操作が正しそうです。 (似たような構成で新規objを作ってみると動きました) よって、ご推察通り他のスクリプト群が影響を及ぼしているものと思いますが、 大変恐縮ながらソースを出せない案件でして。 出せる情報が少ない中お時間いただくのも申し訳ないかつ、 parentを操作すること自体の正しさが再認識出来たので今回はクローズしたいと思いますmm ご回答誠にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問