游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

问答求助

关注:561

当前位置:游戏蛮牛 技术专区 问答求助

_____________________________________________________________________________________________________________
问答求助版块规则:

  1、问题尽量描述清楚
      2、代码要放在代码块里
      3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
      4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
      5、问题得到解决,请选择最佳答案。
      6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 428|回复: 11

[其他] 游戏窗口化运行时,能否限制用户自由调整窗口大小?

[复制链接]  [移动端链接]
7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
发表于 2018-6-1 15:17:38 | 显示全部楼层 |阅读模式
30蛮牛币
本帖最后由 煮粥侠 于 2018-6-1 15:21 编辑

游戏窗口化运行时,能否[允许用户拖拽调整窗口大小、但窗口只按照16:9的比例 等比放大缩小],而不是自由任意跟随用户拖拽?
或者是[限制窗口的最小高度、宽度],当用户向更小的方向拖拽,窗口不会继续变小~
Unity里面能实现吗?



回复

使用道具 举报

3偶尔光临
215/300
排名
11741
昨日变化
2

0

主题

69

帖子

215

积分

Rank: 3Rank: 3Rank: 3

UID
163693
好友
0
蛮牛币
382
威望
0
注册时间
2016-8-23
在线时间
65 小时
最后登录
2018-7-29
发表于 2018-6-1 15:17:39 | 显示全部楼层
当然,你在用户改变Scream.With  和 Height 的时候的时候判断当前分辨率是否达到你的要求,不达到要求就自己计算一下在设置成你想要的分辨率
目前 好像没有改变分辨率的回调接口(也可能是我没找到)所以你在Update里面判断就好了
就是在Update里检测Scream.Wiht 和 Height
[发帖际遇]: 一个袋子砸在了 十一_11 头上,十一_11 赚了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
 楼主| 发表于 2018-6-1 17:58:12 | 显示全部楼层
十一_11 发表于 2018-6-1 15:54
当然,你在用户改变Scream.With  和 Height 的时候的时候判断当前分辨率是否达到你的要求,不达到要求就自 ...

谢谢你,用你提供的思路实现了,不过效果不太理想:我是在窗口化时开启一个协程,每一帧检测Screen.W/Scree.H 是否等于16/9,如果不是,则根据当前宽计算高,然后SetSolution()。

发布测试了一下,窗口还是会跟随鼠标自由拉伸,接下来再变成16:9,就是说这中间有一个时间延迟,,如果持续拖拽,就特别鬼畜,甚至还崩了一次。我试了试一些可以支持拖拽窗口大小的游戏,有做得非常顺滑的,就是窗口会严格按着固定比例顺滑的跟随鼠标方向放大缩小。这种效果怎么能实现呢?
[发帖际遇]: 煮粥侠 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

排名
28039
昨日变化
6

3

主题

16

帖子

82

积分

Rank: 2Rank: 2

UID
279186
好友
0
蛮牛币
563
威望
0
注册时间
2018-4-28
在线时间
51 小时
最后登录
2018-10-9
发表于 2018-6-2 04:41:12 | 显示全部楼层
要顺滑,插值法会吗?
不要每帧都检查,太费性能,可以每0.1秒检查一次,然后插值到 16/9 就行了
最简单的线性插值就是这种  , x,y为平面上两点,
每一个Tick:
if(x!=y){
  x+=(y-x)/10
}

回复

使用道具 举报

5熟悉之中
967/1000
排名
4037
昨日变化

5

主题

275

帖子

967

积分

Rank: 5Rank: 5

UID
234410
好友
2
蛮牛币
842
威望
0
注册时间
2017-7-26
在线时间
327 小时
最后登录
2018-11-15
发表于 2018-6-2 13:41:09 | 显示全部楼层
窗口比例改变会有事件的 接收事件算一下就好了
你要是想问是什么事件 我会告诉你:___________

回复

使用道具 举报

7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
 楼主| 发表于 2018-6-3 11:42:16 | 显示全部楼层
随幻Kaller 发表于 2018-6-2 13:41
窗口比例改变会有事件的 接收事件算一下就好了
你要是想问是什么事件 我会告诉你:___________ ...

??????????????
是什么啊~!?
[发帖际遇]: 煮粥侠 在论坛发帖时没有注意,被小偷偷去了 2 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
 楼主| 发表于 2018-6-3 12:40:49 | 显示全部楼层
uuuniity 发表于 2018-6-2 04:41
要顺滑,插值法会吗?
不要每帧都检查,太费性能,可以每0.1秒检查一次,然后插值到 16/9 就行了
最简单的 ...

谢谢回复,不过我觉得你没理解。。我是希望没有那个时间延迟,窗口不要变来变去的。。但我没办法让窗口不跟随鼠标拖拽,它是自动的

回复

使用道具 举报

3偶尔光临
215/300
排名
11741
昨日变化
2

0

主题

69

帖子

215

积分

Rank: 3Rank: 3Rank: 3

UID
163693
好友
0
蛮牛币
382
威望
0
注册时间
2016-8-23
在线时间
65 小时
最后登录
2018-7-29
发表于 2018-6-4 14:56:17 | 显示全部楼层
煮粥侠 发表于 2018-6-1 17:58
谢谢你,用你提供的思路实现了,不过效果不太理想:我是在窗口化时开启一个协程,每一帧检测Screen.W/Scr ...

他们的思路肯定也是这样的,但是他们可能不是用Unity做的,我去查了一会,没发现Unity有类似的回调接口,所以如果你之前按照我说的思路做的实验没有做错的话,那Unity应该做不出那种效果,你可以参考别的方法,比如 炉石传说 他们也是支持自由拉伸的我觉得体验就很好

回复

使用道具 举报

7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
 楼主| 发表于 2018-6-4 18:20:29 | 显示全部楼层
十一_11 发表于 2018-6-4 14:56
他们的思路肯定也是这样的,但是他们可能不是用Unity做的,我去查了一会,没发现Unity有类似的回调接口, ...

谢谢你,我也查了很多,似乎这一块功能Unity已经包办了,好像没什么办法的样子。多谢了!

回复

使用道具 举报

3偶尔光临
292/300
排名
13994
昨日变化
6

0

主题

46

帖子

292

积分

Rank: 3Rank: 3Rank: 3

UID
157008
好友
0
蛮牛币
34
威望
0
注册时间
2016-7-15
在线时间
190 小时
最后登录
2018-9-21
QQ
发表于 2018-6-5 17:10:04 | 显示全部楼层
windows平台下,win32 API了解一下。

回复

使用道具 举报

7日久生情
2769/5000
排名
851
昨日变化
3

49

主题

727

帖子

2769

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
69941
好友
1
蛮牛币
7841
威望
0
注册时间
2015-1-20
在线时间
849 小时
最后登录
2018-11-18
 楼主| 发表于 2018-6-5 21:45:08 | 显示全部楼层
lsz19910430 发表于 2018-6-5 17:10
windows平台下,win32 API了解一下。

什么意思,不太懂,我这目前没有Windows的操作系统

回复

使用道具 举报

排名
19282
昨日变化
3

0

主题

10

帖子

51

积分

Rank: 2Rank: 2

UID
249404
好友
0
蛮牛币
682
威望
0
注册时间
2017-10-18
在线时间
13 小时
最后登录
2018-10-18
发表于 2018-6-6 15:12:12 | 显示全部楼层
好激烈!!!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表