Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.30;
Скачать: CL | DM;

Вниз

Управление мышой   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
1-96815
weRUs
2003-01-19 03:34
2003.01.30
Работа с формой


1-96871
Hydra
2003-01-20 17:03
2003.01.30
Где QuickReport


14-96980
koks
2003-01-10 12:37
2003.01.30
ReportBuilder 6.02 ?


14-96969
Paul 'Spawn' Rysevets
2003-01-12 23:18
2003.01.30
Где взять статью различий мижду 7 и 6 Дэльфой.


3-96559
Наташа
2003-01-11 20:06
2003.01.30
группирование записи в связанных таблицах