[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]


  • Страница 1 из 1
  • 1
Модератор форума: Spidy, turBO, blitz3d  
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Как сделать толковый курсор в шутере от first face (помогите с курсором я уже сам ничего придумать не могу...)
Как сделать толковый курсор в шутере от first face
arone][Дата: Пятница, 20.02.2009, 23:41 | Сообщение # 1
ламер
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Статус: Offline
Товарищи прогеры !!!
если не сложно помогите у меня маленькая загвоздочка!!!
; ---------------------------
Работаю над шутером от первого лица, таким слабеньким (чтобы освоить основные принципы работы в blitze)
Но вот вроде всё делаю как надо карту тестовую в CS4 создал и загрузил, создал pivot ,создал камеру и сделал парент к pivoty, загрузил mesh-оружия и привязал его к pivoty(так что его часть видна спериди, как в обычных шутерах), сделал колайд pivota со стенками, вот и решил сделать cursor --- сперва пытался через парент заставить загруженный спрайт-курсор двигаться как надо, соеденив его с мышкой . но тот упорно сопротивлялся(сначала вроде работает , а потом начнёш резко разворачиваться + мышкой дёргать = курсор скакнул по Z в даль) и я пытаясь исправить баг испортил рабочий(более или менее вариант). Начал лазать по чужим samplam --> в итоге у меня сейчас код с двумя вариантами (1-
я могу двигать мышь тока по оси X) ,a другой - я нормально двигаю мышью-камерой(до 90 град. вверх и -90) но только стоит мне нажать вперёд ,а мышь чуть выше серёдки так я так и полетел в воздухе под этим градусом...
Летаешь как во FreeLooke...
;+++++++++
я понимаю мне нужно что-то типа -- я хожу изменяя позиции pivota( у меня почти всё к нему привязано),
а камеру с мышью и с mesh-am оружия сделать отдельно (толи не парентом к нему) , то ли что ???
толи как-то изменить ф-цию mouselook(etc)
Code
  
           function mouselook(etc)

mxspd#=MouseXSpeed()*0.25
  myspd#=MouseYSpeed()*0.25
  MoveMouse GraphicsWidth()/2,GraphicsHeight()/2  
  posY#=EntityYaw(ent)-mxspd#
  campitch#= EntityPitch(ent) + myspd#  
  If campitch#<-85 Then campitch#=-85
  If campitch#>85Then campitch#=85
  RotateEntity ent,campitch#,posY#,EntityRoll(ent)

  

И как ко всему этому ещё и курсор приделать...?? sad


Правильный код где-то рядом...
 
blackdrummerДата: Пятница, 01.05.2009, 19:55 | Сообщение # 2
ламер
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
я чего-то не понял... что ты имеешь ввиду под словом "курсор"... и где курсору взяться в игре от первого лица?
 
Pro_100_DenДата: Суббота, 02.05.2009, 08:03 | Сообщение # 3
ламер
Группа: Пользователи
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Чтоб твой бот не летал надо зделать колизии но я в них не силен так что я пошел другим путем
If KeyDown(200) MoveEntity player, 0, 0, 0.2
If KeyDown(208) MoveEntity player, 0, 0, -0.2
If KeyDown(203) MoveEntity player, -0.2, 0, 0
If KeyDown(205) MoveEntity player, 0.2, 0, 0
я зделал вот такое управление
поднял playera на нужную высоту
вот код загрузки курсора
рисуеш курсор какой тебе надо в Paint или вPhoto shop
на черном фоне любым цветом, в формате 32х32 и сохрани его в любом из форматов которые поддерживает блитц потом введи вот ету часть кода;
Global gfxCross = LoadImage("cross.bmp")
и в конце после
RenderWorld
UpdateWorld
введи
DrawImage(gfxCross, GraphicsWidth()/2-16, GraphicsHeight()/2-16 )
ну вродибы все
 
blackdrummerДата: Суббота, 02.05.2009, 11:32 | Сообщение # 4
ламер
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
Pro_100_Den, Даже если прописать коллизии то при поднятии мыши вверх он все равно будит летать.
arone][, Сделай так, чтоб pivot вращался только по оси X, а все что к нему прикреплено(камера, оружие и т.д.) только по Y. И тогда при поднятии мыши pivot(а следовательно и все остальное) взлетать не будет smile
 
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Как сделать толковый курсор в шутере от first face (помогите с курсором я уже сам ничего придумать не могу...)
  • Страница 1 из 1
  • 1
Поиск: