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

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

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

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 30.08.2006, 19:15   #1
smaller
Нуждающийся
 
Регистрация: 04.07.2006
Сообщений: 54
Написано 0 полезных сообщений
(для 0 пользователей)
Камера

Помогите пожалуйста сделать камеру,чтоб немного отставала ,заносила,
Похожую на "CASTLE" , но чтоб меньше виляла!Пожалуйста!!!
(Offline)
 
Ответить с цитированием
Старый 30.08.2006, 19:45   #2
jimon
 
Сообщений: n/a
Re: Камера

тебе отставание в повороте или отставание по позиции ?
или и то и то ?

(как я помню, без интерполяции тут не обойтись)
 
Ответить с цитированием
Старый 30.08.2006, 19:52   #3
smaller
Нуждающийся
 
Регистрация: 04.07.2006
Сообщений: 54
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

При повороте
(Offline)
 
Ответить с цитированием
Старый 30.08.2006, 20:43   #4
smaller
Нуждающийся
 
Регистрация: 04.07.2006
Сообщений: 54
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

Ну что, кто-нибудь поможет?
(Offline)
 
Ответить с цитированием
Старый 30.08.2006, 22:17   #5
jimon
 
Сообщений: n/a
Re: Камера

ну как я понимаю :
делает пивот на месте игрока
чепляеш к нему камеру
пишеш изменение поворота игрока в какой нить буфер
а потом через некоторое время читаеш его
и исполняеш ети действия для пивота..
 
Ответить с цитированием
Старый 31.08.2006, 17:44   #6
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Камера

Вот пример как я разобрался

Function sky()
sky=CreateSphere(100)
ScaleEntity sky,800,800,800
FlipMesh sky
EntityFX sky,1
sky_tex=LoadTexture("ter/ne.jpg")
EntityTexture sky,sky_tex
End Function
Function ligh()
For i=1 To 100
Print "Light="+i
li=CreateLight()
PositionEntity li,Rnd(-500,500),15,Rnd(-500,500)
Next
End Function
Function chit()
If KeyDown(86)=1 And ch=0 Then Graphics 1024,768 chit$=Input$("Input you text") ch=1
If KeyDown(86)=1 And ch=1 Then chit$="" ch=0
End Function
Function turbo()
For i=1 To 100
Print "Загруженно "+i+" из 100"
turb=LoadAnimMesh("ter\turbo.x")
Animate turb,2
PositionEntity turb,Rnd(-500,500),0,Rnd(-500,500)
ScaleEntity turb,1,1,1
EntityType turb,tur
Next
End Function
Function el()
For i=1 To 100
Print "Loading object...... "+i+"/500"
elka=LoadMesh("ter\tr.x")
ScaleEntity elka,Rnd(1,3),Rnd(1,5),Rnd(1,3)
PositionEntity elka,Rnd(-500,500),-1,Rnd(-500,500)
EntityType elka,stC
Next
End Function

Function bot()
End Function
Function anim()
ani=LoadAnimMesh("ter\anim.3ds")
Animate ani,1
PositionEntity ani,0,0,20
EntityType ani,avC
End Function

Function TRAP()
For i=1 To 100
Print "trap:"+ i
tr=LoadMesh("ter\tr1.x")
PositionEntity tr,Rnd(-500,500),0,Rnd(-500,500)
EntityType tr,tra
EntityRadius tr,10
Next
End Function

Function graund()
ground=CreatePlane()
EntityColor ground,0,100,0
ground_tex=LoadTexture("ter/gr.jpg")
ScaleTexture ground_tex,10,10
EntityTexture ground,ground_tex
EntityType ground,ter
End Function
Graphics3D 1024,768,32,0
SetBuffer BackBuffer()
Const avC=1,stC=2,tra=3
Const tur=1
Const g#=1
Const ter=3
Global grav,vol#
Global ch=0
Global fntArial
fntArial=LoadFont("Arial Cry",24,False,False,False)
Global windwave#

lit=CreateLight(1)
PositionEntity lit,0,200,0
auto=LoadMesh("ter\av6.3ds")
cam=CreateCamera(auto)
EntityType auto,avC
EntityRadius auto,2
TranslateEntity auto,0,-G#,0
el()
anim()
graund()
ani=LoadAnimMesh("ter\an.x")
Animate ani,1
PositionEntity ani,10,0,50
EntityRadius ani,2
EntityType ani,avC


sky()
Global speed=0
Global t=100
Global s#=0
Global dist#
Global tx#,ty#,tz#,ax#,ay#,az#
Global pl#,sb#
Collisions avC,stC,2,3
Collisions avC,ter,1,3
Collisions avC,avC,2,3
;//**********************************
For i=1 To 100
Print "Загруженно "+i+" из 100"
turb=LoadAnimMesh("ter\turbo.x")
Animate turb,1
PositionEntity turb,Rnd(-500,500),0,Rnd(-500,500)
ScaleEntity turb,0.2,0.2,0.2
EntityType turb,tur
Next
;//***********************************
auto2=LoadMesh("ter\car2.x")
PositionEntity auto2,Rnd(-50,50),0,Rnd(-50,50)
EntityRadius auto2,2
EntityType auto2,avC
EntityPickMode auto2,2
EntityPickMode auto,2

gaz=LoadSound("ter\gaz.wav")
LoopSound gaz
SoundVolume gaz,0.1
PlaySound gaz
PositionEntity auto,1,1,1
zdanie1=LoadMesh("ter\zd1.x")
ScaleEntity zdanie1 ,3,3,3
PositionEntity zdanie1,-50,0,-20
zdanie2=LoadMesh("ter\zd2.x")
ScaleEntity zdanie2 ,3,3,3
PositionEntity zdanie2,20,0,40
EntityType zdanie2,Avc
EntityType zdanie1,Avc

povV=0
povP=0

;------------------------------------------------------------------------
;------------------------------------------------------------------------



Repeat
;If PositionEntity auto,auto+1,auto-0.1,auto Then PositionEntity auto,auto+0.1,auto
;If PositionEntity auto, auto,auto+0.2,auto=1 Then PositionEntity auto,auto-0.2,auto
sb=sb+0.003
PositionEntity cam,0+tx,4+ty,-10+tz
;BOT//////////////***************************
dist# = EntityDistance ( auto2, auto )
If dist > 1
TurnEntity auto2,0,Sgn(DeltaYaw(auto2,auto))*0.9,0
MoveEntity auto2,0,0,sb
EndIf
;PositionEntity auto,xa#,ya#,za#

If EntityCollided (auto2,avC)
TurnEntity auto2,0,5,0
EndIf
;;//////////////////////*****************************




If EntityCollided(auto,ter)=1 Then grav=grav+0.1 PositionEntity auto,0,grav,0

;Управление камеры
If KeyDown(78)=1 Then MoveEntity cam,0,0,.1

If KeyDown(74)=1 MoveEntity cam,0,0,-.1
;------------------------------------------------------------
; Управление Авто
If s>=0 Then
If KeyDown(200)=1 And KeyDown(54)=1 And t>=1 Then s=s+0.005 T=T-1 tz=tz-0.01
If KeyDown(54)=0 And tz<0 Then tz=tz+0.01
If KeyDown (57)=1 And s>0 Then s=s-.02
If KeyDown(200)=1 And speed<220 Then s=s+0.001
If KeyDown(200)=0 And s>0 And s<>0 Then s=s-0.01
End If

If speed>220 Then s=s-0.001
;------------------------------------------------------
If s<=0 Then
If KeyDown (57)=1 And s<0 Then s=s+.02
If KeyDown(208)=1 And speed<60 Then s=s-0.001
If KeyDown(208)=0 And s<0 Then s=s+0.01
End If

;--------------------------------------------------------------
MoveEntity auto,0,0,s
If KeyDown(203)And speed>0 And tx>-1 And pl<0.9Then TurnEntity auto,0,pl=pl+0.01,0 tx=tx-0.03
If KeyDown(203)=0 And tx<0 Then tx=tx+0.02
If KeyDown(203)And speed>0 Then TurnEntity auto,0,1,0
If KeyDown(205)And speed>0 And tx<1 And pl<0.9 Then TurnEntity auto,0,pl=pl-0.01,0 tx=tx+0.03
If KeyDown(203)=0 And tx>0 Then tx=tx-0.02

If KeyDown(205)And speed>0 Then TurnEntity auto,0,-1,0
;----------------------------------------------------------------
If KeyDown(29) And KeyDown(56) And KeyDown(20) Then t =1000

If EntityCollided (auto,stC) s=s-0.01 ay=ay+1

If EntityCollided (auto,ter) ay=ay+1
If EntityCollided (auto,tur) Then t=t+10 PositionEntity turb,0,10,0 s=s-0.01 ay=ay+1


If speed>=0 Then speed=s*50
If speed<=0 Then speed=(s*10)^2

;------------------------------------------------------------------------
;------------------------------------------------------------------------


UpdateWorld
RenderWorld
SetFont fntArial
Text 10,10,"SPEED="+speed+" km/h"
Text 10,30,"TURBO="+t
Flip
Until KeyHit(1)
End




в выделеном участке есть управление камеры с замедлением пользуйся!
(Offline)
 
Ответить с цитированием
Старый 01.09.2006, 18:04   #7
smaller
Нуждающийся
 
Регистрация: 04.07.2006
Сообщений: 54
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

Thanks!
(Offline)
 
Ответить с цитированием
Старый 04.04.2007, 00:34   #8
Wins Vega
AnyKey`щик
 
Регистрация: 03.04.2007
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

А кто нибудь из вас играл в FreeLancer? Как там камера настроена? ваще сижу парюсь не допру так на близ перевести...
(Offline)
 
Ответить с цитированием
Старый 04.04.2007, 19:49   #9
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Re: Камера

Wins_Vega объясни поподробней чё как. как камера двигается ее поведение и т.п. мож помогу
__________________

(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 01:57   #10
Wins Vega
AnyKey`щик
 
Регистрация: 03.04.2007
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

Ну, вроде этого:
http://wvg-development.ucoz.ru/load/7-1-0-39
Это я пытался сэмулировать управление камерой как во FreeLancer.
Обнаружил кучу глюков с физикой и решил подключить DLL физики.
Однако в ODE у мя так же сделать не получилось. Теперь может ФизX попробовать?
(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 14:42   #11
Chuma
ПроЭктировщик
 
Регистрация: 23.11.2006
Сообщений: 130
Написано 3 полезных сообщений
(для 35 пользователей)
Re: Камера

Сообщение от Wins Vega
Ну, вроде этого:
http://wvg-development.ucoz.ru/load/7-1-0-39
Это я пытался сэмулировать управление камерой как во FreeLancer.
Обнаружил кучу глюков с физикой и решил подключить DLL физики.
Однако в ODE у мя так же сделать не получилось. Теперь может ФизX попробовать?

гм. после регистрации - акцес динайд.
Как слить то???
(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 17:47   #12
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Re: Камера

Wins_Vega слей сюды на страницу. А то регатся не хотца. А насчет физики то лучше юзать Newton - он легкий и функциональный( ИМХО даже очень )
__________________

(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 21:39   #13
Wins Vega
AnyKey`щик
 
Регистрация: 03.04.2007
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

Ой, пардон, я доступ забыл открыть...
Все, теперь должно работать

Сообщение от mr.DIMAS
Wins_Vega слей сюды на страницу. А то регатся не хотца. А насчет физики то лучше юзать Newton - он легкий и функциональный( ИМХО даже очень )
Ниче страшного, пару минут не влом потратить Кроме того глядишь че нить на форуме найдешь! )
(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 22:50   #14
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Re: Камера

Если прально понял то тама в игре камера движется плавно за курсором всегда.
А в чем собсно вопрос, ну врубил, имитация плавного движения и поворота камеры относительно параметров мыши по Х и У так или нет. По подробней разъясни что бы было понятно, а фиг знает как во FreeLancer движется камера
Ниче страшного, пару минут не влом потратить
Бррр парился с реганьем наверно минут десять.
__________________

(Offline)
 
Ответить с цитированием
Старый 05.04.2007, 23:58   #15
Wins Vega
AnyKey`щик
 
Регистрация: 03.04.2007
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Камера

не, понажимай на F1,F2 и когда F2 мод, жми правую мышь. Вобщем проблема в том, что кораблик при плавном движении камеры по X,Y начинает наклоняться в бок и поворачиваться вместе с камерой, точнее камера ворочается вместе с ним(Вправо/влево). И главная фишка в том, что бы сделать тот же кораблик только в Нютоне например, как твердое тело.

Для этого при повороте кораблю задается torque, относительная, так? А как же тогда он наклоняться то будет в бок? Т.е наклонится и полит в сторону наклона, силы то к нему прикладываются относительные...

В Близе я делал родительский объект, который и поворачивался с мышой, а корабль к нему прикреплялся и относительно вместе с ним вертелся, только еще и сам по себе наклонялся. А камера вокруг него летала в бок, для создания эффекта отставания. Так у мя в Близе были проблемы с физикой (хотя ее то там и нет по сути). Попробуй посталкиваться с кубиками.

Главная проблема в создании похожего джоинта на физ движке. ODE, Fizx,Newton... Какой лучше? Их вроде регистрировать надо? Вобщем в ODE я не допер как похожий джоинт создать, чтоб 2 объекта и один из них относителен первого. Чтоб точно так же относительность задать, как делает Bliz3D если написать:

MainObject=CreateCube()
Object=CreateSphere(MainObject)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Web камера Randomize Модули для BlitzMax 0 25.09.2009 13:17
Камера... ken park 3D-программирование 85 04.07.2009 01:30
Камера Fatalix3d 3D-программирование 2 28.12.2008 15:17
Камера и Mesh JeSss 3D-программирование 15 29.01.2008 21:00
камера из 3дсмакс CRACK 3D-программирование 10 31.07.2007 18:24


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


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