代码和你发的那个没有本质区别,不过我没有替换DLL而是自己做了个通用的驱动注入平台2 |1 P0 g) i2 x8 P+ v4 a
目前是拿火炬之光做测试的D9版本$ U' c7 ^+ ]) n- c( M3 R. g: _
我在实现一个更进一步的想法,就是在游戏创建文字纹理的做个备份,然后再绘制那里做复制与分频显示# T$ z1 z( ?! q/ M; K* H J
最终看到的应该是游戏中的文字,会实时取出来单独在一个窗口显示,或者存成图片,( L( `7 z3 j" ^2 u
当然做成快捷键呼出的形式直接显示在游戏界面也可以: [! z% J1 @: t5 w6 S0 a
再下一步我打算使用OPENCV从我保存的图片中识别文字,然后利用一些机翻接口自动翻译(这里可以设置成可由玩家修改保存.如果要显示攻略甚至玩家评论都可以在这地方一起)
- {4 b' X- H2 ]$ I6 `% s至于在另外个帖子里你提到的每帧刷新时图像识别的效率问题,由于每帧刷新的时候我只做一个简单的文字纹理复制动作,. k3 p) b* s8 G
对游戏执行速度影响不会太大. 对文字纹理的区分是在其他地方做的,纹理复制在绘制时候做,文字图像识别在单独的线程窗口做1 ^/ C# J- y. G
这样把工作量就分散开了. D" z! ^4 v7 |/ j# a+ p" [% x
这个图是把火炬的纹理画面复制到我自己窗口,画了2个方块
Y# v# f! e; J- xdebugview表示的是纹理筛选参数,这部分还没完全弄好
; k3 x) T# u% W) i2 \. q" _( c还有些通用性与界面的想法没理清,哪天一起聊聊,
' }% a) M! ~1 k有点实质内容了我再整理下代码发出来,另外本人界面很渣-_- |