设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
楼主: ⑨姐姐
打印 上一主题 下一主题

[原创发布] 【RGD】使用 DirectX 驱动的 RMVA Game.exe(v1.6)

  [复制链接]

Lv5.捕梦者 (版主)

梦石
1
星屑
23994
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

131
发表于 2019-1-13 15:53:38 | 只看该作者
因为游戏需要输入法,就使用了之前一直表现良好的《完美输入法 by 夏娜》,结果在RGD上有一点小问题。

看上去在输入框打开时,本机的中文输入法被屏蔽了。只能打英文……

原版的 exe 没有此问题,输入键会先被输入法拦截,然后再传给输入框

并且在输入框打开一次过后,Input.trigger? 方法就失效了,RInput.trigger? 方法调用 API: GetKeyState 却可以成功

输入法我做了一点修改以适应VA,详情请看这个工程: RGD-typefield.zip (2.83 MB, 下载次数: 99)

要不RGD自带一个输入法呗

点评

可能找到原因了,正在测试……  发表于 2019-1-14 15:10
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2075
在线时间
211 小时
注册时间
2018-4-23
帖子
119
132
发表于 2019-1-14 16:32:58 | 只看该作者
pajiman1999 发表于 2018-12-31 15:38
播放视频功能 有没有具体要求  我播放的视频 速度变快一倍 而且没有声音

是wmv格式 但是在游戏里播放 视频速度是翻倍的
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
28
星屑
10170
在线时间
4673 小时
注册时间
2011-8-22
帖子
1279

开拓者

133
 楼主| 发表于 2019-1-14 23:38:45 | 只看该作者
guoxiaomi 发表于 2019-1-13 15:53
因为游戏需要输入法,就使用了之前一直表现良好的《完美输入法 by 夏娜》,结果在RGD上有一点小问题。

看 ...

RGD里用了一个选项屏蔽了默认输入法,防止开着中文输入法结果按不动游戏的现象……没想到也带来负面结果了。

这个工程我回头再看看

点评

试了一下,在输入框关闭之后Esc, Enter, Space这几个键无响应,但是字母键多按几下还能用。  发表于 2019-1-15 01:47

评分

参与人数 1+1 收起 理由
guoxiaomi + 1 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
2
星屑
5550
在线时间
2566 小时
注册时间
2012-2-9
帖子
990

开拓者

134
发表于 2019-1-20 19:02:57 | 只看该作者
姐姐,是这样的,我写了个webp解码的dll,需要自己修改 Bitmap 里的像素值。
以前的版本,dll 里只要把解码以后的数据 memcpy 到 bitmap.address 就好了。如果用RGD的话,我看了你的兼容解决方法:

  1. class Bitmap
  2.   def _dump(limit)
  3.   data = "rgba" * width * height
  4.   process_color { |color_arr|
  5.     color_arr.save_data(data, width * height)
  6.   }
  7.   [width, height, Zlib::Deflate.deflate(data)].pack("LLa*")
  8.   end
  9.   def self._load(str)
  10.     w, h, zdata = str.unpack("LLa*")
  11.     data = Zlib::Inflate.inflate(zdata)
  12.     bmp = self.new(w, h)
  13.     bmp.process_color { |color_arr|
  14.       color_arr.load_data(data, w * h)
  15.     }
  16.     return bmp
  17.   end
  18. end
复制代码


这一段我没有看懂,像素值的数据存储在哪一个变量里?如果我需要一个提供给c,用来存数据的指针,应该怎么做?

以上:
万分感谢

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42339
在线时间
7598 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

135
发表于 2019-1-20 19:20:41 | 只看该作者
garfeng 发表于 2019-1-20 19:02
姐姐,是这样的,我写了个webp解码的dll,需要自己修改 Bitmap 里的像素值。
以前的版本,dll 里只要把解码 ...

看来你只能把dll处理好的数据以字符串形式返回给ruby,然后用
bitmap.process_color {|ca| ca.load_data(string,w*h)}来覆盖这个bitmap

点评

谢谢黄鸡巨巨,我试试  发表于 2019-1-20 20:23

评分

参与人数 1+1 收起 理由
garfeng + 1 塞糖

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
帖子
813

开拓者

136
发表于 2019-1-28 22:56:45 | 只看该作者
当使用地图遮挡提示的脚本时RGD会变得非常卡,每次修改保存工程后Game.ini文件里的Library=System\RGSS301.dll 都会变回RGSS300很烦

还不知道有什么其他脚本会导致变卡,但我觉得有了一个一定会有两个三个吧

点评

可以把301重命名为300,丢进va软件的文件夹里的,狸猫换太子  发表于 2019-1-28 23:24
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
2
星屑
5550
在线时间
2566 小时
注册时间
2012-2-9
帖子
990

开拓者

137
发表于 2019-1-31 00:22:37 | 只看该作者
fux2 发表于 2019-1-20 19:20
看来你只能把dll处理好的数据以字符串形式返回给ruby,然后用
bitmap.process_color {|ca| ca.load_data( ...

黄鸡巨巨,返回的字符串其实是在c里malloc的一段内存,ruby的垃圾回收,会主动将它销毁吗?

或者需要加一个接口,再次把字符串指针传回去,给c free掉?

我试了一下,如果再传回来free的话,程序就会崩溃……
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42339
在线时间
7598 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

138
发表于 2019-1-31 21:01:45 | 只看该作者
garfeng 发表于 2019-1-31 00:22
黄鸡巨巨,返回的字符串其实是在c里malloc的一段内存,ruby的垃圾回收,会主动将它销毁吗?

或者需要加 ...

应该不会呀,load_data的时候会把传过来的数据拷贝一份,释放应该在C里面完成就可以了。

点评

嗯,明白了。谢谢~  发表于 2019-1-31 22:29
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

139
发表于 2019-1-31 23:35:19 | 只看该作者
你们现在组织在哪里?拉我入个群?

点评

发私信啦。  发表于 2019-2-1 11:49
[url=http://weibo.com/2238291690?s=6uyXnP]
回复 支持 反对

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

140
发表于 2019-2-1 15:49:18 | 只看该作者
_(:з」∠)_ 我权限不够回复私信 QQ 398756862,记得拉我
[url=http://weibo.com/2238291690?s=6uyXnP]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-14 13:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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