美文网首页unity
[Unity 3d] Windows10系统怎么设置强制横屏呢?

[Unity 3d] Windows10系统怎么设置强制横屏呢?

作者: 雨落随风 | 来源:发表于2019-07-02 23:39 被阅读22次

    在本文,笔者将简单讲下如何为 PC 端 App强制横屏。

    发现问题:

    随着 Window 平板的推广,Windows下的类移动端APP开发要求也就随之而来,那坑还会远吗?
    于是笔者在使用 Windows 10 系统的 Surface Pro 上开发就发现了这个问题: Unity 提供的横屏设置对 windows 不起作用啊 ,这还能忍?!(PS:语文老师说标点符号不能连用)

    解决问题:

    1. 百度关键字 "Unity + Windows + 横屏设置",发现一个感觉有点靠谱的关键字:

    SetDisplayAutoRotationPreferences

    1. 看样子有戏,于是 MSDN 走起,找到了如下定义:
    1. 就是说只需要使用 DllImport属性将这个方法执行一哈,传入一个 1 就能完美收官! 那么问题来了,这个方法在哪一个 DLL呢?其实文档有写啦,看我 Highlight
    1. 至此,解决方案完全浮出水面!
    
    [DllImport("user32.dll")]
    private static extern bool SetDisplayAutoRotationPreferences(int orientation);
    
    void Awake()
    {
         SetDisplayAutoRotationPreference(1);
    }
    
    void Start()
    {
        Screen.SetResolution(800,600,true); 
    }
    
    

    Tips: 必须先 Awake 设置系统旋转,然后再到 Start 重设分辨率,能解决从竖屏强制横屏时游戏分辨率不能同步的问题。

    扩展阅读

    相关文章

      网友评论

        本文标题:[Unity 3d] Windows10系统怎么设置强制横屏呢?

        本文链接:https://www.haomeiwen.com/subject/gjpxhctx.html