¡¶°¬¶ûµÇ·¨»·Ð¡¸«Í·¶à¹¦ÄÜÐÞ¸ÄÆ÷¡·ÊÇÓÉ3dm´óÉñÖÆ×÷µÄÒ»¿îÓÎÏ·ÐÞ¸ÄÆ÷£¬Äܹ»°ïÖú¸÷Î»Íæ¼Ò¸üÇáËɵÄÌåÑéÕû¸ö°¬¶ûµÇ·¨»·ÓÎÏ·¹ý³Ì£¬ÔÚÐÞ¸ÄÆ÷ÄÚ±à¼ÈÎÒâÓÎÏ·ÊôÐÔ£¬Õý³£Æô¶¯ÓÎÏ·½øÈë¼´¿ÉÌåÑ鵽ȫ²¿µÄÐ޸ĺóÄÚÈÝ£¬¶ÔÍæ¼ÒÃÇѧϰÉÏÊÖ»á¸ü¼ÓµÄÈÝÒ×һЩ¡£
Èí¼þ½éÉÜ
°¬¶ûµÇ·¨»· ÐÞ¸ÄÆ÷ ͬ²½Steam×îаæ v1.02.1°æ±¾ µã»÷×óϽÇÈËÏñͼ±ê¿ÉµÇ½ºó×Ô¶¯¸üÐÂ×îаæ
Çë´ÓС¸«Í·ÓÎϷͼ±êÁбíÆô¶¯ÓÎÏ·ÐÞ¸Ä
ʹÓ÷½·¨
´ò¿ªÐÞ¸ÄÆ÷ºÍÓÎÏ·£¬ÐÞ¸ÄÆ÷ÉÏ·½µÄÂÌÌõ±íʾÕýÔÚѰÕÒÓÎÏ·´°¿Ú£¬Èç¹ûÓÎÏ·Æô¶¯ÁËÐÞ¸ÄÆ÷¾Í»á³¢ÊÔ²¶»ñ£¬Èç¹ûȨÏÞ¹»ÇÒûÓÐɱÈí×èÄÓ£¬¼´¿ÉÕý³£²¶×½£¬
ÎÞ·¨ÕÒµ½ÓÎÏ·´°¿Ú£¬ ±»¹Ü¼Ò¡¢ÎÀÊ¿¡¢´óʦÖúÊÖ ÕâÀ๤¾ßÀ¹½Ø£¬ÏÈÍ˳öÔÚ´ò¿ªÐÞ¸ÄÆ÷¡£
²»È·¶¨ÓÎÏ·ÊÇ·ñÓйÜÀíԱȨÏÞ£¬¶øÇÒ´ò¿ªÐÞ¸ÄÆ÷ÒÔºó×Ô¶¯²¶»ñµÄÂÌÌõÒ»Ö±ÔÚת£¬ÎÞ·¨²¶»ñÓÎÏ·´°¿Ú£¬ÒѹÜÀíԱȨÏÞÆô¶¯ÐÞ¸ÄÆ÷
Ϊʲô²¶»ñ²»µ½ÓÎÏ·£¿
±¾ÐÞ¸ÄÆ÷ĬÈϲ»´øÐ¡¶ÜÅÆ£¨Ã»ÓÐÇ¿ÖÆÒª¹ÜÀíԱȨÏÞ£©Ö»ÒªÌõ¼þ·ûºÏ¾Í¿ÉÒÔʹÓ㬵«ÊÇҪעÒâÓÎÏ·½ø³Ì²»ÄÜÓйÜÀíԱȨÏÞ£¬·ñÔò²»ÄÜÕý³£Ê¹Óá£
steamÕý°æÍæ¼ÒÆô¶¯ÓÎϷʱsteam»áѯÎÊÒª²»Òª¸ø¹ÜÀíԱȨÏÞ
Èç¹û²»¸øÐ¡¸«Í·¹ÜÀíԱȨÏÞ£¬ÕâʱºòÓ¦¸Ãµã¡º·ñ(N)¡»£¬²»ÒªÈÃsteam¿Í»§¶Ë¸øÓÎÏ·½ø³Ì¹ÜÀíԱȨÏÞ¡£ ÈôÕâ¸öÓÎÏ·±ØÐëʹÓùÜÀíԱȨÏÞ²ÅÄÜÕý³£ÔËÐУ¬¾Í±ØÐëµÃÒÔ¹ÜÀíԱȨÏÞÔËÐÐС¸«Í·²ÅÄÜÕý³£²¶×½¡£
³ýsteam¿Í»§¶Ë·¢·Å¹ÜÀíԱȨÏÞÒÔÍ⻹ÓÐÓÎÏ·×ÔÉíÒªÇó¹ÜÀíԱȨÏÞµÄÇé¿ö¡£
1.ÓÎÏ·µÄÖ÷³ÌÐòͼ±êÉÏÊÇ·ñ´øÓÐС¶ÜÅÆ£¬Èô´øÓоÍÊÇÇ¿ÖÆ¸úÄãÒª¹ÜÀíԱȨÏÞ£¬ÕâÖÖÓÎÏ·²»¸ø¹ÜÀíԱȨÏÞÊDz»ÄÜÔËÐеġ£
2.ÓÎÏ·½ø³ÌÉèÖÃΪ¼æÈÝģʽ£¬ÕâÊDZض¨ÊǹÜÀíԱȨÏÞ¡£
ÒÔÉÏÇé¿ö±ØÐëµÃÓÒ¼üÒÔ¹ÜÀíԱȨÏÞÔËÐÐÐÞ¸ÄÆ÷²ÅÄÜÕý³£²¶×½µ½ÓÎÏ·¡£
Äܲ¶×½µ½ÓÎÏ·²¢ÏÔʾÐÞ¸ÄÏµ«ÊÇÖ»ÄܶÁÈ¡²»ÄÜд£¬µ±ÐÞ¸ÄʱÓÎÏ·ÖÐδÓб仯¡£ÉõÖÁ¿ÉÄܶÁÈ¡¶¼±»À¹½Ø£¬È«²¿ÏÔʾ¿Õ°×¡£ÕâÖÖÇé¿öÒ»°ãÊDZ» ¡Á¡Á¹Ü¼Ò ¡ð¡ðÎÀÊ¿ ¡õ¡õ´óʦ ¡÷¡÷ÖúÊÖ ÕâÀ๤¾ß¸øÀ¹½ØÁË£¬ÇëÍ˳öÕâЩ¹¤¾ßÔÙÊÔ¡£
×¢ÒâUnityÒýÇæµÄÓÎÏ·Æô¶¯ÊÇÐèÒªÒ»¶Îʱ¼ä³õʼ»¯Ä£¿é£¬ËùÒÔÐÞ¸ÄÆ÷²¢²»»á¶Ô¸ÕÆô¶¯µÄÓÎÏ·Á¢¿Ì½øÐв¶×½£¬ÐèÒªµÈ´ýÒ»Ð©ÌØ¶¨µÄÄ£¿é±»¼ÓÔØ²¢±àÒëÍê³ÉÒÔºó²Å»á½øÐв¶×½£¬Õâ¸ö¹ý³Ì¿ÉÄÜÐèÒª30Ã룬Æä¶þÊÇijģ¿é¿ÉÄÜÐèÒª¶ÁÈ¡´æµµ»òÕß½øÈëÓÎÏ·ºó²Å»á±»ÓÎÏ·ÒýÇæ±àÒ룬ÕâÑùС¸«Í·ÒÀÈ»»áµÈ´ý¸ÃÄ£¿é±»±àÒëºó²Å»á²¶×½¡£
Ϊʲô¿ì½Ý¼ü°´ÏÂÎÞЧ£¿
ÔÚÓÎÏ·½ø³ÌȨÏÞ¸ßÓÚÐÞ¸ÄÆ÷½ø³ÌȨÏÞʱGetAsyncKeyStateº¯Êý½«ÎÞ·¨Ê¹Ó㬿ÉÒÔ¿´Ò»ÏÂmsdnµÄ˵Ã÷¡£
https://msdn.microsoft.com/en-us/library/windows/desktop/ms646293(v=vs.85).aspx
If the function succeeds, the return value specifies whether the key was pressed since the last call to GetAsyncKeyState, and whether the key is currently up or down. If the most significant bit is set, the key is down, and if the least significant bit is set, the key was pressed after the previous call to GetAsyncKeyState. However, you should not rely on this last behavior; for more information, see the Remarks.
The return value is zero for the following cases:
¡ùThe current desktop is not the active desktop \\µ±Ç°×ÀÃæ²»Êǻ×ÀÃæ
¡ùThe foreground thread belongs to another process and the desktop does not allow the hook or the journal record. \\ǰ̨Ïß³ÌÊôÓÚÁíÒ»¸ö½ø³Ì.×ÀÃæ²»ÔÊÐí¹Ò¹³»òÈÕÖ¾¼Ç¼.
Ò²¾ÍÊÇ˵µ±ÓÎÏ·´°¿ÚÔÚǰ̨ʱ£¬Ö»ÓÐÓÎÏ·´°¿ÚµÄÏß³ÌÄÜ»ñµÃ¼ü״̬£¬ÆäËûµÄÈçÐÞ¸ÄÆ÷µÄÏ߳̾ÍÎÞ·¨»ñµÃ°´¼ü״̬ÁË£¬²»ÖªµÀÄã°´ÏÂÁËʲô¼üÄÇô¿ì½Ý¼ü×ÔÈ»¾ÍʧЧÁË¡£Êµ¼ÊÉÏ΢ÈíÕâ¸ö˵Ã÷²¢²»ÊÇ̫׼ȷ£¬ÓÐÁ½ÖÖÇé¿öÏÂÊÇ¿ÉÒÔÔÚºǫ́»ñµÃ°´¼ü״̬µÄ¡£
1.µ±ÐÞ¸ÄÆ÷ÓµÓйÜÀíԱȨÏÞʱ£¬¿ÉÒÔÔÚºǫ́»ñµÃÓÎÏ·´°¿ÚµÄ¼ü״̬¡£
2.ÐÞ¸ÄÆ÷ûÓйÜÀíԱȨÏÞ£¬µ«ÊÇÓÎÏ·½ø³ÌҲûÓйÜÀíԱȨÏÞʱ£¬ÐÞ¸ÄÆ÷Ò²¿ÉÒÔÔÚºǫ́»ñÈ¡ÓÎÏ·´°¿ÚµÄ¼ü״̬¡£