매크로

조회 수 1040 추천 0 댓글 18

https://i.imgur.com/KxInquB.jpg



https://i.imgur.com/9tldlq2.jpg




메인화면은 일단 회전이 없지만, 게임같은경우는 자동으로 90도 회전하죠

adb 캡처시 , 회전한대로 인식하지 않고 그대로 세로로 캡쳐하네요.

이걸 지니모션에서 강제적으로 가로로 첨부터 맞춰주고 캡처하면 화면이 깨지고 일그러집니다.



이걸 이미지서칭으로 써먹으려면 90도 회전 감안해서 계산해서 이미지 좌표 잡아야할것 같네요. 아~머리가...

또한 이미지 역시 저 회전한 상태에서 짤라내서 해야되는 사태가.............


제 몸 전체가 90도 회전하게 생겼습니다.



adb로 이미지서칭하시는분 이거 어떻게 하고 계시는지요.


adb이미지서칭도 찾을이미지를 아주 작게 하니 전체범위로 검색해도 꽤 괜찮은 속도로 서칭을 해주네요





일그러짐 현상입니다.? 커스텀으로 800? 480으로 가로로 조정한 상태에서 캡쳐하면 아래처럼 나오네요..


https://i.imgur.com/tAWFqd5.jpg


  • 리체 2015.04.23 11:27

    간단히, 지니모션이 회전이 안되게 첨부터 가로로 나오게 하시면 되지 않을까요?

    왼만한 게임들 거의 다 가로잖아요.

  • 우후훅 2015.04.23 11:46
    위에 본문에 썻듯이 첨부터 가로로 하면 화면 일그러짐 깨짐이 발생합니다..;;;;
  • 리체 2015.04.23 11:54
    얼마나 일그러지고 깨지는거에요?
    저도 adb를 이용해서 캡처화면을 자주 저장합니다.
    블레이드 같은 경우, 캐릭터나 이전 배경화면의 실루엣등이 섞여나오기도 하죠.
    하지만 항상 똑같고 써먹지 못할 정도는 아니던데요. coc는 좀 다른가요?
  • 우후훅 2015.04.23 12:09
    원래 잘되야 정상이군요.. ㅠㅠ;;; 전 원래 이런줄알았습니다 ㅎㅎㅎ
  • Hangoon 2015.04.23 12:03

    어떤방식으로 지니모션을 가로로 고정하셨는지 모르겠지만

    커스톰으로 해상도를 가로방향으로 맞추고(예>?800x480 등)?지니를 실행시키면 가로모드로 캡쳐 아주 잘됩니다 ㅎㅎ


    그리고.....사실 좌표계산하는것도 어렵지 않은데요.

    그냥 함수 한번 만들어놓으면 되니깐요, 그리고, adb로 이미지캡쳐하고 터치는 포스트메시지로 하시는게 아니라면 환산도 그렇게 복잡하지 않아요 사실.. 터치도 adb로 하시면 간단한 일입니다.

  • 우후훅 2015.04.23 12:13

    커스텀으로 800 480 으로 맞추고 했는데 저러네요. 역시나 캡쳐는 세로방향으로 맞춰집니다.
    이게 COM.ahk ,CLR.ahk 이걸 써서 그런가요?

    별되하는사람님 글 보고 했거든요. (http://tailstar.net/autohotkey_tips/2657024?)
    저게 애초에 세로셋팅인지......


    강제 계산해서 하나 만들어 적용하면 되겠지만, 그것도 제 머리로는 만들기 좀 복잡하네요.
    글구 이미지도 회전된상태 고려를 해야해서 이미지 서칭이 여러개일때는 더많은 시간이 들것같군요.

  • Hangoon 2015.04.23 12:19
    캡쳐는 adb로 하면 되는 것이고 이미지써칭은 Gdip Gdip_ImageSearch로 하는거 아닌가요?
    COM라이브러리는 필요없을텐데요 아마.........
    COM라이브러리를 사용하셨다면 혹시 별되님의 dll파일을 사용하시는지요?
    그런데, 굳이 그것을 사용할 이유는 없습니다. 기능상 제약이 많아요.
    그냥 adb.exe를 사용하는게 훨씬 더 좋습니다.
  • 우후훅 2015.04.23 12:23
    #include CLR.ahk
    #include COM.ahk

    F4:: ;지니모션윈도우
    WinGetActiveTitle,Title
    RegExMatch(Title,"(\d{3}\.\d*\.\d*\.\d*)",b)
    ip="%b%:5555"

    CLR_Start()
    asm := CLR_LoadLibrary("AhkAdb.dll")
    adb := CLR_CreateObject(asm, "AhkAdb.Adb")
    COM_Invoke(adb, "Device=",ip)

    return

    F3:: ;전체 캡쳐
    COM_Invoke(adb, "Capture")
    COM_Invoke(adb, "SaveCaptureAll", "aaa.bmp")
    return


    이렇게 일단 했는데 , 제약은 크게 없는듯한데요..
    adb shell 로 쓰는게 낫다는 말씀이시군용..
    그럼,, 분명 지니모션을 가로로 맞췄는데도 세로로 찍힌다는건 com파일 부분에서 그렇게 맞춰져
    있어서 그럴수 있겠네요.
  • 우후훅 2015.04.23 14:43
    또 질문드려 죄송합니다. ㅎㅎ
    댓글에서 말씀하신 adb로 캡쳐를 하고 gdip로 서칭하면 된다고 말하셨는데요.
    gdip에서 캡쳐해서 클립보드에 있는걸 바로 이미지서칭하듯이
    adb에서 캡쳐를 한게 클립보드에 넣어지나요? 명령어보니까 파일로 저장되는거 같던데요.
    파일로 저장될때 시간이 다소 오래걸리더라구요. 1초?정도
    이문제 혹시 어떻게 해결하셨나요.
  • Hangoon 2015.04.23 14:57
    오래걸려도 매크로 작동에는 전혀 문제가 없습니다.
    매크로가 0.1초 단위의 세밀한 조작을 하면 모를까, 그냥 메뉴찾아들어가고 결과 판정하고 하는덴 전혀 문제 없네요 ㅎㅎ
    느리단 느낌도 전 없더라구요.
  • Hangoon 2015.04.23 12:26

    그리고 좌표 환산.................. 예시를 하나 들어보자면, 480x800 기준입니다

    _______________
    |... *............... |
    |.................... |
    |______________| 200, 100
    만약 위와같은 위치의 좌표가 200,100이라면, 90도 회전된 상태에서의 좌표는 아래와 같습니다
    ___________
    |...............|
    |..........*....|
    |...............|
    |...............|
    |...............|
    |__________| 480-100, 200 = 380, 200 입니다.

    사실 아주 간단한 환산인데요,

    반대의 경우는 380,200 -> 200, 480-380 = 200,100
    이 되겠죠

  • 우후훅 2015.04.23 12:30

    제가 길치 방향치라 그런지 몰라도 이상하게 저런 회전관련 부분은 머리가 꼬이더라구요.. ㅠ.ㅠ
    보면서도 한참을 보고 머리에서 돌려봐야 보일까말까해요.?

    방금 보면서 어? 별표시 방향이 우측아닌가 계속 생각하고 있었는데 , 수정하셨네요 ㅎ

  • Hangoon 2015.04.23 12:32

    돌려서 보려고 하지마시고,
    화면 하나에 점 하나 딱 찍어놓고 가로방향에서의 좌표, 세로로 돌려놓은 상태의 좌표 각각 추출해서
    두 좌표 사이의 환산식을 만들어주셔야죠.
    돌려서 보려 하시니 헷갈린 것입니다.... ㅎㅎㅎ

  • 우후훅 2015.04.23 12:37
    일단 좀 시간을 두고 계속 머리에 입력을 시켜야겠습니다. 진짜 방향감각 없거든요
    근데 왠만하면 그냥 가로로 하고 adb쉘로 그냥 해봐야겠습니다. 흐....
  • Hangoon 2015.04.23 12:33
    첨엔 점없이 공백으로 했는데 댓글 달고나니까 공백이 적용이 안되어서요, 공백대신 점으로 표현했습니다
  • 리체 2015.04.23 12:23

    헐, 저렇게 찍힌다면 사용할수가 없겠군요, Hangoon님 말씀처럼 그냥 adb를 이용해서 캡처하세요.

  • 별되하는사람 2015.04.23 14:50

    AhkAdb.dll 파일의 해상도 설정부분에 오류가 있나보네요.

    dll을 쓰신다면 수정해드리겠습니다.


    AhkAdb.dll 은 adb캡쳐를 하여도 파일로 생성하지 않고 이미지서치를 하기위해서 만들었어요.

    지니모션 용량증가나 ssd하드수명에 영향이 있다는 얘기도 있고, 속도면에서도 빠른듯하여...


    shell로 직접 캡쳐하시거나 이미지서치를?AhkAdb.dll에 있는게 아닌?다른 방법으로 하신다면 굳이?AhkAdb.dll을 쓰실필요는 없으시구요.

  • 우후훅 2015.04.23 15:34
    아넹.. 아무래도 파일저장하고 삭제하고 이게 반복되면 속도적인면도 좀차이가 있고 하겠죠.
    기존 480 * 800 을 가로로 800 * 480으로 하면 문제가 생기더라구용..

    감사합니다.

List of Articles
분류 제목 글쓴이 최근변경 추천
자유 비활성(GDIP,ADB)이미지서칭 결국은... 7 우후훅 2015.04.24 0/0
질문 특정부분빼고 모니터가리기 _Crash 2015.04.24 0/0
질문 모바게님 이미지서칭함수 질문입니다.ㅠㅠ 13 pervm 2015.04.27 0/0
자유 오토핫키 입문할때는 비활성만 되어도 좋았는데요... 5 푸른호수 2015.04.24 0/0
질문 무한 loop문 사용시 cpu점유율 증가...해결방법좀 문의... 4 퉁군 2015.04.24 0/0
질문 윈드로이 다중 이미지서치 문의합니다. 2 퉁군 2015.04.23 0/0
질문 adb 이미지캡처시 90도회전되는 문제요 18 우후훅 2015.04.23 0/0
질문 GUI 스킨을 입히고 exe 컴파일한 후에 다른 PC에서는 ... 4 Rabbit 2015.04.23 0/0
질문 GDI 캡쳐 관련해서 질문 드립니다. 5 인형 2015.04.23 0/0
질문 자기자신말고 다른오토핫키프로그램 모두종료 3 _Crash 2015.04.24 0/0
질문 비활성 이미지 클릭 질문입니다 2 시원짱 2015.04.23 0/0
질문 모바게님 이미지서칭함수 오차율 질문 7 pervm 2015.04.22 0/0
질문 다시한번 질문드릴게요. 가상화관련 4 USW 2015.04.23 0/0
질문 FileInstall 관련 질문 41 USW 2016.10.29 0/0
질문 지니 이용한 쿠키런 매크로있으신분... 2 댕고링 2015.04.23 0/0
질문 오토핫키 명령어 질문 6 papepo 2015.04.21 0/0
질문 gui창 2개 중 1번 gui창에서 확인하면 닫아지면서 2번 ... 7 Rabbit 2015.04.21 0/0
질문 Shell.Explorer 새로고침? 13 _Crash 2015.04.21 0/0
질문 구이 스크립트 잘못된 부분 질문드립니다 3 푸른호수 2015.04.21 0/0
질문 구이실행시 정지 질문드립니다. 3 푸른호수 2015.04.20 0/0
Board Pagination Prev 1 ... 170171172173174175176177178 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글