forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   RPG (http://forum.boolean.name/showthread.php?t=2476)

klopmaks 21.01.2007 20:39

Создаю RPG. Вопросы:
1. Нужна система ближнего боя !!!
2. Система характеристик !!!
3. Меню. (простое)
4. Как стирать текст (создать: Text 0,0 "text")
Чтобы выводить задания и.т.д.

Помогите в разработке.
На данный момент готово:
1. Остров и деревья
2. Корабль проплывающий мимо.
3. Передвижение
Буду работать :)

Как сделать камеру от 3 лица ???
У меня просто создается камера и привязывается к игроку .

alcoSHoLiK 21.01.2007 20:53

Re: RPG
 
Если я тебя правильно понял про систему характеристик, в ФАКе есть тема, как ее сделать.

ЛысыЙ_Чук-Иванчук 21.01.2007 20:55

Цитата:

Создаю RPG. Вопросы:
1. Нужна система ближнего боя !!!
Ну здесь делай как в FPS :)
Цитата:

2. Система характеристик !!!
Что ты имееш в виду???
Цитата:

3. Меню. (простое)
В простом меню нет ничего(вообще ничего) сложного!!!
Цитата:

4. Как стирать текст (создать: Text 0,0 "text")
Ну тут все зависит от того как иммено тебе надо..
Цитата:

Помогите в разработке.
На данный момент готово:
1. Остров и деревья
2. Корабль проплывающий мимо.
3. Передвижение
Буду работать :)
Работай так как делать тебе ешоооо.....

Цитата:

Как сделать камеру от 3 лица ???
У меня просто создается камера и привязывается к игроку .
PositionEntity cam,0,10,-10 :)
Если хочеш круче прейдется парится;) особенно с камерой...

Chrono Syndrome 21.01.2007 21:06

Re: RPG
 
Цитата:

1. Нужна система ближнего боя !!!
Ну так пиши, коли нужна. Или, может, ты думаешь, что мы ее тут сейчас за тебя делать начнем ?

Цитата:

2. Система характеристик !!!
Всмысле ?

Цитата:

4. Как стирать текст (создать: Text 0,0 "text")
Вообще-то если игра у тебя в 3D, то все 2D автоматически стирается при RenderWorld...

klopmaks 21.01.2007 21:06

1.Что такое ФАК ???
2.Система ближнего боя нужна как если player подошёл к dragon , и там какаята кнопка нажата , то дракону жизни отнимаются. И чтобы дракон тебя атаковал когда ты близко. У меня с боем не вышло. И FPS я не создавал ;)
3. Как сделать текстовое меню типа <Старт>
<Выход>
4. Плана: Text 0,450, "Health: " + health
Как такое стереть ???

Дайте совет :dontknow:

Ну типа поднялся Левел и выбрать что повысить , или пусть сама повышает и чтобы ето влияло на атаку.
Нет , можешь не писать мне систему ближнего боя. Можешь помочь мне написать !

Chrono Syndrome 21.01.2007 21:20

Re: RPG
 
Цитата:

Как сделать камеру от 3 лица ???
У меня просто создается камера и привязывается к игроку .
Ну, допустим:
Код:


CamerePivot = CreatePivot(Player)
Camera = CreateCamera(CameraPivot)
RotateEntity(CameraPivot, твой_любимый_угол, 0, 0)
MoveEntity(Camera, 0, 0, -желаемое_удаление)

Цитата:

Нет , можешь не писать мне систему ближнего боя. Можешь помочь мне написать !
Оно, конечно, огромное спасибо за разрешение, но у меня, увы, своих дел хватает.

Цитата:

3. Как сделать текстовое меню типа <Старт>
<Выход>
Можно так:
Код:

Cls
Print("Текстовое меню:")
Print("")
Print("1. Start")
Print("2. Quit")
Print("")
Repeat
Choice = Int(Input("YourChoice: "))
Until Choice >=1 and Choice <=2
Select Choice
;Ну и так далее...


klopmaks 21.01.2007 21:26

Окей, как показать рисунок на екране , а потом чтобы он исчез.
Типа нажата кнопка m показать , а нажата ещё раз убрать ???

Что такое ФАК ???
Никто не знает где найти модели .b3d , .md2 и другие которые поддержывает блиц ?!

Chrono Syndrome 21.01.2007 21:33

Re: RPG
 
Цитата:

Что такое ФАК ???
Уууу... Сие тайна великая есмь. (C)

Черный крыс 21.01.2007 21:45

Re: RPG
 
Цитата:

Что такое ФАК ???
Часто задаваемые вопросы и ответы. Смотри ветку "FAQ"

Chrono Syndrome 21.01.2007 21:55

Re: RPG
 
Цитата:

Окей, как показать рисунок на екране , а потом чтобы он исчез.
Типа нажата кнопка m показать , а нажата ещё раз убрать ???
Ну, допустим так:
Код:


If KeyHIt(50)
if DisplayImage = 1 then DisplayImage = 0 else DisplayImage = 1
End IF
If DisplayImage = 1 then DrawImage(Image, X, Y)


klopmaks 21.01.2007 22:09

Re: RPG
 
А как убрать рисунок ???

Тарас Шевченко 21.01.2007 22:16

Re: RPG
 
Насчет характеристик: http://www.boolean.name/showthread.php?t=1414

klopmaks 21.01.2007 22:20

Re: RPG
 
Что-то не получается :wallbash:

Chrono Syndrome 21.01.2007 22:21

Re: RPG
 
Цитата:

Сообщение от klopmaks
А как убрать рисунок ???

А он чего, правда не убирается ?

klopmaks 21.01.2007 22:49

Re: RPG
 
И не появляется и не убирается ???
Никак !!!

alcoSHoLiK 22.01.2007 00:47

Re: RPG
 
Chrono
Предупреждение. Если хочешь помочь, сарказм с иронией оставь при себе. Если помочь не хочешь, вообще не надо тогда отвечать.

HolyDel 22.01.2007 01:38

Re: RPG
 
пример Chrono должен работать.
единственное, это все надо вбить между renderworld и flip.

просто совет:
RPG скорее всего непотянеш. Тетрисы и Арконоиды делать посылать не буду, но сделай для начала простой шутер или что - то попросче. RPG - один из самых тяжелых жанров.

Chrono Syndrome 22.01.2007 12:24

Re: RPG
 
Цитата:

RPG скорее всего непотянеш.
Он, помниться, раньше FPS делать хотел (http://boolean.name/showthread.php?t=2376). Теперь, вот, за RPG взялся. Скоро, видать, убийцу GTA писать начнет :lol: ... (2Alco: это не сарказм а просто анилиз тенденций )

mr.DIMAS 22.01.2007 16:56

Re: RPG
 
2klopmaks - Короче рисунок убирается Командой Cls. Просто вписываешь эту команду в главный цикл и все! Если не понял то вот код примера

Graphics1024,768,32,1

Repeat
Cls
Text
MouseX(),MouseY(),"+"
Flip
Until
KeyHit(1)
End

или исходник


klopmaks 22.01.2007 18:28

Re: RPG
 
Я FPS доделал ;) , хотя он и не убийца ГТА но так неплохо.
А теперь взялся за РПГ или что-то схожее с етим :)

Chrono Syndrome 22.01.2007 18:50

Re: RPG
 
Цитата:

Сообщение от klopmaks
Я FPS доделал ;) , хотя он и не убийца ГТА но так неплохо.
А теперь взялся за РПГ или что-то схожее с етим :)

Вопрос навскидку: а ты знаешь, что, собственно, обозначают эти аббревиатуры - FPS и GTA ?

klopmaks 22.01.2007 20:05

Re: RPG
 
Можут быть нет , а может да.

ЛысыЙ_Чук-Иванчук 22.01.2007 20:34

Re: RPG
 
GTA- Это серия самых прикольных игр на сегоднишний день( плохо там нет сети)
P.S. А по мне FPS+RPG=CS:)

Timon 22.01.2007 20:42

Re: RPG
 
а ты об ИИ(искуственый интелект) думал? если ты взялся за разработку РПГ не зная что такое ФАК или ФПС... то далеко не пойдёшь, да и для себя мало полезного узнаешь(опыта всмысле). найди себе чего-нибудь полегче! и тетрис тоже не для начинающих, я до сих пор не имею представления как его сделать. самый простой вариант - какой-нить шутер, или переделывание стандартных семплов блица!
П.С. это всего лишь совет... решать тебе!

klopmaks 22.01.2007 20:56

Re: RPG
 
Ето такой вапрос , нужно чтобы при столкновении с чуваком выдавался текст. У меня вот-так и не работает:
If EntityCollided(player,TypeMis) Then Text 100,0,"Hello"
Кто знает почему ???

ЛысыЙ_Чук-Иванчук 22.01.2007 22:21

Re: RPG
 
Цитата:

Ето такой вапрос , нужно чтобы при столкновении с чуваком выдавался текст. У меня вот-так и не работает:
If EntityCollided(player,TypeMis) Then Text 100,0,"Hello"
Кто знает почему ???
Причин море, код в студию.:)

alcoSHoLiK 22.01.2007 22:52

Re: RPG
 
Text тра-та-та нужно писать после RenderWorld и перед Flip. Во-вторых, если оба объекта движутся? нужно прописать коллизии соответствующие до цикла. Здесь это обсуждалось.

Raiter 22.01.2007 23:00

Re: RPG
 
хехе...

трудный случай... :)

характеристики имхо реализовать элементарно :)
или через типы или писать их в файл :)

и вообще всё что ты спрашиваеш - элементарно! рано тебе писать рпг!

зыж влад, гта - сакс :) (имхо)
ззыж а твоего имхо я не заметил ;)

klopmaks 23.01.2007 18:16

Re: RPG
 
Не рано, нормально. Я FPS Написал теперь за ето взялся !!!

Chrono Syndrome 23.01.2007 18:20

Re: RPG
 
Цитата:

Я FPS Написал теперь за ето взялся !!
А посмотреть на этот самый FPS можно ?

klopmaks 23.01.2007 20:16

FPS писал по уроку , от impersonalis: http://www.boolean.name/showthread.php?t=15

Может кто-то может помочь мне ???
Нужна идея ближнего боя , кто может подсказать ?!

Как зделать так чтобы игрок двигался в точку клика мышки ???
Желательно попроще.

klopmaks 23.01.2007 20:41

Re: RPG
 
Ну и внес немного своих изминений !!!
Вопрос: Как сделать вызов вот етого инвентаря и его закрытие ?!
Инвентарь:http://andreichyk.narod.ru/

Chrono Syndrome 23.01.2007 20:46

Re: RPG
 
Цитата:

Ну и внес немного своих изминений !!!
Перечисли, будь добр.

klopmaks 23.01.2007 20:55

Re: RPG
 
1. Загрузил Модели домиков.
2. Шар заменил на солдат + пушка
3. Игроку пушку (модель)

P.S Ну ето была одна из моих первых игр !
P.P.S Если вы все мне так помогать будете , то лучше закройте тему :ok:

alcoSHoLiK 24.01.2007 00:08

Re: RPG
 
Дело не в том, что трудно помочь. Все дело в том, что программист, а в данном случае разработчик, он так потому и зовется, что он может создавать программы, в данном случае игры, в отличие от других смертных.
Естественно, что чаще всего программистами становятся, а не рождаются. Но для этого необходимо пройти нелегкий путь, который полон граблей и прочих неприятностей. Никто не имеет права упрекать тебя в незнании, но не кажется ли тебе, что ты слабо себе представляешь весь процесс создания РПГ-игры, что это может оказаться тебе не под силу?
Возьмем, например, школьный курс математики. От класса к классу ученики изучают все новые и более сложные темы, решают новые типы задач и т.д. от простого к сложному. Если попросить семиклассника взять интеграл от функции sin(x), это приведет его в легкое замешательство.
Что я хочу сказать, это то, что начинать нужно с простого и стремиться к более сложному. Это не значит, что нельзя задавать вопросы, наоборот. Но вопросы будут уже другие, не столь специфические. Набираясь опыта, ты уже через некоторое время сам сможешь написать тот же инвентарь, так как его реализация не требует каких-то великих познаний языка, нужна лишь логика - логическое мышление. Ведь в математике как - тебе дают метод, а на экзамене задачи нужно решать самому, знаю только метод. В программировании та же история: язык программирования - это метод. Он имеет свои премудрости, которые являются необходимыми, про них нужно спрашивать. А вот каждая программа - это та же задача. Это программист уже должен постараться решить сам, зная метод. Надеюсь, аналогия понятна.

Просто совет, сделай для начала игру, процесс создания которой ты можешь полностью описать. В дальнейшем у тебя будет больше знаний и возможностей, но начальный этап в большинстве случаев просто необходим.

klopmaks 24.01.2007 20:51

Вообще я не планировал делать RPG с супер инвентарем , системой анимированого боя и.т.д А если бы вдруг переклинило то наверно собрал команду для етого. Но как назвать свое творение не знаю , а оно похоже на RPG. Может ето и не будет РПГ , а например какойто action/quest .
Я не супер разработчик игр на блице поетому пролшу помощи на те вопросы которые меня интересуют. Может-быть у меня получится игра схожая на РПГ. Но даже если и нет то я приобрету много опыта и смогк разрабатывать более сложные проекты ;)

P.S Может кто-то сможет ответить на интерисующие меня вопросы :)

Хм, никто не знает конвертор MilkShape3D в .b3d ???
Ссылка на мою "игру" :http://flyfolder.ru/935552

m - карта
w - ветер

Музыка и карта взяты у KRIHAT , пока демо , потом изменю .

........................

Пытаюсь развернуть модель перса командой:
RotateEntity player,0,180,0
А камера разворачивается за ним ???
Вот код перса и камеры:
Global player = LoadMesh("PEASANT.B3D")
ScaleMesh player,0.1,0.1,0.1
PositionEntity player,5, 0, 5
RotateEntity player,0,180,0
TurnEntity player,0,0,0
EntityRadius player, 25
EntityType player, TypePlayer



camera=CreateCamera(player)
PositionEntity camera,0,10,-20
CameraRange camera,0.1,4000
CameraFogMode Camera,1
CameraFogColor Camera,10,10,50
CameraClsColor Camera,10,10,50
CameraFogRange Camera,10,1000
:dontknow:

Timon 24.01.2007 22:08

Re: RPG
 
Rotate-команда разварачивает ентити по мировой оси(наверно ты это знал :) ) Turn-поворачивает ентити по его собственной оси.
в коде ты разварачиваешь ентити до создания камеры, т.е камера чилдиться к уже развёрнутому ентити, и ей глубоко пофигу как был развёрнут ентити до етого!!!
либо ты в главном цикле его вертишь, либо пока незнаю чё..... :)
посмотри в семплах - castle.bb, там камера тоже "навароченая"

klopmaks 24.01.2007 22:29

Re: RPG
 
Спасибо , не знал !
А на тему движения в сторону клика мышки ?

HolyDel 25.01.2007 01:34

Re: RPG
 
насчет перемещения обхекта в точку щелчка мыша
Код:

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

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

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

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


klopmaks 26.01.2007 12:50

Re: RPG
 
Он двигается вечно , а кликом мышки указывается куда !!!
Тоесть в твоем примере все ОК , а когда вставил в свою программку то плохо :dontknow:

HolyDel 27.01.2007 02:01

Re: RPG
 
ну шо я могу сказать? весь код в студию!

vadya 31.01.2007 19:54

Re: RPG
 
я тоже начинающий программер и мне не понятно каманда пик и все что с ним связано напишите ПОЖАЛУЙСТА определение и когда он используется

c0mrad 31.01.2007 20:02

Re: RPG
 
http://www.boolean.name/showthread.p...%E0%ED%FC %FF

vadya 09.02.2007 11:31

Re: RPG
 
HolyDel,а как сделать так чтобы камера следила за кубом но не поворачивалась с кубом

mr.DIMAS 09.02.2007 16:48

Re: RPG
 
Vadya ты имеешь ввиду CameraProject? если так то, он для того чтобы в 3д мире текст или изображения были около объекта т.е на 2д плоскости помещается текст и он полностю имеет координаты 3д объекта.
Надеюсь правильно объяснил

vadya 09.02.2007 17:28

Re: RPG
 
я имею ввиду как привязять камеру к кубу(смотри пример от холидел)
а то если сделать так cam=CreateCamera(cub) то камера поворачивается с кубом и не понятно куда куб двиается

mr.DIMAS 09.02.2007 17:48

Re: RPG
 
ага понял. значит так, ты же делаешь рпг так ведь? воть что делаешь так
PositionEntity cam,EntityX(Cub),10,EntityZ(Cub)-20 и суешь это все в цикл.
Я все проверил должно работать.

vadya 09.02.2007 21:40

Re: RPG
 
все спасиба работает. еще один маленкий вопрос:как сделать так чтобы позиция игрока т.е. его координаты на данный момент выводилось на экран .очень надо

Diplomat 09.02.2007 21:45

Re: RPG
 
Крайне грубо говоря:
Код:

Locate 10,10
Print EntityX(Player)
Print EntityY(Player)
Print EntityZ(Player)

То же самое, но менее предпочтительно:
Код:

Text 10,10,EntityX(Player)
Text 10,20,EntityY(Player)
Text 10,30,EntityZ(Player)

Учи матчасть! Хелп твой лучший друг.

vadya 09.02.2007 21:55

Re: RPG
 
все в поряде круто!!!а этот код показывает местоположение игрока относительно места создания игрока или по глобальной системы координат
и еще дайте пожалуйста описание команды
Locate че он делает для чего он используется?

mr.DIMAS 09.02.2007 22:44

Re: RPG
 
Значится так команда Locate используется (как я понял из справки) для того чтобы при вводе данных ( команда Input - ввод, Print - распечатать на экране ) позиционировать текст по Y и Х в нужном месте.

vadya 10.02.2007 13:59

Re: RPG
 
а как можно сделать так чтобы камера поворачивалась вокруг игрока как у лейто в его конопле. я попробовал сделать так If MouseDown(2)Then RotateEntity cam,MouseY()*.5,MouseX()*-.5,0 но результат получился не очень хороший

Diplomat 10.02.2007 14:36

Re: RPG
 
2 vadya: Извини конечно, но тебе нужно идти изучать стандартные семплы Блица и его же встроенную справку-Хелп. Причём основательно, иначе "дела не будет"(с). Вопросы, что ты задаешь- ниже уровня грунтовых вод. В крайнем случае- попробуй для начала воспользоваться Поиском по форуму. Хотя, сразу предупрежу, если вопрос про RotateEntity уже задавался, то спрашивать для чего нужно Locate не додумался еще никто.
И дело не в моей личной нелюбви отвечать на подобные вопросы. Просто полное отсутствие знаний и неумение учиться приводит как правило к единственному резултату: к невозможности создания даже простейших программ, независимо от оказания или неоказания помощи со стороны.

P.S. я мог бы в очередной раз посоветовать купить самоучитель по QBasic и изучить основы программирования, но по опыту знаю, что писать программы, не делая при этом мега-проЭкта добровольно могут далеко не все новички. А делать мега-проЭкт на КуВасике- это даже для новичков слишком.
:)

vadya 10.02.2007 15:39

Re: RPG
 
основы программирования я хорошо знаю, я занял на республиканской олимпиаде по программированию на паскале 20-е место среди почти полторы тысячи участников. а блитз я начал изучать только месяц назад.
просто я не очень привык что еще есть координаты, меши и т.п. ведь на пакале этого всего нету вот и спрашиваю про все новые для меня команды которые до этого не встеречал.вы говорите надо хелп изучать я и изучаю хотя и англисский не очень хорошо знаю но ведь там где то примерно 500 команд и надо целые дни напролет сидеть и изучать их чтобы научится их использовать а у меня времени просто на это нету еще к еге надо готовиться и я изучаю все подрят и пока я еще добрался только до буквы F а пока я дойду до конца еще много времени надо потратить а ведь еще и хочется игры делать а не команды изучать вот все я и совмещаю

vadya 10.02.2007 18:59

а я купил книгу Маниша Сети за 450р. и там нечего толкового не окозалось да еще в этой книге про 2д игры написаны короче полный облом и решил не покупать больше книг по теме блитз я лучше буду учится в форумах и то толку будет больше и за бесплатно.

из-за чего у меня не загружается текстуры у которых не соответствует разрешение 2^Х например тот же рисунок с разрешением 256х256 загружается а 256х300 нет. ответьте пожалуйста.

jimon 11.02.2007 09:25

Re: RPG
 

иметь знания, и уметь использовать их ето разные вещи

mr.DIMAS 11.02.2007 10:23

Re: RPG
 
vadya делается это вот так:
Graphics3D1024,768,32,1
lit=CreateLight()
cub=CreateCube()
cam=CreateCamera(cub)
PositionEntitycam,0,10,-30
Repeat
mxs=MouseXSpeed()
mys=MouseYSpeed()
TurnEntitycam,0,mys,0
MoveMouse320,240
UpdateWorld
RenderWorld
Flip
Until
KeyHit(1)
End
если поподробнее то сначала создается куб, затем камера привязанная к кубу затем в цикле юзаются переменные mxs и mys (переменные скорости мыши по осям ) затем при их помощи вращается камера относительно мыши.
Надеюсь помог

vadya 11.02.2007 22:32

Re: RPG
 
спасибо. но возникла еще одна проблема: этот код который ты мне дал не работает со строчкой PositionEntity cam,EntityX(Cub),140,EntityZ(Cub)-20 попробовал сделать так
If Not MouseDown(2) PositionEntity cam,EntityX(Cub),140,EntityZ(Cub)-20
If MouseDown(2) Then
MoveMouse GraphicsWidth()/2, GraphicsHeight()/2
TurnEntity campivx,0,-mx/10,0
TurnEntity campivy,my/10,0,0
EndIf
но почему то не работает

mr.DIMAS 11.02.2007 22:59

Re: RPG
 
короче вот аттач тебе в руки

vadya 12.02.2007 12:25

Re: RPG
 
спасибо конечно но это не то. я разобрался с твоей помощью и со слеженем камеры за игроком и с движением игрока в точку пика но я никак не могу соеденить вместе эти коды.
ЗЫ.никто не знает чтоли из-за чего у меня не загружается текстуры которые не имеют разрешения 2^х.может быть это из-за железа или дров?видеокарта:NVidia GeForce 6200

klopmaks 12.02.2007 20:39

Re: RPG
 
Спасибо :super:
Много чего узнал :teach:

vadya 13.02.2007 14:06

Re: RPG
 
ну помогите с камерой ПОЖАЛУЙСТА только это осталось сделать в моей РПГ

HolyDel 14.02.2007 02:35

Re: RPG
 
излогайте всю проблему пожалуйста.
камера привязанна к игроку и должна крутиться юез игрока (т.е. просто менять обзаор).
тогда так:
Код:

До главного цикла
campiv=createpivot(player)
cam=createcamera(campiv)
в главном цикле

turnentity campiv,mouseyspeed(),mousespeed(),0,0

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

P/S/ возможно прийдется поставить минус куда нибудь.

vadya 14.02.2007 13:17

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 все работает но не понятно куда двигается куб т.к. камера поворачивается вместе с кубом .вот моя проблема и я уже незнаю как это исправить ну помогите пожалуйста


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot