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

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

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

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

Ответ
 
Опции темы
Старый 02.10.2005, 18:22   #61
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Все ресурсы качайте с самой первой страницы этой темы!
(Offline)
 
Ответить с цитированием
Старый 02.10.2005, 19:55   #62
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
хз, у меня камера нормально крутится, вроде без сбоев...

чтоб сделать чтоб камера смотрела не на робота, нужно создать объект на который бы она смотрела, а еще лучше пивот (см код)
;tipy dlya kolliziy
Const robotType = 1
Const levelType = 2
Const boxType = 3
Const cameraType = 4



Graphics3D 1024,768,32,1

;shrift pokrupnee
font = LoadFont ("arial cyr",20)
SetFont font

l = CreateLight()
RotateEntity l, 0, 45, 45

level=LoadMesh ("MAPS\TUR.3ds")
grunt=LoadTexture("Panels.jpg")
EntityTexture level,grunt
FreeTexture grunt

PositionEntity level,0,-7,0
;typ dlya kollizii
EntityType level,levelType

robot = LoadAnimMesh( "ROBOT\robotic.3ds" )
LoadAnimSeq robot, ("ROBOT\running.3ds" )

ScaleEntity robot,0.5,0.5,0.5
;radius dlya kollizii
EntityRadius robot, 5
;typ dlya kollizii
EntityType robot,robotType


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
rcam=createpivot(robot)
positionentity rcam,0,60,0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

cam = CreateCamera(rcam)
;radius dlya kollizii
EntityRadius cam,5
;typ dlya kollizii
EntityType cam,cameraType

CameraRange cam,0.01,2000
CameraFogColor cam, 0,128,255 *
CameraFogRange cam, 1,1000 *


PositionEntity cam, 0, 15, 120
;RotateEntity cam, 0, 5, 11



cub=CreateCube()
PositionEntity cub,30,5,10

cone=CreateCube()
PositionEntity cone,5,5,10


;bol'shoy kubik
cub3=CreateCube()
ScaleEntity cub3 ,10, 10, 10
PositionEntity cub3,20,5,-30
;typ dlya kollizii
EntityType cub3,boxType


;ystanovka pickov, eto dlya proverki pryamoy vidimosti
EntityPickMode cub,3
EntityPickMode cone,3
EntityPickMode cub3,2
EntityPickMode level,2

;ystanovka kolliziy
Collisions robotType,levelType,2, 3
Collisions robotType,boxType,2, 2

Collisions cameraType,levelType,2, 3
Collisions cameraType,boxType,2, 2




Repeat

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;povorot kamery na robota
PointEntity cam,rcam


angy#=MouseYSpeed()*0.002
TranslateEntity cam ,0,angy, 0
angx#=-MouseXSpeed()*0.5
TurnEntity robot,0,angx,0
angz#=MouseZSpeed()
MoveEntity cam,0,0,angz
MoveMouse GraphicsWidth()*0.5, GraphicsHeight()*0.5


;dvigaem kamery
If KeyDown(44) Then TranslateEntity cam,0,-0.5,0
If KeyDown(45) Then TranslateEntity cam,0,0.5,0
If KeyDown (46) Then MoveEntity cam,0,0,-1
If KeyDown(47) Then MoveEntity cam,0,0,1

;dvigaem robota
If KeyDown(208) Then MoveEntity robot,0,0,1
If KeyDown (200) Then MoveEntity robot,0,0,-1
If KeyDown (203) Then TurnEntity robot,0,1,0
If KeyDown (205) Then TurnEntity robot,0,-1,0



If KeyDown(17) 
MoveEntity robot,0,0,-1 

If KeyDown(17) If AnimSeq(robot)=0 Then Animate robot, 1, 0.5, 1, 10 

Else
If AnimSeq(robot)=1 Then Animate robot, 2, 1, 0, 10
EndIf



If KeyDown(1) Then Exit


UpdateWorld
RenderWorld

;-----------------------------------------------------------------------------------------------
If EntityInView(cone,cam) And LinePick(EntityX(cam,True),EntityY(cam,True),EntityZ(cam,True),EntityX(cone)-EntityX(cam,True),EntityY(cone)-EntityY(cam,True),EntityZ(cone)-EntityZ(cam,True))=cone
;esli blize 100, to pishem imya
	If (EntityDistance (robot,cone)<100)
 *CameraProject(cam,EntityX(cone),EntityY(cone),EntityZ(cone))
 *Color 0, 0, 128 :Text ProjectedX#(),ProjectedY#(),"Bordos",1
	EndIf
	
End If *
;====================================================
If EntityInView(cub,cam) And LinePick(EntityX(cam,True),EntityY(cam,True),EntityZ(cam,True),EntityX(cub)-EntityX(cam,True),EntityY(cub)-EntityY(cam,True),EntityZ(cub)-EntityZ(cam,True))=cub
;esli blize 100, to pishem imya
	If (EntityDistance (robot,cub)<100)
 *CameraProject(cam,EntityX(cub),EntityY(cub),EntityZ(cub))
 *Color 0, 208, 0:Text ProjectedX#(),ProjectedY#(),"Wiliams",1
	EndIf
	
EndIf *
;===================================================== *

;gravitaciya
TranslateEntity robot,0,-1,0

Flip
Forever

End
на счет вперед-назад юзай команду RotateMesh и поворачивай на 180 градусов (скорее всего по оси Y)... (RotateMesh поворачивает информацию о расположении точек и плоскостей объекта, на угол положения самого объекта это не повлияет)
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 16:31   #63
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
За всё написанное СПАСИБО, но EntityMesh тоже не помогло. Значит в редакторе 3Д переделовать прейдётся?
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 16:44   #64
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Originally posted by xxxKRIKxxx@Oct 3 2005, 02:31 PM
За всё написанное СПАСИБО, но EntityMesh тоже не помогло. Значит в редакторе 3Д переделовать прейдётся?
RotateMesh !
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 17:03   #65
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Смысле я имел ввиду RotateMesh
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 17:29   #66
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
Originally posted by xxxKRIKxxx@Oct 3 2005, 02:31 PM
За всё написанное СПАСИБО, но EntityMesh тоже не помогло. Значит в редакторе 3Д переделовать прейдётся?
как так не помогло??? это все-равно, что ты в редакторе вовернешь... значит гдето еще стоит мож rotateentity или еще чего, что поворачивает объект... а то получится так, что в редакторе повернешь, а ничего не произошло...

убери все ентити-повороты, и попробуй меш покрутить, как повернешь, потом постепенно добавляй опять все повороты ентити в мире...
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 17:44   #67
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
убери все ентити-повороты, и попробуй меш покрутить, как повернешь, потом постепенно добавляй опять все повороты ентити в мире...
Ну я надеюсь что это точно должно помочь!
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 18:09   #68
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
Originally posted by xxxKRIKxxx@Oct 3 2005, 03:44 PM
убери все ентити-повороты, и попробуй меш покрутить, как повернешь, потом постепенно добавляй опять все повороты ентити в мире...
Ну я надеюсь что это точно должно помочь!
оно всегда помогает, если какаянить ошибка в программе и не знаешь как ее исправить, то начинаешь комментировать учатски программы которые могут иметь дело с этой ошибкой но которые ты уверен, что работают правильно... и после каждого комментария запускаешь программу и смотришь, если ошибка осталась, то еще не дошел до нее, если пропала, значит ты ее только-что закомментировал..
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 03.10.2005, 18:59   #69
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Ура!Свершилось! Я нашёл как исправитьэту проблему. Это был самый простой вариант - повернуть модель в 3Д максе на 180 градусов. Больше кроме этого у меня ни как не получилось!.
(Offline)
 
Ответить с цитированием
Старый 05.10.2005, 15:09   #70
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Есть ещё 1 вопросик. В этом коде у меня есть робот. Когда робот отходит назад, и с зади робота есть какой-то предмет, то камера как и должна по коду не проходит сквозь кубик и остаётся на месте, НО когда робот начинает идти вперёд камера остаётся на том же самом месте, что и после взаимодействия кубика с камерой, Я ЖЕ ХОЧУ, ЧТОБЫ КОГДА РОБОТ НАЧИНАЛ ИДТИ ВПЕРЁД КАМЕРА СТАНОВИЛАСЬ НА ТОЖЕ МЕСТО ГДЕ И СТОЯЛА ДО ВЗАИМОДЕЙСТВИЯ. Чтоб вам было понятней, попробуйте в этом же коде куб3 увеличить в размерах, а потом подойти к нему задом. (НА СТРЕЛОЧКАХ).
(Offline)
 
Ответить с цитированием
Старый 07.10.2005, 04:19   #71
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Люди помогите пожалуста! :'((
(Offline)
 
Ответить с цитированием
Старый 09.10.2005, 09:53   #72
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
МММ, так мне не кто и не помог в этом деле, но я нашёл пример где камера такая, как мне нужна, но там управление под клавой и я не знаю чё надо вырезать из этого кода в мой, чтоб камера у меня в примере была такая же.

Ну вот код. Что надо вырезать от туда чтоб у меня в коде камера была такая же???
(Offline)
 
Ответить с цитированием
Старый 09.10.2005, 10:54   #73
Diplomat
Дэвелопер
 
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений
(для 164 пользователей)
[FLOOD]

2Diplomat: Поручик Ржевский, молчать!
2All: Обратите внимание, а я до сих пор молчу...

2xxxKRIKxxx: RTFI + CD&DooM-i

P.S. Админы, сорри! Не сдержался.

[/FLOOD]
(Offline)
 
Ответить с цитированием
Старый 09.10.2005, 15:17   #74
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Я только вчера прочитал эту тему. Не хотелось придумывать новые функции, так что просто взял камеру из стандартной библиотеки примеров Biltz'а (Blitz3D\Samples\Blitz 3D Samples\MAK\CASTLE\CASTLE.B и переделал твой код под эту камеру.

Совет: Не загромождай основной цикл. Я разделил твою программы на несколько частей. Так код легче читается.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 09.10.2005, 16:09   #75
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
Ну хоть 1 человек ответил нормально! Всё принципе ну ОЧЕНЬ ХОРОШО (конечно код с помощью функций я буду разбирать целую неделю чё с чем взаймидействует), но у меня ну совсем маленький вопрос Почему вверх и вниз камера не двигается?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь Larsus Delphi 14 07.08.2010 13:11
ОООчень нужна помощь. Slepetc PureBasic 6 23.01.2009 21:13
Нужна помощь... Черный крыс PureBasic 2 01.09.2007 17:56
Нужна Помощь johnk Blitz3D 32 22.03.2007 17:33
Нужна помощь! ingko Болтовня 6 23.10.2006 09:58


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


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