代码和你发的那个没有本质区别,不过我没有替换DLL而是自己做了个通用的驱动注入平台
9 ^" Q* |! l- R0 R. H目前是拿火炬之光做测试的D9版本7 J; H) \) o5 y0 d7 H- g" ?
我在实现一个更进一步的想法,就是在游戏创建文字纹理的做个备份,然后再绘制那里做复制与分频显示
+ c% ]; V% f3 ~% z/ N- I) g/ L- b最终看到的应该是游戏中的文字,会实时取出来单独在一个窗口显示,或者存成图片,, k) I. I2 H! G3 h7 ?' P. ]: p
当然做成快捷键呼出的形式直接显示在游戏界面也可以
% d3 F- L( w4 g4 ~/ s, I% N) N再下一步我打算使用OPENCV从我保存的图片中识别文字,然后利用一些机翻接口自动翻译(这里可以设置成可由玩家修改保存.如果要显示攻略甚至玩家评论都可以在这地方一起)
$ B! H8 l& I2 m8 e至于在另外个帖子里你提到的每帧刷新时图像识别的效率问题,由于每帧刷新的时候我只做一个简单的文字纹理复制动作,/ [: a7 ^3 ~- F) c
对游戏执行速度影响不会太大. 对文字纹理的区分是在其他地方做的,纹理复制在绘制时候做,文字图像识别在单独的线程窗口做, e4 R8 n* {2 y/ ?$ |
这样把工作量就分散开了( N* f% g0 G% v6 J
这个图是把火炬的纹理画面复制到我自己窗口,画了2个方块% u+ G+ S# E; u, z; \. G5 b% t
debugview表示的是纹理筛选参数,这部分还没完全弄好
) y2 d; c7 Z! X- j还有些通用性与界面的想法没理清,哪天一起聊聊,
8 t1 D# X5 g. e- q- Z有点实质内容了我再整理下代码发出来,另外本人界面很渣-_- |