#やりたいこと
unityでのUIで文字列の長さによって幅や高さを変えるテキストボックスをつくりました。マウスオーバーでインスタンスを生成し、アイコンの情報をポップアップで示すようなつくりなのですが、アイコンの位置にあわせてUIを表示するため、画面の幅を超えて、カメラの外にテキストがはみ出てしまうことがあります。そこで、テキストボックスのサイズとカメラの端の座標から、テキストボックスをカメラ内に収めるようなスクリプトを作成したいと思っています。
#やってみたこと
うまくいかない点は、テキストの親オブジェクトに設定している背景イメージの左端座標と右端座標を取得するところで、左上のWorld座標はピボットを左上に設定しているため以下のようなコードで簡単に得られるのですが、
RectTransform background;
topLeft = Camera.main.ScreenToWorldPoint(background.position);
その右下端のWorld座標を得ようと
bottomRight = topLeft + Camera.main.ScreenToWorldPoint(background.sizeDelta);
と書いてみたのですが、どうやら得られないようです。(負の値が得られたため)
#知りたいこと
sizeDeltaなどから得られた幅をWorld座標での幅に変換することはできるのでしょうか?
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。