Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 12.02.2007, 20:39   #61
klopmaks
ПроЭктировщик
 
Аватар для klopmaks
 
Регистрация: 22.12.2006
Сообщений: 182
Написано 2 полезных сообщений
(для 2 пользователей)
Re: RPG

Спасибо
Много чего узнал
(Offline)
 
Ответить с цитированием
Старый 13.02.2007, 14:06   #62
vadya
Оператор ЭВМ
 
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Re: RPG

ну помогите с камерой ПОЖАЛУЙСТА только это осталось сделать в моей РПГ
(Offline)
 
Ответить с цитированием
Старый 14.02.2007, 02:35   #63
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: RPG

излогайте всю проблему пожалуйста.
камера привязанна к игроку и должна крутиться юез игрока (т.е. просто менять обзаор).
тогда так:
До главного цикла
campiv=createpivot(player)
cam=createcamera(campiv)
в главном цикле

turnentity campiv,mouseyspeed(),mousespeed(),0,0
суть:
припарентиваем пивот к игроку и крутим ЕГО. Притом камеру привязываем именно к этому пивоту (тогда она будет крутится вокруг игрока).

P/S/ возможно прийдется поставить минус куда нибудь.
(Offline)
 
Ответить с цитированием
Старый 14.02.2007, 13:17   #64
vadya
Оператор ЭВМ
 
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Re: RPG

спасибо но это не то.попробую подробно обьяснить свою проблему:
вот твой код для того чтобы игрок переместился в точку пика:

Graphics3D 640,480,16,2
SetBuffer BackBuffer()

pl=CreatePlane()
PointEntity cam,pl
EntityPickMode pl,2
;устанавливаем режим пика на 2 - т.е. полигональное
cub=CreateCube()
EntityColor cub,255,0,0

cam=CreateCamera(cub)
PositionEntity cam,0,30,-50

piv=CreatePivot()
While 1
If MouseHit(1)
e=CameraPick(cam,MouseX(),MouseY())
;пик по позиции мыша
PositionEntity piv,PickedX(),PickedY(),PickedZ()
;ставим пивот в точку пика
PointEntity cub,piv
EndIf
If EntityDistance(cub,piv)>1; если далеко до пивота, то двигаем куб
MoveEntity cub,0,0,1
EndIf
RenderWorld
Flip
If KeyDown(1) Then Exit
Wend
она нормально работает но когда перемечаешь игрока(пиком) то камера поворачивается вместе с игроком и не понятно куда двигаешся. по подсказке mr.DIMAS я поставил в цикл эту строчку PositionEntity cam,EntityX(Cub),10,EntityZ(Cub)-20 и все заработало.потом я хотел сделать поворот камеры относительно игрока когда нажимаешь на правую кнопку мыши, вот код:
Graphics3D 640,480,16,2
SetBuffer BackBuffer()

lit=CreateLight()
cub=CreateCube()
EntityColor cub,255,0,0
;устанавливаем режим пика на 2 - т.е. полигональное
campiv=CreatePivot(cub)
campivx=CreatePivot(campiv)
campivy=CreatePivot(campivx)


cam=CreateCamera(campivy)
PositionEntity cam,0,30,-50

pl=CreatePlane()
PointEntity cam,pl
EntityPickMode pl,2

piv=CreatePivot()
While 1
If MouseDown(2)
mx=MouseXSpeed()
my=MouseYSpeed()
MoveMouse GraphicsWidth()/2, GraphicsHeight()/2
TurnEntity campivx,0,-mx/10,0
TurnEntity campivy,my/10,0,0
EndIf
PositionEntity cam,EntityX(Cub),10,EntityZ(Cub)-20
If MouseHit(1)
e=CameraPick(cam,MouseX(),MouseY())
;пик по позиции мыша
PositionEntity piv,PickedX(),PickedY(),PickedZ()
;ставим пивот в точку пика
PointEntity cub,piv
EndIf
If EntityDistance(cub,piv)>1; если далеко до пивота, то двигаем куб
MoveEntity cub,0,0,1
EndIf
RenderWorld
Flip
If KeyDown(1) Then Exit
Wend

но камера не следит за игроком а когда убрать строчку
PositionEntity cam,EntityX(Cub),10,EntityZ(Cub)-20 все работает но не понятно куда двигается куб т.к. камера поворачивается вместе с кубом .вот моя проблема и я уже незнаю как это исправить ну помогите пожалуйста
(Offline)
 
Ответить с цитированием
Старый 14.02.2007, 18:16   #65
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Re: RPG

Расперло эту тему аж на пять страниц, а все началось с вопроса klopmaks'a. Ну ладно. Я постораюсь помочь.
Воть рабочий код RPG слизанный с моей рпг (Смотреть тему "Оцените")
__________________

(Offline)
 
Ответить с цитированием
Старый 14.02.2007, 18:27   #66
vadya
Оператор ЭВМ
 
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Re: RPG

извини конечно но это тоже не то я это уже пробовал. если никто мне не сможет помощь наверное на худой конец так сделаю
(Offline)
 
Ответить с цитированием
Старый 14.02.2007, 21:30   #67
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Re: RPG

Блин ну как же. Если честно то ни врубаюсь. Воть держи мою РПГ мож чего поймешь. А так не могу помочь.
__________________

(Offline)
 
Ответить с цитированием
Старый 17.02.2007, 08:39   #68
vadya
Оператор ЭВМ
 
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Re: RPG

спосибо за попытки я уже сам разобрался вот код из ГА и немного доработанная мною
Function CreatPlayer(x,y,z)
player=CreateCube()
PositionEntity player,x,y,z
pivot=CreatePivot()
PositionEntity pivot,EntityX(player),EntityY(player),EntityZ(play er)
End Function

Function CreateCam()
cam=CreateCamera(pivot)
PositionEntity cam,0,90,-150
End Function


Function UpdateCam()
If Abs(EntityPitch#(campivy))>u# RotateEntity campivy,u#*Sgn(EntityPitch#(campivy)),0,0
mx=MouseXSpeed()
my=MouseYSpeed()
PositionEntity pivot,EntityX(player),EntityY(player),EntityZ(play er)
If MouseDown(2) Then
TurnEntity pivot,0,-mx,0
EndIf
End Function
(Offline)
 
Ответить с цитированием
Старый 02.04.2010, 07:42   #69
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: RPG

А как убрать рисунок ???
Делай ресунок через Иф после рендерворлд
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dream (02.04.2010)
Старый 02.04.2010, 07:47   #70
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: RPG

Пивот от камеры перенти так в цикле до рендерворл

PositionEntity Пивот,EntityX(Какоито месш),Entityy(Какоито месш),EntityZ(Какоито месш), а камеру уже сам
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dream (02.04.2010)
Старый 02.04.2010, 15:16   #71
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: RPG

Великолепно копнул, пустя каких-то 3 года чел наконец-то узнал решение!
Нажмите на изображение для увеличения
Название: 4-Gold.jpg
Просмотров: 975
Размер:	254.8 Кб
ID:	9777
(Offline)
 
Ответить с цитированием
Эти 12 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
ABTOMAT (02.04.2010), Amatsu (02.04.2010), Android (02.04.2010), Arton (02.04.2010), baton4ik (13.04.2010), Dream (02.04.2010), Hurrit (02.04.2010), Nex (02.04.2010), Reks888 (02.04.2010), St_AnGer (02.04.2010), Taugeshtu (03.04.2010), tormoz (02.04.2010)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com