using UnityEngine;
using System.Collections ;
[ ExecuteInEditMode]
public class RatioFix : MonoBehaviour
{
Resolution[ ] resolutions;
void Awake( )
{
//StartCoroutine("Do");
Do( ) ;
}
void Do( )
{
//yield return new WaitForFixedUpdate();
resolutions = Screen.resolutions ;
float targetaspect = 16.0f / 9.0f ;
float windowaspect = ( float ) resolutions[ resolutions.Length - 1 ] .width / ( float ) resolutions[ resolutions.Length - 1 ] .height ;
//float windowaspect = Screen.width / Screen.height;
float scaleheight = windowaspect / targetaspect;
Camera[ ] camArray = FindObjectsOfType( typeof( Camera) ) as Camera[ ] ;
foreach ( Camera camera in camArray)
{
if ( camera.gameObject .layer != 10 && camera.gameObject .layer != 13 )
{
if ( scaleheight < 1.0f )
{
Rect rect = camera.rect ;
rect.width = 1.0f ;
rect.height = scaleheight;
rect.x = 0 ;
rect.y = ( 1.0f - scaleheight) / 2.0f ;
camera.rect = rect;
}
else
{
float scalewidth = 1.0f / scaleheight;
Rect rect = camera.rect ;
rect.width = scalewidth;
rect.height = 1.0f ;
rect.x = ( 1.0f - scalewidth) / 2.0f ;
rect.y = 0 ;
camera.rect = rect;
}
}
}
}
}
dXNpbmcgVW5pdHlFbmdpbmU7CnVzaW5nIFN5c3RlbS5Db2xsZWN0aW9uczsKCltFeGVjdXRlSW5FZGl0TW9kZV0KcHVibGljIGNsYXNzIFJhdGlvRml4IDogTW9ub0JlaGF2aW91cgp7CgogICAgUmVzb2x1dGlvbltdIHJlc29sdXRpb25zOwoKICAgIHZvaWQgQXdha2UoKQogICAgewogICAgICAgIC8vU3RhcnRDb3JvdXRpbmUoIkRvIik7CiAgICAgICAgRG8oKTsKICAgIH0KCiAgICB2b2lkIERvKCkKICAgIHsKICAgICAgICAvL3lpZWxkIHJldHVybiBuZXcgV2FpdEZvckZpeGVkVXBkYXRlKCk7CgogICAgICAgIHJlc29sdXRpb25zID0gU2NyZWVuLnJlc29sdXRpb25zOwoKICAgICAgICBmbG9hdCB0YXJnZXRhc3BlY3QgPSAxNi4wZiAvIDkuMGY7CiAgICAgICAgZmxvYXQgd2luZG93YXNwZWN0ID0gKGZsb2F0KSByZXNvbHV0aW9uc1tyZXNvbHV0aW9ucy5MZW5ndGggLSAxXS53aWR0aCAvIChmbG9hdClyZXNvbHV0aW9uc1tyZXNvbHV0aW9ucy5MZW5ndGggLSAxXS5oZWlnaHQ7CiAgICAgICAgLy9mbG9hdCB3aW5kb3dhc3BlY3QgPSBTY3JlZW4ud2lkdGggLyBTY3JlZW4uaGVpZ2h0OwogICAgICAgIGZsb2F0IHNjYWxlaGVpZ2h0ID0gd2luZG93YXNwZWN0IC8gdGFyZ2V0YXNwZWN0OwoKICAgICAgICBDYW1lcmFbXSBjYW1BcnJheSA9IEZpbmRPYmplY3RzT2ZUeXBlKHR5cGVvZihDYW1lcmEpKSBhcyBDYW1lcmFbXTsKCiAgICAgICAgZm9yZWFjaCAoQ2FtZXJhIGNhbWVyYSBpbiBjYW1BcnJheSkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChjYW1lcmEuZ2FtZU9iamVjdC5sYXllciAhPSAxMCAmJiBjYW1lcmEuZ2FtZU9iamVjdC5sYXllciAhPSAxMykKICAgICAgICAgICAgewoKICAgICAgICAgICAgICAgIGlmIChzY2FsZWhlaWdodCA8IDEuMGYpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmVjdCByZWN0ID0gY2FtZXJhLnJlY3Q7CiAgICAgICAgICAgICAgICAgICAgcmVjdC53aWR0aCA9IDEuMGY7CiAgICAgICAgICAgICAgICAgICAgcmVjdC5oZWlnaHQgPSBzY2FsZWhlaWdodDsKICAgICAgICAgICAgICAgICAgICByZWN0LnggPSAwOwogICAgICAgICAgICAgICAgICAgIHJlY3QueSA9ICgxLjBmIC0gc2NhbGVoZWlnaHQpIC8gMi4wZjsKICAgICAgICAgICAgICAgICAgICBjYW1lcmEucmVjdCA9IHJlY3Q7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGZsb2F0IHNjYWxld2lkdGggPSAxLjBmIC8gc2NhbGVoZWlnaHQ7CiAgICAgICAgICAgICAgICAgICAgUmVjdCByZWN0ID0gY2FtZXJhLnJlY3Q7CiAgICAgICAgICAgICAgICAgICAgcmVjdC53aWR0aCA9IHNjYWxld2lkdGg7CiAgICAgICAgICAgICAgICAgICAgcmVjdC5oZWlnaHQgPSAxLjBmOwogICAgICAgICAgICAgICAgICAgIHJlY3QueCA9ICgxLjBmIC0gc2NhbGV3aWR0aCkgLyAyLjBmOwogICAgICAgICAgICAgICAgICAgIHJlY3QueSA9IDA7CiAgICAgICAgICAgICAgICAgICAgY2FtZXJhLnJlY3QgPSByZWN0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Cg==
compilation info
prog.cs(1,7): error CS0246: The type or namespace name `UnityEngine' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(8,5): error CS0246: The type or namespace name `Resolution' could not be found. Are you missing a using directive or an assembly reference?
Compilation failed: 2 error(s), 0 warnings
stdout