代码和你发的那个没有本质区别,不过我没有替换DLL而是自己做了个通用的驱动注入平台9 W2 J5 s! H, a, K" F" u2 v
目前是拿火炬之光做测试的D9版本, C3 y$ x4 a0 L' c" \
我在实现一个更进一步的想法,就是在游戏创建文字纹理的做个备份,然后再绘制那里做复制与分频显示" ^5 z- q; `! } X5 v
最终看到的应该是游戏中的文字,会实时取出来单独在一个窗口显示,或者存成图片,
5 U6 f7 H* U; h* p0 p- O: {$ c当然做成快捷键呼出的形式直接显示在游戏界面也可以3 d8 B! P6 z5 I& f) B0 U. N
再下一步我打算使用OPENCV从我保存的图片中识别文字,然后利用一些机翻接口自动翻译(这里可以设置成可由玩家修改保存.如果要显示攻略甚至玩家评论都可以在这地方一起)4 W; P [( ~% Z' d" V
至于在另外个帖子里你提到的每帧刷新时图像识别的效率问题,由于每帧刷新的时候我只做一个简单的文字纹理复制动作,
! e0 @& n J5 W5 Q* _对游戏执行速度影响不会太大. 对文字纹理的区分是在其他地方做的,纹理复制在绘制时候做,文字图像识别在单独的线程窗口做- b+ L5 Y2 t: Y0 s" M! b' x. c
这样把工作量就分散开了
6 o' Q$ k$ C4 w9 u3 G- ` q% l% K这个图是把火炬的纹理画面复制到我自己窗口,画了2个方块" k m2 T0 n+ h D: V: E' M. L
debugview表示的是纹理筛选参数,这部分还没完全弄好7 b7 I/ l$ \6 I! ?' b0 @& w
还有些通用性与界面的想法没理清,哪天一起聊聊,
1 x9 U7 T6 v$ j. z+ ]! t有点实质内容了我再整理下代码发出来,另外本人界面很渣-_- |