Помогите с движком
|
|
df | Дата: Суббота, 29 Ноября 2008, 00:02 | Сообщение # 1 |
 Продвинутый
Группа: Участники
Сообщений: 144
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Легион Темной Лисы(LDF)
Проектов: 1
| Помогите с движком, и парой багами в нем. 1Баг. - Персонаж игнорирует колизею по вертикали и опускается до определенной точки которая определяется строчкой "PositionEntity pers,xplayer,PickedY()+100+yplayer#,zplayer" и при понижении параметра перс проходит сквозь уровень? 2Баг. - Как сделать что бы камера и перс могли опускаться ниже нуля нормально и не проваливаясь через уровень? 3Баг. - При столкновении со стеной перс в нее влипает, как это исправить? 4Баг. - При прыжке перс медленно опускается и у самой "земли" зависает и моментально оказывается на начальной точке прыжка. Как сделать нормальное приземление??? 5. Как сделать что бы перс не скатывался по наклонным поверхностям и ландшафту а стоял??? Тем кто поможет заранее спасибо. вот код самого движка: width=640 height=480 Graphics3D width,height,32,2 Const type_player=1 Const type_wall=2 Collisions type_player,type_wall,3,2 SetBuffer BackBuffer() gravity#=.98 jumpvel#=4 zoom#=1 ;Создания персонажа ;Global Pers=CreateCube() pers=LoadMD2("Fwwolf\tris.md2") pers_tex=LoadTexture("Fwwolf\Fox.pcx") EntityTexture pers,pers_tex PositionEntity Pers,xplayer#,yplayer#,zplayer# ScaleEntity pers,2,2,2 EntityType pers,type_player EntityRadius pers,30 NPC=LoadMD2("Fwwolf\tris.md2") NPC_tex=LoadTexture("Fwwolf\Katerina.pcx") ScaleEntity NPC,2,2,2 EntityTexture NPC,NPC_tex PositionEntity NPC,0,50,-400 camera=CreateCamera(pers) PositionEntity camera,0,100,-200 PointEntity camera,pers CameraFogMode camera,1 CameraFogRange camera,500,10000 CameraFogColor camera,200,220,255 CameraRange camera,.1,1000 ;Загрузка уровня Global level=LoadMesh("leval\Leval_00\Leval_00.b3d") ScaleEntity level,1,1,1 ;level_tex=LoadTexture ("leval\Leval_01\Leval_01.bmp") ;EntityTexture level,level_tex EntityType level,type_wall HidePointer While Not KeyDown(1) ; check user interaction ma#=ma# - (MouseXSpeed()/4) my#=my# + MouseYSpeed() If my#>480 Then my#=480 If my#<0 Then my#=0 If ma#>360 Then ma#=0 If ma#<0 Then ma#=360 ;управление WASD If KeyDown(17)=1 Then zplayer#=zplayer#-(Sin(ma#+90)*10) xplayer#=xplayer#-(Cos(ma#+90)*10) EndIf If KeyDown(30)=1 Then zplayer#=zplayer#+(Cos(ma#+90)*10) xplayer#=xplayer#+(Sin(ma#+90)*10) EndIf If KeyDown(31)=1 Then zplayer#=zplayer#+(Sin(ma#+90)*10) xplayer#=xplayer#+(Cos(ma#+90)*10) EndIf If KeyDown(32)=1 Then zplayer#=zplayer#-(Cos(ma#+90)*10) xplayer#=xplayer#-(Sin(ma#+90)*10) EndIf ypic=LinePick(xplayer,1000,zplayer,0,-2000,0,1.0) Po sitionEntity pers,xplayer,PickedY()+100+yplayer#,zplayer RotateEntity pers,0,ma#+180,0 ;PositionEntity camera, EntityX(pers), EntityY(pers), EntityZ(pers) If jumping=0 If KeyDown(57) Then yplayer#=jumpvel# jumping=1 EndIf If jumping=1 yplayer#=yplayer#-gravity# by#=by#+yplayer# EndIf ;функция увиличения zoom#=zoom#-MouseZSpeed() If zoom#>10 Then zoom#=10 If zoom#<-5 Then zoom#=-5 If by#<1 Then by#=0 yplayer#=-20 jumping=0 speed#=speed#*.99 MoveEntity pers,0,yplayer#,speed# ; Render the Scene normally.... CameraClsColor camera ,200,220,255 CameraViewport camera,0,0,width,height camrot#=camrot#+1.0 If camrot#>360 Then camrot#=camrot#-360 camrot2#=camrot2#+3.0 If camrot2#>360 Then camrot2#=camrot2#-360 ypic=LinePick( xplayer+(Cos(ma#+90)*200),1500,zplayer+(Sin(ma#+90 )*200),0,-3000,0,1.0 ) PositionEntity camera,xplayer+(Cos(ma#+90)*200),PickedY()+150+my/3,zplayer+(Sin(ma#+90)*200),1 PointEntity camera,pers UpdateWorld CameraZoom camera,zoom# ;DrawImage(fen, GraphicsWidth()/2-128, GraphicsHeight()/2-128 );рисует картинку tt=MilliSecs() fps#=1000/(tt-ttold) ttold=tt Text 0,0,"FPS: "+Int(fps#) Text 0,10,"Увиличение "+zoom# Text 0,20,"Положени по X "+xplayer# Text 0,30,"Положени по Y"+yplayer# Text 0,40,"Положени по Z "+zplayer# MoveMouse width/2,height/2 RenderWorld Flip Wend End
|
|
| |
uOCuqp_kab3on | Дата: Суббота, 29 Ноября 2008, 20:21 | Сообщение # 2 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| народ вот такой вопрос есть модель человека без головы и сама голова спарентил голову в блице к человеку без головы и зделал вот такой вод код Code myspd#=MouseYSpeed()*0.25 mxspd#=MouseYSpeed()*0.25 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 campitch#=EntityPitch(head)+myspd# If campitch#<-4 Then campitch#=-4 If campitch#>7 Then campitch#=7 RotateEntity head,campitch#,EntityYaw(head)-mxspd#,EntityRoll(head) и вот в чом вопрос я сделал так чтобы когда смотреш вверх и вниз то поворачивалась вверх и вних голова ,а тело стояло а мне надо так чтобы когда смотреш вверх вниз то поворачивалаь голова ,а когда смотриш влево и вправо то тело поворачиволось вместе с головой ДА И ПАСКРИПТУМ :НАРОд НЕ РУГАЙТЕСЬ ПОЖАЛУЙСТО ВОТ ЗА ЧТО ЗА ТО что ОФФТОП
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Суббота, 29 Ноября 2008, 20:23 | Сообщение # 3 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| да и по теме могу сказать ОДНО ВЕНОВАТЫ КОЛЛИЗИИ !!
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Воскресенье, 30 Ноября 2008, 06:37 | Сообщение # 4 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| entityparent head,player
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
Optimus | Дата: Воскресенье, 30 Ноября 2008, 07:16 | Сообщение # 5 |
 Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Родительской привязкой работать небудет...,будет токо действовать когда поворачиваешь вправо,влево,сделай анимацию для головы как она вверх поворачивается
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Optimus | Дата: Воскресенье, 30 Ноября 2008, 07:17 | Сообщение # 6 |
 Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| И то тогда будет баг,голова будет частично отрезаться
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
uOCuqp_kab3on | Дата: Воскресенье, 30 Ноября 2008, 07:25 | Сообщение # 7 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| да мне про другое, вот код выше который я дал ето чтобы голова смотрела вверх и вниз а мне надо чтобы когда смотриш влево и вправо то поворачивался плаер
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
Optimus | Дата: Воскресенье, 30 Ноября 2008, 07:44 | Сообщение # 8 |
 Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Что сделал с головой попробуй сделать с телом,а голова за телом пойдет,ведь есть привязка
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Optimus | Дата: Воскресенье, 30 Ноября 2008, 11:17 | Сообщение # 9 |
 Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Ему надо чтобы когда поворачиваешь вправо или влево голову,то поворачиволось и тело
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
df | Дата: Воскресенье, 30 Ноября 2008, 20:08 | Сообщение # 10 |
 Продвинутый
Группа: Участники
Сообщений: 144
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Легион Темной Лисы(LDF)
Проектов: 1
| вот медия с исходником.
|
|
| |
Optimus | Дата: Понедельник, 01 Декабря 2008, 17:50 | Сообщение # 11 |
 Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Качну посмотрю чо к чему...
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
uOCuqp_kab3on | Дата: Вторник, 02 Декабря 2008, 09:43 | Сообщение # 12 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| не Collisions type_player,type_wall,3,2 ,а Collisions type_player,type_wall,2,3
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Вторник, 02 Декабря 2008, 09:50 | Сообщение # 13 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| слушай и у тебя прыжок мудреный сделай проше translateentity pers,0,-1,0 if keyhit (57) translateentity pers,0,2,0 вместо pers ставь имя ТВОЕГО ГЛАВНОГО героя!
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Вторник, 02 Декабря 2008, 09:52 | Сообщение # 14 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| нащот влипания я загрузил свою *3дс модель и все норм со стеной следовательно ме кажеться что все дело в МД2
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
df | Дата: Вторник, 02 Декабря 2008, 15:41 | Сообщение # 15 |
 Продвинутый
Группа: Участники
Сообщений: 144
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Легион Темной Лисы(LDF)
Проектов: 1
| спасиб. понизь придел опускания и посмотри че получится(как избавится от этого лага с камерой) и как сделать прицел такой что бы он действовал противофазе (камера поднимается прицел опускается. и не втыкался в пол и стены)
Сообщение отредактировал df - Вторник, 02 Декабря 2008, 15:48 |
|
| |
КАБЗОН | Дата: Вторник, 02 Декабря 2008, 16:24 | Сообщение # 16 |
Группа: Гости
| можеш сказать зачем тебе такой тяжолый двиЖОк Глюченый ещо?вот заюзый неглюченый)) Code Graphics3D 1280,1024 ,32,1 Global sky=mAKESKYBOX("sKY/") Const T_player=1 , T_terrain=2,T_zdan=2 player=LoadAnimMesh("man.3ds")
PositionEntity player,0,40,0
Function MakeSkyBox( file$ )
m=CreateMesh() ;front face b=LoadBrush( file$+"sky_fr.JPG",49 ) s=CreateSurface( m,b ) AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0 AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;right face b=LoadBrush( file$+"sky_ri.JPG",49 ) s=CreateSurface( m,b ) AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0 AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;back face b=LoadBrush( file$+"sky_bk.JPG",49 ) s=CreateSurface( m,b ) AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0 AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;left face b=LoadBrush( file$+"sky_le.JPG",49 ) s=CreateSurface( m,b ) AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0 AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;top face b=LoadBrush( file$+"sky_up.JPG",49 ) s=CreateSurface( m,b ) AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0 AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b
ScaleMesh m,150,150,150 FlipMesh m EntityFX m,9 EntityOrder m,10 Return m End Function ScaleEntity SKY,150,150,150 Camera=CreateCamera(player) PositionEntity camera ,0,4,-8
CameraRange Camera,0.1,100000 Light=CreateLight(1,Camera) LightRange Light,5 terrain=CreatePlane() tex=LoadTexture("terrain1.jpg") energy=LoadImage("enege.jpg") life=LoadImage("Life.jpg") zdan=LoadAnimMes h("zdan1.3ds") PositionEntity zdan,0,5,0 ScaleTexture tex,2,2
EntityTexture terrain ,tex EntityType player,T_player EntityType terrain, T_terrain EntityType zdan,T_zdan Collisions T_player,T_terrain,2,3 Collisions T_player,T_zdan,2,1 While Not KeyHit(2) TranslateEntity PLAYER,0,-0.4,0 mxspd#=MouseXSpeed()*0.25 myspd#=MouseYSpeed()*0.25 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 campitch#=EntityPitch(PLAYER)+myspd# If campitch#<-85 Then campitch#=-85 If campitch#>85 Then campitch#=85 RotateEntity player,campitch#,EntityYaw(player)-mxspd#,EntityRoll(player) If KeyHit(17) Then Animate player,1,2 If Not KeyDown(17) Then Animate player,1,0 If KeyDown(17) MoveEntity player,0,0,.2 If KeyDown(31) MoveEntity player,0,0,-.2 If KeyDown(32) MoveEntity player,.2,0,0 If KeyDown(30) MoveEntity player,-.2,0,0
If KeyDown(42) MoveEntity player,0,0,.4
If Not KeyDown(42) MoveEntity player,0,0,.0
RenderWorld
UpdateWorld
DrawImage energy,1020,975 DrawImage life,1020,1000 Flip CameraRange CAMERA,00.1,100000
Wend End
|
|
| |
df | Дата: Вторник, 02 Декабря 2008, 18:43 | Сообщение # 17 |
 Продвинутый
Группа: Участники
Сообщений: 144
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Легион Темной Лисы(LDF)
Проектов: 1
| Нужно. Глючит тока периодический мыш при повороте(но скорее сам комп). И Мне проще написать самому (методом проб и ошибок, и допросов народа) чем понять как пользоваться уже написанным чужим кодом(мне все равно что на это скажет народ).
|
|
| |
Прохожий | Дата: Вторник, 02 Декабря 2008, 19:16 | Сообщение # 18 |
Группа: Гости
| Quote (df) и как сделать прицел такой что бы он действовал противофазе (камера поднимается прицел опускается. и не втыкался в пол и стены) Команда какая-то есть, которая переводит координаты объекта, в экранные, и курсор будет всё время на объект нацелен(он же у тебя картинкой сделан?) CameraProject вроде.
|
|
| |
df | Дата: Вторник, 02 Декабря 2008, 22:01 | Сообщение # 19 |
 Продвинутый
Группа: Участники
Сообщений: 144
Награды: 0
Замечания: 0%
Статус: 
Профессия: Программист
Команда: Легион Темной Лисы(LDF)
Проектов: 1
| Это ваше нарисовано как образец. а так должна быть сферой(чтоб кализия дейтвовала не неё(через не уровень не проходил)) а поверх привязать спрайт и "сделать всегда повернут к камеры"
|
|
| |
uOCuqp_kab3on | Дата: Среда, 03 Декабря 2008, 12:31 | Сообщение # 20 |
 Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: 
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| тема подходящяя ) ну вопщем народ помогите коллизию постаивть есть меш а в меше несколько обьектов в данном случае зданий с мешом неставица,а если не создовать меш а воспользовацо командой createSphere() то колизия ставицо ПОМОГИТЕ
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |