매크로

조회 수 3313 추천 0 댓글 7

?

며칠간 GDIP와 ADB에 대해 틈나는데로 보게 됐습니다.

?

관심도 없었는데 , 모 어플을 본게 계기가 되버렸군요.

블루스택에서 화면을 가린상태에서나, 모니터 밖으로 보내버린 상태(투명상태?)에서도 이미지서칭이 자유롭게

가능한 것을 보고 테일스타 둘러보니 마침 GDIP에 대해 말씀하신 글을 보게되어 하나만 해보자식이었네요

?

제 선에서 해본 바 가장 이상적인것은 GDIP를 이용해서 블루스택에서 작업하는것이고,

지니모션에서 할경우는 ADB + GDIP를 써야한다는것이네요.

지니모션에서 GDI 스크린 캡쳐(HWND)가 됐다면 한방에 해결될것을 검은스크린 품어대는 바람에 ADB로 갈수밖에없었네요.

?

ADB에 와서는 , GDIP의 Gdip_BitmapFromHWND를 이용한 클립보드저장보다?속도가 현저히 떨어지는 문제가 있는데

그래도 그럭저럭 쓸만은 하다는 것 때문에 해보려했으나,

게임플레이시 가로 화면인데 캡쳐를 해도 세로로 찍히는 문제땜에 좀 꺼려졌네요

그렇다고 , 거기다 추가로?이미지툴로?다시 가로로 90도 회전시키는 걸 넣을수도 있겠지만 가뜩이나 느려서 ...

hangoon님께서?말씀하신데로 계산해서 할수도 있는데, 이미지를 여럿 작업할 경우 찾을이미지를 별도로?

90회전시켜야하고 이래저래 능률이 떨어지는것 같아서 중지했네요.

?

원래 게임매크로에는 관심이 없고 , 단지 어떤건가 궁금하여 작동하는거만 보자는 식으로 해본건데요

결국에는 겉만 핥다가 말았네요.

?

시간이라도 많으면 좀 더 생각하면서 해보겠는데 , 시간을 많이 투자할수가 없어서 이게 큰 문제네요

이 부분은 나중에 좀 시간이 나면 천천히 보도록 해야겠습니다. ㅠ


  • Hangoon 2015.04.24 12:19

    adb를 이용해서 캡쳐한것을 PC로 땡겨오고 그것을 바탕으로 이미지를 찾고 좌표를 추출한다.......... 말씀하신것처럼 느리다는게 단점인데, 느리긴 느립니다. 특히 adb pull로 땡겨오는 과정이 많이 느려요.

    그런데, 실제 매크로에 적용해보시면 그럭저럭 쓸만하다 정도가 아니라 그정도 속도면 게임 매크로제작에는 차고 넘치는 수준이 됩니다. 실제 모 유료매크로에서도 이 방식을 이용해 완전 비활성 모드를 구현해내고 있고요. 그것으로 장사를 할 정도라면 어느 크게 불편한 수준이 아니라는건 아마 간접적으로 나마 이해하실수 있으실겁니다.


    왜냐, 이미지써치 사이사이에 보통 sleep주시잖아요. 또 터치와 다음 이미지써치 사이에도 sleep 충분하게 주시잖아요.

    그것은 이미지 써치 후 다음 써치가 안정적으로 동작하기 위함, 또 터치 후 화면 전환등에 충분한 시간을 주기 위함일테죠 아무래도... 매크로 작업은 한번 실패하면 그 다음 동작에도 영향을 주어 작동자체가 안되어버리는 경우가 생길수있을테고, 즉 실패하면 안되니까 속도보다 정확성이 더 우선되기 때문입니다.


    말씀드렸다시피 0.1초 단위의 세밀한 써칭이 필요한게 아니라면, adb로 캡쳐해서 땡겨오는 속도가 느리다고해서 매크로 제작이 안될건 없습니다. 제가 똑같은 작업을 오핫 기본 명령어만 가지고 만든 후, 그것을 adb로 이식해본 경험이 있는데, 매크로 동작 속도는 체감 상 아무런 차이가 없었습니다. (말씀드린대로 중간중간 Sleep때문에요.)


    아마 게임 매크로에 큰 관심이 없으셨다고 하니 매크로제작이라는 목표보다는 평소 궁금하던 기술에 대한 접근이라는 측면에서 진행하셨기에, 마음에 드는 수준의 써치 속도가 나오지 않으니 그정도에서 그만두셨을 것이라 생각됩니다.

    혹여라도 나중에 진짜 매크로 제작을 타겟으로 adb를 활용하게 되면, 써치속도에 연연하지 마시고 그냥 제작해보시기 바랍니다. 제 경험상, 제가 몬길,레이븐 등에 적용해봤는데, 전혀 문제될 것이 없었습니다.

  • 우후훅 2015.04.24 12:27
    ㅎㅎ 말씀 감사합니다. 제가 실제 게임에 적용을 안해봐서 어느정도 나올것 같다 라고 예상만해서 그럴수도 있습니다. 신경을 많이 못쓴 제탓이 크죠. 근데 hangoon님은 실제 적용할때 이미지 90도 회전된거 감안해서 함수로
    만들어놓고 쓰시나요? 거기다 이미지를 찾을때 그이미지 역시 90도 회전작업하고 그걸 찾으시는거죠?
  • Hangoon 2015.04.24 12:24

    그리고, 세로회전의 경우는 왜 문제가 되는것인지.............. 그냥 모든 이미지를 세로 상태로 놓고 작업하면 간단하게 해결될 일입니다. 터치도 adb로 하면 좌표 환산같은것도 필요없구요.

  • 우후훅 2015.04.24 12:29
    아 글쓰는데 댓글다셧네요. 아 그냥 adb로 대부분작업을 해버리시는거군요.. 세로로 놓고 모든작업을 ㅎㅎ
    저는 방향에 대한 거부감이 크다보니 왠지 적응이 안되더라구용..
  • profile
    외치기 2015.04.24 12:30
    이게 정답이에요. ADB를 오로지 이미지 추출용으로만 쓸게 아니라 모든 메시지는 ADB로 처리하고 연산만 오토핫키로 하는 그런식의 구현이 되야지 ADB를 제대로 쓴다고 할수있죠.
  • 우후훅 2015.04.24 12:42
    그게 좋은 방법인가보네요. cmd에서 adb 치면 명령어들 쫘악 나오잖아요. 거기에는 touch 같은것들은 없는거 같은데 명령어 정리된 괜찮은 곳이 혹시 있을까요?
  • profile
    외치기 2015.04.24 13:10
    ADB사용법이라고 치면 많이 나와요
    http://azza.티스토리.com/143

List of Articles
분류 제목 글쓴이 최근변경 추천
정보 gdip 간단 응용 팁들 13 매크로맨서 2015.04.18 0/0
정보 Gdip를 이용한 클립보드에 있는 이미지를 통한 이미지서치 11 암드래 2016.07.19 0/0
정보 일정이미지 발견시 다른이미지서치 할수있나요? 2 세나블텍 2015.04.16 0/0
질문 한스크립트안에 여러가지 스크립트를 넣어 놓을수 있나요? 4 세나블텍 2015.04.22 0/0
질문 coc는 매크로 불가능한가요? 8 콘초블레이드 2015.04.16 0/0
질문 gdip_imagesearch 사용하시는 분들 중에 tolerance 건... 12 매크로맨서 2015.10.08 1/0
질문 gui 질문좀할께여 8 백곰e 2015.04.15 0/0
질문 블루스텍 구동시 화면깨짐 현상.. 1 흑염제 2015.04.15 0/0
질문 임의의 숫자가들은 변수를 소트하는방법을 좀 부탁드려요. 14 우후훅 2015.04.15 0/0
질문 지니모션 복제실행 6 나는황제다 2015.04.22 0/0
자유 여기서 개발하시는분들은 보안도 신경쓰셔야할거같아요. 15 외치기 2015.07.26 0/0
질문 화면 해상도 4 나는황제다 2015.04.23 0/0
질문 게임상나오는숫자 이미지서칭으로 찾는방법요 28 우후훅 2015.04.24 0/0
질문 블루스택 터치문제 4 불꽃앞점멸 2015.04.15 0/0
질문 오토핫키 Gui Button 텍스트에 색 입히기 질문 2 아잉뿌잉 2015.04.13 0/0
질문 비활성에 대한 질문입니다. 또 메시지에 대한 질문입니... 13 케리의비밀 2015.04.15 0/0
질문 postmessage 사용법 질문이요~ 4 olano 2015.04.16 0/0
질문 제 소스보시고 오류 테스트점 해주실분....ㅠㅠ 18 백곰e 2015.04.16 0/0
질문 [질문] 갯수 : 2개 8 USW 2015.04.13 0/0
질문 드롭다운리스트 사용법좀요.ㅠ 15 낭군이 2015.04.13 0/0
Board Pagination Prev 1 ... 172173174175176177178179180 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글