Форум: "Игры";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];
ВнизУправление мышой Найти похожие ветки
← →
Some0ne. (2002-07-27 00:16) [0]Я тут игрушку свою пишу, и у меня возникла проблема: необходимо чтобы обзор по сторонам осуществлялся с помощью мыши(ну как в обычных 3Д игрушках). Как мне это сделать? Если брать координаты от события OnMouseMove, то при сильном повороте курсор сдвигается к краю экрана и дальнейший поворот не происходит! Помогите плиз....... =(
← →
mazepa (2002-07-27 00:19) [1]Скачай с DelphiGFX->Game Source->Раздел 2->Doom
если разберешся %)
← →
Some0ne. (2002-07-28 23:56) [2]Пасиба, ща посмотрим....... =)
← →
Some0ne. (2002-07-29 00:14) [3]Спасибо, конечно, только это все же не то, что мне нада........ В этом ДууМе все равно, когда курсор в край экрана упирается, то больше не повернуться..... У меня практически так как в этом примере и было сделано.. Не переставлять же мне курсов через ВинАПИ(хотя, скорее всего так и придется =( )
Мож знает кто нть другой способ???
← →
NailMan (2002-07-29 01:30) [4]Именно так и делается, вот как у меня в игрухе сделано:
//Процедура считывания данных от игрока
Procedure Ля-ля-ля
begin
...
чтение курсора мыши DirectInput функциями
//Обрабротка положения курсора мыши для его "бесконечности"
GetCursorPos(MPoint);
if (MPoint.x<=0) and (Mpoint.x<LastMPos.x) then SetCursorPos(ScreenWidth-1,Mpoint.y);
if (MPoint.x>=ScreenWidth-1) and (Mpoint.x>LastMPos.x) then SetCursorPos(0,Mpoint.y);
if (MPoint.y<=0) and (Mpoint.y<LastMPos.y) then SetCursorPos(Mpoint.x,ScreenHeight-1);
if (MPoint.y>=ScreenHeight-1) and (Mpoint.y>LastMPos.y) then SetCursorPos(Mpoint.x,0);
...
Обработка нажатия кнопок мыша
...
GetCursorPos(LastMPos);
end;
В итоге когда курсор мыша выйдет за границы [0..ScreenWidth] [0..ScreenHeight], он выйдет с другой стороны экрана.
← →
Proton (2002-07-29 13:46) [5]setcapture ?
← →
Some0ne. (2002-07-29 20:15) [6]Спасибо!
Я как раз и подозревал что так и придется делать! Ну а к примеру, если приложение оконное??? Тут уже такой способ не покатит! =(
← →
SI-riuss (2002-08-01 19:01) [7]Покатит. Ты только пиши немного иначе. Перемещай мышака не тогда, когда доползешь до конца экрана, а постоянно, и не в противоположный угол, а в центр окна. Вначале фиксируешь на сколько грызун переместился, используешь это в своей проге, а затем перемещаешь его назад, в центр окна.
Я так писал, так еще круче.
← →
Some0ne. (2002-08-04 02:41) [8]Кстати, точно! Так я и сделаю! Огромное спасибо, SI-riuss!
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c