forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Блокирование курсора (http://forum.boolean.name/showthread.php?t=20341)

softcrasoft 29.06.2016 20:21

Блокирование курсора
 
Hello all.
В общем то восстанавливаю мою древнюю тему.
Есть 3д поле, на котором допустим есть главный персонаж и противники. Как сделать так, чтобы когда я верчу камерой и объектом стрелками, чтобы курсор не был выше или ниже других объектов? Чтобы в игре прицеливание было только по оси X.

L-ee-X 30.06.2016 05:23

Ответ: Блокирование курсора
 
Будем надеяться, что за время вашего отсутствия вы выучили справку по старечку Blitz3D.
Хотя не. Если бы вы её читали то не задали бы такой глупый вопрос.

KCEPOKC 30.06.2016 11:55

Ответ: Блокирование курсора
 
Ни в каком движке нет команды войд СделатьПрицеливаниеПоОбеимОсям(ентити прицел, бул пожалуйста = фолс), привязывание, если это не какой-то конструктор, надо делать руками. Каждая ось привязывается отдельно. Ну вот теперь подумайте, что не надо привязывать, чтобы привязать только одну ось.
Да, в справке блитца нет определенной команды привязки к курсору (как и нет команды сделай игру), но есть возможность получить координаты курсора в окне игры, соответственно можно вычислить дельту координаты. Корреляцию между дельтой координаты курсора и "прицелом" установите сами.

softcrasoft 30.06.2016 14:55

Ответ: Блокирование курсора
 
L-ee-X, да, изучил. В справке есть лишь получение координат мыши, и её передвижение. Но я не в курсе, на какой координате y стандартно все хотя бы кубы и сферы.

St_AnGer 30.06.2016 15:06

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306741)
L-ee-X, да, изучил. В справке есть лишь получение координат мыши, и её передвижение. Но я не в курсе, на какой координате y стандартно все хотя бы кубы и сферы.

эмм... наверно на 0, логично? А вообще всё располагается именно там, где ты укажешь в PositionEntity и других командах. И зачем тебе координаты мыши по У вообще, если камера вверх/вниз не будет поворачиватсья? Поворачивай только по нужной оси её и не будет проблем.

softcrasoft 30.06.2016 15:15

Ответ: Блокирование курсора
 
St_AnGer, я не о y на поле а про координату мыши.
то есть стандартно мышь будет смотреть на объекты?

L-ee-X 30.06.2016 15:37

Ответ: Блокирование курсора
 
Если честно то я вообще не понял, что ТС хочет. Вопрос задан некорректно.

softcrasoft 30.06.2016 16:42

Ответ: Блокирование курсора
 
L-e-x, для особо одарённых. в стрелялках чтобы прицелится, нужно не только влево вправо, но и вверх вниз, т.е в небо и в землю. мне нужно, чтобы я не мог смотреть курсором в землю или в небу чтобы y был на объектах.

L-ee-X 30.06.2016 18:25

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306748)
L-e-x, для особо одарённых. в стрелялках чтобы прицелится, нужно не только влево вправо, но и вверх вниз, т.е в небо и в землю. мне нужно, чтобы я не мог смотреть курсором в землю или в небу чтобы y был на объектах.

Слышь, особоодаренный. Ты сначала научись вырожать свою мысль в письменном виде, а потом умничай тут сиди. В отличии от тебя я этот блитз вдоль и поперёк знаю. А ты ни то что его не знаешь, ты даже с готовым кодом разобраться не можешь, которые тебе тут давали. Судя по тому как ты свои вопросы задаешь то логику любого игрового процесса ты вряд ли сумеешь изложить в письменном виде да ещё и на языке программирования. Иди читай справку. Плохо подготовился. Оценка 2

L-ee-X 30.06.2016 18:34

Ответ: Блокирование курсора
 
Почитай на досуге. Или в гугле забанили. А уж как запретить мышь двигаться по той или иной оси соображай сам. Для тупых

softcrasoft 30.06.2016 19:43

Ответ: Блокирование курсора
 
Уважаемый. К твоему сведению, я разрабатывал игры на BGT и Python используя sound_lib. И знаешь, довольно успешно.
Если ты знаешь блитц вдоль и поперёк, докажи на деле. А не болаболь. Я тоже могу сказать, что я мега крутой программе, и знаю ассемблер. Только мои слова не о чём не говорят.

L-ee-X 30.06.2016 19:45

Ответ: Блокирование курсора
 
Ты тупой. И твои я разрабатывал игры мне ни чего не говорят. Я вижу как ты их разрабатывал. Спустя пол года ты вернулся все такой же тупой и с тупыми вопросами.

tormoz 30.06.2016 19:59

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306753)
Уважаемый. К твоему сведению, я разрабатывал игры на BGT и Python используя sound_lib. И знаешь, довольно успешно.
Если ты знаешь блитц вдоль и поперёк, докажи на деле. А не болаболь. Я тоже могу сказать, что я мега крутой программе, и знаю ассемблер. Только мои слова не о чём не говорят.

Это пиздец товарищи. Я еще такого наглого и тупого дебила в жизни не встречал.
Баним, или оставим для поглумиться?

Лекс зачем помогаешь хаму?

softcrasoft 30.06.2016 20:58

Ответ: Блокирование курсора
 
Цитата:

Сообщение от tormoz (Сообщение 306756)
Это пиздец товарищи. Я еще такого наглого и тупого дебила в жизни не встречал.
Баним, или оставим для поглумиться?

Лекс зачем помогаешь хаму?

Вот вас за такое как рас забанить и могут. да и я помню кто туит главный админ, так что прошу без таких высказываний.
Вы тут по разговорам все такие крутые. но почему-то не разу этого никто не разу не доказал.
Я в отличии от вас господа разговариваю адекватно. Когда вы маты гнать начинаете я не выдерживаю.

L-ee-X 30.06.2016 21:04

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306760)
Вот вас за такое как рас забанить и могут. да и я помню кто туит главный админ, так что прошу без таких высказываний.
Вы тут по разговорам все такие крутые. но почему-то не разу этого никто не разу не доказал.
Я в отличии от вас господа разговариваю адекватно. Когда вы маты гнать начинаете я не выдерживаю.

Слышь ( как тебя даже назвать я не знаю ) Я тебе только что выше ссылку кинул где сделано управление мышкой. Ты же умный, сообрази сам как заблокировать ее по ОсиX либо по ОсиY.

Цитата:

Сообщение от tormoz (Сообщение 306756)
Лекс зачем помогаешь хаму?

Да думал может одумается что не прав, а нет же он еще борзее становится. Борзянки видимо обожрался. Предлагаю в БАН данного пассажира, ибо нефиг ему тут делать. >>:(

softcrasoft 30.06.2016 21:07

Ответ: Блокирование курсора
 
ты правила форума читал? товарищ.

softcrasoft 30.06.2016 21:12

Ответ: Блокирование курсора
 
Я спрашивал не о управлении мышкой, а о оси y и о блокировании у указателя на ней.
Вот лично я подобных п ридурков не видел.
На сайберфоруме почему-то никто не говорит что я нуб, даун или как ты там ещё упоминал, а помогают адекватно. вам бы лишь бы мусор по разводить.

KCEPOKC 30.06.2016 21:13

Ответ: Блокирование курсора
 
http://vk.com/video71391225_456239028
Не надо тут это, ну, не надо так.
Софт, Вам рил все подробно объяснили. Я так считаю, я бы все понял уже сто раз.

L-ee-X 30.06.2016 21:16

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306763)
Я спрашивал не о управлении мышкой, а о оси y и о блокировании у указателя на ней.
Вот лично я подобных п ридурков не видел.
На сайберфоруме почему-то никто не говорит что я нуб, даун или как ты там ещё упоминал, а помогают адекватно. вам бы лишь бы мусор по разводить.

Ты реально БАРАН? Цитирую тебе что я писал"Я тебе только что выше ссылку кинул где сделано управление мышкой. Ты же умный, сообрази сам как заблокировать ее по ОсиX либо по ОсиY"
Это мое последнее сообщение в твой адрес. Далее думаю можешь менять место дислокации, так как тут тебе мало кто поможет, таких тут не любят. Которые сами ни хрена читать не умеют и не хотят, а только орут помогите. И не более. Далеко тебе парень до этого, ой как далеко.
Цитата:

Сообщение от softcrasoft (Сообщение 306766)
Подробно? Да этот l-e-x мне на вопрос посылает читать то что я знаю. а не задачу помогает решить.

Видимо плохо знаешь, там в одной строчке код поправить и мышь заблокируется по данной оси в который вы это сделаете.
Адьес.

softcrasoft 30.06.2016 21:17

Ответ: Блокирование курсора
 
Подробно? Да этот l-e-x мне на вопрос посылает читать то что я знаю. а не задачу помогает решить.

softcrasoft 30.06.2016 21:19

Ответ: Блокирование курсора
 
l-e-x я знаю об этом! я знаю о функциях управления мне задачу решить надо

KCEPOKC 30.06.2016 21:20

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306766)
Подробно? Да этот l-e-x мне на вопрос посылает читать то что я знаю. а не задачу помогает решить.

Что Вы не знаете конкретно? В этом хотя бы определились? :)

softcrasoft 30.06.2016 21:29

Ответ: Блокирование курсора
 
Да. я не знаю как узнать на какой позиции y курсора он захватит объект. то есть на какойкоординате y курсора все объекты

Антихрист 30.06.2016 23:02

Ответ: Блокирование курсора
 

GoddoG 30.06.2016 23:13

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306769)
Да. я не знаю как узнать на какой позиции y курсора он захватит объект. то есть на какойкоординате y курсора все объекты

Вот готовый пример(Наверное) теперь ты сможешь узнать на какой позиции Y "он" захватит объект.

PHP код:

Graphics3D 800,600

sphere
=CreateSphere()
EntityPickMode sphere,1

For k=1 To 100
    model
=CopyEntitysphere )
    
EntityColor model,Rnd(255),Rnd(255),Rnd(255)
    
EntityShininess model,Rnd(1)
    
    
rad#=Rnd(1,2)
    
EntityRadius model,rad
    ScaleEntity model
,rad,rad,rad
    TurnEntity model
,Rnd(360),Rnd(360),0
    MoveEntity model
,0,0,Rnd(20)+20
Next

FreeEntity sphere

light
=CreateLight()
TurnEntity light,45,45,0

camera
=CreateCamera()
CameraRange camera,.1,1000

entity
=0

zoom
#=1

While Not KeyHit(1)
UpdateWorld
    RenderWorld

    
If KeyDown(30zoom=zoom*1.1
    
If KeyDown(44zoom=zoom/1.1
    CameraZoom camera
,zoom

    x
=MouseX()
    
y=MouseY()
    
    If 
y<32 TurnEntity camera,-2,0,0
    
If y>480-32 TurnEntity camera,2,0,0
    
    
If x<32 TurnEntity camera,0,2,0
    
If x>640-32 TurnEntity camera,0,-2,0
    
    e
=CameraPickcamera,x,)
    If 
e<>entity
        
If entity Then Draw_Wire_2D(entity,camera,0,0,0)
        
entity=e
    
EndIf
    
    If 
entity
        Draw_Wire_2D
(entity,camera,250,250,250)
    EndIf
    
    
    
Rect x,y-3,1,7    
    Rect x
-3,y,7,1
    
    Flip

Wend

Function Draw_Wire_2D(mesh,cam,red=0,grn=0,blu=0)
    
Color red,grn,blu
    
If EntityInView(mesh,cam)=False Then Return
    
cnt=CountSurfaces(mesh)
    For 
a=1 To cnt
        surf
=GetSurface(mesh,a)
        For 
tri=0 To CountTriangles(surf)-1
            TFormPoint VertexX
(surf,TriangleVertex(surf,tri,0)),VertexY(surf,TriangleVertex(surf,tri,0)),VertexZ(surf,TriangleVertex(surf,tri,0)),mesh,0
            CameraProject
(cam,TFormedX(),TFormedY(),TFormedZ())
            
sx1=ProjectedX()
            
sy1=ProjectedY()
            
TFormPoint VertexX(surf,TriangleVertex(surf,tri,1)),VertexY(surf,TriangleVertex(surf,tri,1)),VertexZ(surf,TriangleVertex(surf,tri,1)),mesh,0
            CameraProject
(cam,TFormedX(),TFormedY(),TFormedZ())
            
sx2=ProjectedX()
            
sy2=ProjectedY()
            
TFormPoint VertexX(surf,TriangleVertex(surf,tri,2)),VertexY(surf,TriangleVertex(surf,tri,2)),VertexZ(surf,TriangleVertex(surf,tri,2)),mesh,0
            CameraProject
(cam,TFormedX(),TFormedY(),TFormedZ())
            
sx3=ProjectedX()
            
sy3=ProjectedY()
            If 
Check_Cull_2D(sx1,sy1,sx2,sy2,sx3,sy3)<0
                Line sx1
,sy1,sx2,sy2
                Line sx2
,sy2,sx3,sy3
                Line sx3
,sy3,sx1,sy1    
            End 
If
        
Next            
    Next
End 
Function

Function 
Check_Cull_2D(x1,y1,x2,y2,x3,y3)
     Return (
x1-x2)*(y3-y2)-(y1-y2)*(x3-x2)
End Function 

А если нет, начнём разговор сначала.

Gector 01.07.2016 17:20

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306753)
Уважаемый. К твоему сведению, я разрабатывал игры на BGT и Python используя sound_lib.

Пруфы давай.

IgorOK 01.07.2016 18:49

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306769)
Да. я не знаю как узнать на какой позиции y курсора он захватит объект. то есть на какойкоординате y курсора все объекты

Ты хочешь узнать попадает ли под прицел энтити?

Gector 01.07.2016 22:22

Ответ: Блокирование курсора
 
Цитата:

Сообщение от softcrasoft (Сообщение 306748)
L-e-x, для особо одарённых. в стрелялках чтобы прицелится, нужно не только влево вправо, но и вверх вниз, т.е в небо и в землю. мне нужно, чтобы я не мог смотреть курсором в землю или в небу чтобы y был на объектах.

Какой еще нахер "у"? По оси вращения Y? Ну как повернет игрок - так и будет. Если нужно узнать в поле зрения ли противник - меряй delthayaw между персонажами. Он показывает на сколько нужно повернуть игрока чтобы тот смотрел на цель. Если он <= 0 - ты смотришь на него.

Ты блин описываешь проблемы хлеще чем "у тут окошечко вылезло и теперь не печатает принтер". При том из таких юзеров хоть суть проблемы можно вытащить вопрос эдак на третий а тут уже понаписано дофига. Так сочинять посты надо еще уметь.

L-ee-X 04.07.2016 13:26

Ответ: Блокирование курсора
 
Он опять на пол года пропал. Пошел повторять справку видимо. )))


Часовой пояс GMT +4, время: 02:29.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot