Project1

标题: 关于VX分辨率的问题 [打印本页]

作者: 936650306    时间: 2012-8-8 15:29
标题: 关于VX分辨率的问题


我真的汗死了


看了无数范例后,头大中……


有人可以给一个VX分辨率的范例吗?我不要重新做游戏,所以说要把范例的东西移植过去,所以说请把修改过的地方说明一下,
小菜我不胜感激!! dsu_plus_rewardpost_czw
作者: 936650306    时间: 2012-8-8 15:34
没人吗?这可是心声啊
作者: devilg    时间: 2012-8-8 21:58
自己还没做成,就说大致的方向吧。
首先定义好分辨率,在module里,main里的@@都可以,用graphics.resize_screen扩展开分辨率
然后把所有窗口的x,y,width,height换成相对这个分辨率的数值。比如
super(0, 0, SHIT::SCREEN[0], SHIT::SCREEN[1])  #x,y,width,height
SHIT:SCREEN是我的分辨率array。这样,这个窗口无论分辨率都是扩展成全窗口的了。
p.s.要改的地方很多
作者: 明特·布兰马修    时间: 2012-8-8 22:11
更改800*600的分辨率脚本
将脚本插入MAIN之前就可以了
要修改的话按说明办就行了
  1. class Win32API
  2. GAME_INI_FILE = ".\\Game.ini"

  3. def Win32API.GetPrivateProfileString(section, key)
  4. val = "\0"*256
  5. gps = Win32API.new('kernel32', 'GetPrivateProfileString',%w(p p p p l p), 'l')
  6. gps.call(section, key, "", val, 256, GAME_INI_FILE)
  7. val.delete!("\0")
  8. return val
  9. end
  10. def Win32API.FindWindow(class_name, title)
  11. fw = Win32API.new('user32', 'FindWindow', %(p, p), 'i')
  12. hWnd = fw.call(class_name, title)
  13. return hWnd
  14. end
  15. HWND_TOP = 0
  16. HWND_TOPMOST = -1
  17. SWP_NOMOVE = 2

  18. def Win32API.SetWindowPos(hWnd, w, h)
  19. swp = Win32API.new('user32', 'SetWindowPos', %(l, l, i, i, i, i, i), 'i')
  20. ok = swp.call(hWnd, HWND_TOP, 0, 0, w, h, SWP_NOMOVE)
  21. return ok
  22. end
  23. end
  24. #以下是分辨率变更
  25. title = Win32API.GetPrivateProfileString("Game", "Title")
  26. hWnd = Win32API.FindWindow("RGSS Player", title)
  27. #使用时X轴加6,Y轴加25,否则画面会变形
  28. ok = Win32API.SetWindowPos(hWnd, 806, 665)
  29. if(ok == 0)
  30. p "失败"
  31. end
复制代码

作者: 怪蜀黍    时间: 2012-8-8 22:32
由于附件最大尺寸不得超过999K,所以必须分两个附件上传。两个附件下完之后,分别解压,需要把RGSS202E解压到工程文件夹中,注意,这个RGSS202E是与默认的不同的。
1024*768D:
RGSS202E.rar (792.22 KB, 下载次数: 200) 复件 1024x768D.rar (260.65 KB, 下载次数: 185)


作者: limaolinghu    时间: 2012-8-9 10:24
800,600以上的分辨率,不会卡吗?
作者: xiongzhuang    时间: 2012-8-9 12:04
还是原版的直接全屏实在又不卡,虽然分辨比较低....




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1