查看: 4214|回复: 16

[讨论] 抛砖,使用C做RM的扩展(并非C#那个贴的原理或者普通DLL)

[复制链接]
头像被屏蔽
梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
回帖
1577

开拓者

发表于 2013-11-21 20:06:59 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
梦石
0
星屑
50
在线时间
739 小时
注册时间
2013-4-15
回帖
1708
发表于 2013-11-21 20:22:32 | 显示全部楼层
·······
于是乎完全看不懂···
代码盲一个······
回复

使用道具 举报

梦石
0
星屑
3905
在线时间
1972 小时
注册时间
2013-1-3
回帖
9146
发表于 2013-11-21 21:17:57 | 显示全部楼层
一直想用C#做出一个游戏设置工具,但是没思路

点评

编辑器类似物吗?  发表于 2013-11-21 21:57
《宿愿·寻剑篇》正式版已经发布!快去看看!点击进入论坛发布贴
回复

使用道具 举报

梦石
20
星屑
1840
在线时间
6925 小时
注册时间
2012-12-14
回帖
10960

短篇十战斗者组别冠军开拓者贵宾短篇九勇士组亚军

发表于 2013-11-21 22:04:32 | 显示全部楼层
能不能令RM支持C++编译?

点评

c++是编译型语言,ruby是解释型语言,RM支持C++无疑就是用dll  发表于 2013-11-23 19:53
但是。。RM的Ruby系统摆在那里,如果不补充更多细节,只是支持C++编译的话,就跟普通的写DLL然后用Win32API或者DL调用以及优化程度没区别。  发表于 2013-11-22 01:27
这个通法发过帖子了貌似。。求特化的要求  发表于 2013-11-21 22:05
大家好,这里是晨露的说。请多多指教。
刚入门RM软件制作,请大家多多帮助我哦。
落雪君的欢乐像素教程,欢迎查阅。

回复

使用道具 举报

梦石
0
星屑
3703
在线时间
3081 小时
注册时间
2011-11-17
回帖
943
发表于 2013-11-21 23:14:22 | 显示全部楼层
把字符串变成函数主体? 那不是比单纯的RUBY里写还要慢 存在个字符串解析的事情吧 那个C函数只是单纯的返回个字符串 没做神马有意义的事情啊 感觉要用C的话要利用它的编译 否则还是直接RUBY里写划算

点评

实际上C做的是一个极晚的动态链接工作,甚至比DLL的符号和具体函数的绑定还晚,从这个角度,生成的Ruby代码只是包装C运算,和一些@sprite.update之类  发表于 2013-11-22 00:35
返回的这个字符串可以初始化,可以包括def self.update end,也就是这个对象自己的update重定义(这样就没有每一帧调用C函数了),见我下面的例子3  发表于 2013-11-22 00:33
不过LX说的加密倒是可行性很大(大雾)  发表于 2013-11-22 00:00
问题就是 最后函数的事情都是RUBY在做吧 C没做任何事情 RUBY先把那些从C里取得的字符串解析成一个函数 即使字符串不变 第一次解析还是少不了的  发表于 2013-11-21 23:58
好比说C中有个函数的地址是addr=0x12345678,生成的Ruby代码里面可以直接写'API.new(0x12345678).call("Hello")',这个不用像Win32API那样导出  发表于 2013-11-21 23:46
回复

使用道具 举报

梦石
1
星屑
11993
在线时间
4534 小时
注册时间
2005-10-22
回帖
7091

开拓者贵宾

发表于 2013-11-21 23:47:53 | 显示全部楼层
于是偶们提前破解了一种潜在的加密手段(大雾)
回复

使用道具 举报

梦石
0
星屑
3703
在线时间
3081 小时
注册时间
2011-11-17
回帖
943
发表于 2013-11-21 23:51:04 | 显示全部楼层
LS点醒了我 一直在考虑 解析字符串做无用功 不如直接写在F11里 其实 这用作脚本加密确实很不错

点评

这就像def xxx; aaa; end的aaa只能使用实例的aaa方法,但lambda{aaa}的aaa可以有更丰富的含义一样  发表于 2013-11-22 01:22
写在F11里面的脚本和写在C里面的脚本的区别是,F11的脚本至多只能知道C的DLL愿意导出的符号,但写在C里面的脚本可以知道DLL的所有细节  发表于 2013-11-22 01:21
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
回帖
1577

开拓者

 楼主| 发表于 2013-11-22 00:07:02 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

梦石
0
星屑
88
在线时间
1906 小时
注册时间
2012-10-5
回帖
1928

开拓者

发表于 2013-11-22 00:15:37 | 显示全部楼层
用C#,C++ 做RM插件是个不错的想法。。
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
回帖
1577

开拓者

 楼主| 发表于 2013-11-22 00:18:01 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部