私はUnityでCellSizeのために何かを試しています。 これはGridLayoutGroupコンポーネント用です。私は、電卓を使っていたら完全にうまく動作することを発見しました:Screen.Width/1280、Screen.Height/720。 私は基本解像度として720pを使用しているので、そこにはすべてがうまく見えます。これをベースとして使用します。 100x100は720pのセルサイズに適しています。浮動小数点値は1または0にデフォルト設定されています
たとえば、解像度は1280:1024です。 出てくるはずです(100,142)ただし、常に出てきます(1.0、1.0)。 解像度が小さい場合(320x200など)(0.0、0.0)です。
SlotPanel.GetComponent<GridLayoutGroup>().cellSize = new Vector2((Cam.pixelWidth/1280) * 100, (Cam.pixelHeight/720) * 100);
カムは、プレイヤーが使用しているカメラです:
は、ここに私のコードです。 私がいた試した別のコード:
SlotPanel.GetComponenet<GridLayoutGroup>().cellSize = new Vector2((Screen.Width/1280) * 100, (Screen.Height/720) * 100);
どちらの結果を同じ問題に。この時点で、私はどれほど迷惑をかけるような言葉を失っています。私はなぜ数学が正しいのか分かりませんが、それは正しく機能しません。
代わりに1280.0、100.0を試してください – doctorlove
@doctorlove実際に '1280f'(または' 1280.0f')と '720f'(' 720.0f')は 'Vector2'の単精度を必要とするので以下の回答)。 –