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

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

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

Ответ
 
Опции темы
Старый 14.07.2008, 23:09   #1
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Лампочка помогите новичку с b3d

вот минут 15 назад занялся изучением blitz3d
доэтого все копил софт\хелпы и т.п
теперь пытаюсь практиковаться.

очень прошу научить втыкать анимации б3д в игры.
тоесть у меня есть несколько моделей. 1 статична в формате 3дс
второя бежит.б3д

втыкаю спомощью
**=loadanimmesh ("..../статична.3ds") 
loadanimseq "*******/бежит.б3д" 

потом в цикле 
как написать что приусловии нажатия на стрелку врубается анимация бег и модель смещается.? если не нажата то анимация статична 

так? 

if keydown(200) then animate (**,1,1,1,10) end positionentity **,0,0,1 
else enimate (**,1,1,0,10)
??
или нельзя 1 модель в разных форматах втыкать?у меня эти коды не пашут... (

поясните пож )


так вот. нашел код только не весь его понял но суть такова что переделал на

Graphics3D 640,480,32
SetBuffer BackBuffer()
light=CreateLight()
cam=CreateCamera() 
PositionEntity cam, 0, 40, -40
robot=LoadMesh("D:\gamecreating\blitz New\media\running.b3d")
LoadAnimSeq robot, "D:\gamecreating\blitz New\media\stanting.3ds"
MESH=FindChild(robot,"MESH") ; вот эт вычитал с одной статейки. 
;но и имя воспроизводимой анимации должно быть меш, не пашет никак
; ни что 


rx# = 10
rz# = 0
ang = 90

Repeat

 
 PositionEntity robot, rx#, -8, rz# 
 RotateEntity robot, 0, ang + 90, 0 
 PointEntity cam, robot 
 If KeyDown(200)   


 If AnimSeq(robot) = 0 Then Animate robot, 1, 0.5, 0, 10 
  rx# = rx# + Cos(ang) * 0.5 
  rz# = rz# + Sin(ang) * 0.5   
 Else  


  If AnimSeq(robot)=1 Then Animate robot, 2, 1, 1, 10
 End If
 If KeyDown(203) Then ang = ang + 5 
 If KeyDown (205) Then ang = ang - 5








UpdateWorld
RenderWorld

Flip
Until KeyHit(1)
End

очень хочу научиться кодить в блице...
попытайтесь пож понять что тут написано... точнее пока что задать вопросы не могу изза нехватки знаний.
(Offline)
 
Ответить с цитированием
Старый 14.07.2008, 23:20   #2
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Ответ: помогите новичку с b3d

уважаемый, вам надо сначала постичь суть слова "алгоритм".
__________________
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 00:04   #3
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

ничего не понятно дя? (
я неумею вопросы задовать вот и получается белеберда..
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 11:56   #4
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: помогите новичку с b3d

Можно иметь дома стилажи книженций по С++ и иметь в закладках сотни форумов по С++, но при этом его так и не постигнуть.
Чтобы научится выбрось всё кроме блица, открой его примеры и читай, просто читай их, как сказку, как триллер, или комедию Донцовой, а затем представь, что в этой книжке события можно менять, но руководствуясь жёсткими правилами которые на самом деле придают организованности и функционал, просто постигай что значит те строки и меняй их, наблюдая за изменениями.
Так ты постигнешь Блиц и разбудешь в себе хорошего кодера.
А статейки, хм, ну что сказать, мне жаль если как и обычно "появился новенький", со статейками протянул месяца 2, поняв что "это не моё", бросил это дело, а ведь парниша толковый, только вот его не направили и доверится он не желал, и получилось что думал что не его, при этом не понимая что статьи не учат, они дают лишь какую-то информацию которая будет сопровождатся лишней брехнёй, которая вообще не нужна, и забивать голову читателю, обрекая его на прочтение ещё и ещё одной статьи, он думает он учится, а сидит на одной плоскости, в илюзии, что учится.
Жаль..

Если что простите за мою очередную эпипею, но учитывая возрасты и "серьёзность" инструмента которому посвящён форум, приходится заводить именно такую речь..

Те кому нужны уже знают, те кто желают поймут, а те кто не поняли и не желают, ну что сделаешь, "очередной одноразовик", попрыгает и уйдёт..
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
falcon (25.02.2010)
Старый 15.07.2008, 13:30   #5
nuclear-90
AnyKey`щик
 
Регистрация: 24.04.2008
Сообщений: 7
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: помогите новичку с b3d

Полностью поддерживаю MoK'у
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 13:36   #6
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

MoKa
благодарю - чудесный ответ...
я когда то так же учил eathena вские скрипты... чесно говоря было куда проще и понятнее чем сейчас пытался учиться по статьям)
но времени отнимало в разы больше.

впринципе мне от блица надо... эм... незнаю много это или мало но думаю немало -точно ^_^

я хотел переделать star warss jedy academy
модели от туда есть, но я понял что создавать полноценную игру очень долго и трудно, пускай даже и интересно, для новичка наверно слишком нереализуемо. почитал пример кастлс и много что усвоил, но есть одна проблема. я посути все термины понимаю, все легко усвоил. кроме одного. я не понимаю что есть - типы. ну масив бы тож не помешало бы освоить просто я его редко встречаю ) все остальное далось легко. читал кучи статей про эти типы, массивы. пытался в коде понять но все равно не имею представления зачем они и что они)))
а,так сказать, более абстрактно обьяснить никто не может. все статьи сразу начинают обиснять как их , типы, создавать. а это я знаю.

теперь планка про JA снизилась до создания квадратной комнаты в которой можно запрыгивать на выступы, ящики героем а герой бегает и махает мечем..
тут вот тоже вопрос как это делается? все действия персонажа надо зарание анимировать и дальше ставить ту или иную анимацию при том или ином условии? или можно заставлять например двигать персонажа мечем так как было бы неплохо в именно этот момент?
да и вот я так и не понял как воспроизводить костную анимацию. по другому я анимировать в максе не умею...
точнее видил код который как раз хорошо воспроизводит но там есть непонятная мне команда findchild ("тут вроде бы название переменной в которую загрузили анимацию", " а тут название модели")
это то что я понял. как бы я не пытался её использовать - в моем коде она, костная анимация, не пашет.
ну вот хотя б с такими вот вещами помогите. точнее обьясните или подтолкните)))
кастл - замечательный пример но там есть типы которые используются. а они пока мне не понятны...
кажется что с одной стороны я понимаю что делают типы. а с другой абсолютно не понимаю зачем это надо...
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 14:03   #7
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: помогите новичку с b3d

Типы..
Да все когда-то их постигали. Расскажу образно:
К примеру, один тип - это помещение.
Что-либо в помещении - эллемент.
Эллементов может быть неограничено, и каждый эллемент содержит данные, которые объявлены в комнате.
К примеру есть данное - указатель на объект. Объект к примеру кубик или какая нибудь загруженная моделька.
Комнатка преобретает такой вид:
Type TK
Field Entity%
End Type

Каждый эллемент в комнате, имеет своё значение, к примеру в комнате 2 эллемента, у одного в переменной Entity будет указатель на кубик а у друго-го на какуюнибудь модельку.
Т.к. у объекта есть данные позиции, то это уже добовляет понятия где находится эллемент, как повёрнут и т.п.
К примеру эллемент должен падать, а что такое падение, это просто уменьшение глобальной координаты Y, до каких-то пор. Это делается простым перебором всех эллементов в комнатке, и если координата Y объектов (Field Entity), выше нуля, то уменьшаем Y.
Но усложним задачу, и добавим что если Y ниже нуля, то отражаем его, получится эффект подпрыгивания
Но, ведь у каждого эллемента своя координата Y и один может уже отпрыгнуть а другой нет. Значит нужно завести координату скорости по Y:
Type TK
Field Entity%
Field nY#
End Type

Теперь каждый эллемент содержит данное с какой скоростью ему двигатся по глобальной оси Y.
Итак, теперь пробегаемся по всем эллементам комнатки и изменяем nY, просто применяя гравитацию и ускорение падения, но затем делаем проверку, если Y координата объекта ниже нуля, то инвентируем nY (nY=nY*-1), таким образом будет уже не падение а взлёт, и затем прибовляем к координате Y объекта это данное, на которое по прежнему действует гравитация.
Таким образом мы можем накидать множество эллементов и каждое будет прыгать независимо.
Класс (правдо в б3д классом это не назовёшь), можно применять как угодно и эллементы могут нести любые данные какие только будут необходимы. Главный моммент это лёгкость содержания больших мас эллементов с собственными данными, и их просто обновлять перебирая все.

Массив, ну так тут совсем просто (все мы так говорим )
Представь у тебя есть книжка, а в ней есть страницы, на каждой странице информация.
Представь такую ситуацию, у тебя книжка состоит из 128 страниц (предположим), и не забывай что существует и нулевая . Так вот, на каждой странице к примеру строчка (Dim Stranica$(12), и ты можешь просто получить значение переменной обратившись по номеру. К примеру нужна строчка с 20 страницы, вот она: Stranica(20). Это просто переменные но пронумерованные.
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 14:17   #8
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

почитал про тип...эм... так пойду покурю обдумаю... все равно туго входит но я не отступлюсь...)
а мог бы так же обьяснить про JA?))))
просто знать хочеться браться за это или нет...
казуалки делать очень не хочется(хотя все мне твердят что блицы, 3дгейм студии, все это для них впервую очередь. труднее сделать можно только в компании человек 8 )
но если есть модели и анимация так сказать не составит труда....
не ужели код написать будет очень тяжело? *(
тем более что я тут прочитал чтото типо хелпа про конвертер из макса в b3d там есть полезная фишка типа импорт в б3д только скелета. и подгрузка на него уже самой модели что упрощает частоиспользуемые анимации, бега, прыжков и т.п.
тоесть получается что не придется для каждого героя делать свою анимацию. достаточно сохранить стандартный набор скелетов и натягивать на них героев)

так это все к тому что если в плане графики все не выглядет сложно.
реально МНЕ сделать комнату ja ?
для начала даж без ИИ... просто сделать реакцию противника на удар по нему мечем (умирает) всякие там толчки притягивания...
или "сила" это трудно? (
тогда хотя бы просто реакцию на удар мечем)
просто изначально я за блиц взялся изза желания сделать рпг в стиле диабло только в современной эпохе.
мне сказали - забудь...)
решил сделать комнату. неужели вердикт будет тот же?
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 14:29   #9
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

мок если не трудн зайди в асю ))
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 14:31   #10
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: помогите новичку с b3d

Я тебе скажу что и ММО написать - это реально и реализуемо. Но это лишь с технической стороны. А на практике тут более скептичная ситуация.
Дело в том что не в сложности всё упирается, ты можешь сидеть и делать, и что-то будет двигаться, быстрее или медленее, но будет двигатся. Другой вопрос в Воле.. Я могу написать убийцу Кримсонлэнда, я могу написать убийцу контры 1.6, даже CSS могу написать, по способностям я знаю как устроено тот или иной прикол, и это всё реализуемо, в голове всё просто, на практике просто парится время, а на деле это ничего - у меня нет ажиотажа, я не вижу цели, нет воли заставить себя.
Если ты можешь потянуть волей - то ты сделаешь. Ты скажешь да, но ты не знаешь что будет завтра..
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 14:55   #11
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: помогите новичку с b3d

не ужели код написать будет очень тяжело?
Что ты, конечно нет!

я могу написать убийцу контры 1.6
это же просто отлично! позволь поинтересоваться, как бы ты сделал автопостроение ботского путенаха для примера?

falcon я еще не видел ни одного хорошего блицера который бы начал изучение сего инструмента с написания рпг-шки. все мы начинали с тетрисов, арканоидов и прочей прелести. По крайней мере согласись, что
Type Ball
field img,x#,y#,dx#,dy#
End Type
разобрать намного проще чем:
Type Jedi
field ent,csphere
field weapon[10]
field ammo.TAmmo[10]
field en#,dx#,dy#,dz#
field forces#[10]
field keyframe,oldkeyframe,nextkeyframe
field aseq
field omcnx#,omncy#,omncz#
//тут еще пара десятков всяких полей
field shield#,energy#,eat#,sleeping_time#
End Type
реально МНЕ сделать комнату ja ?
конечно! с копипастами - можно сделать за день. чтобы все понять - нужно чуть больше времени. как мне кажется, самая соль в логике - если логка четкая - то и проблем быть не должно никаких
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 15:03   #12
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

с копипастами
обижаешь
я этой шнягай не занимаюсь...

а с типами я разберусь так или иначе в независимости какие примеры придется читать.
будь то
Type Ball
field img,x#,y#,dx#,dy#
End Type
или
Type Jedi
field ent,csphere
field weapon[10]
field ammo.TAmmo[10]
field en#,dx#,dy#,dz#
field forces#[10]
field keyframe,oldkeyframe,nextkeyframe
field aseq
field omcnx#,omncy#,omncz#
//тут еще пара десятков всяких полей
field shield#,energy#,eat#,sleeping_time#
End Typ
и как ты мог заметить меня интересует не только насколько это сложно а ещё и

как это делается? все действия персонажа надо зарание анимировать и дальше ставить ту или иную анимацию при том или ином условии? или можно заставлять например двигать персонажа мечем так как было бы неплохо в именно этот момент?
да и вот я так и не понял как воспроизводить костную анимацию. по другому я анимировать в максе не умею...
точнее видил код который как раз хорошо воспроизводит но там есть непонятная мне команда findchild ("тут вроде бы название переменной в которую загрузили анимацию", " а тут название модели")
я сделаю то что задумал внезависимости сколько уйдет на это времени.
меня интересует всего лиш сколько его понадобится.
вопросы просты: возможно? если да то по каким принципам.
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 15:39   #13
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: помогите новичку с b3d

ни одного хорошего блицера который бы начал изучение сего инструмента с написания рпг-шки.
Я начинал Правда её не написал но научился порядочно много чему.

Но афтору советую всё-таки начать с комнаты...

О скелетной анимации.
Это моя любимая анимация, по верному пути идёшь, товаришч.
Самое простое - пока в максе экспортни модельку с костной анимацией (только Skin, Physique не держится)в b3d (никаких 3ds - он костей не понимает!). В экспортёре ставишь галку Анимэйшн и Бонез (Боне Мешез НЕ надо) и экспортишь.
Запоминаешь как у тебя в максе была названа непосредственно модель персонажа (тот объект, к которому ты применял модюфегатор Skin)
Предположим он назывался "chelovek" (можно кстати и русские буквы юзать) Кроме того обрати внимание это дело чувствительно к регистру! "chelovek"<>"Сhelovek")
Грузишь в Блитзе.

model = LoadAnimMesh("путь к модельке")
Далее анимируеш ИМЕННО тот объект который у тебя заSikn'ен ("chelovek" как мы запомнили выше)
Для этого нужно использовать команду файнд чайлд.
С её помощью ты можешь манипулировать не всей моделькой а отдельными её частями зная их названия в Максе.
Получим указатель на объект "chelovek" :
chel = FindChild(model, "chelovek")
Здесь model - хендл модельки в Блитзе, "chelovek" - имя объекта который мы хотим заполучить.
Итак, анимируем!
Animate chel
Всьо!
Незабудь перед RenderWorld поставить UpdateWorld чтоб анимация работала.
В справке читай описания ф-й которые тебе непонятны.
Там ты узнаешь какие аргументы передавать и т.п.
Например, ты можешь менять скорость воспроизведения анимации в команде Animate (не скажу как, это специально чтобы ты сам полез в справку и посмотрел )
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо ABTOMAT за это полезное сообщение:
falcon (25.02.2010), HolyDel (15.07.2008)
Старый 15.07.2008, 15:49   #14
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: помогите новичку с b3d

ABTOMAT
человечище))))
справку юзал в ней конкретно финд чилд и не понял теперь все ясно)
про скорости типы анимаций знал)))
никаких 3ds - он костей не понимает
поэтому
по другому я анимировать в максе не умею
)
С её помощью ты можешь манипулировать не всей моделькой а отдельными её частями зная их названия в Максе
тоесть выходит я могу именно не воспроизводить анимацию а заставлять обьект "реагировать" на что либо?
и можно ли так же воздействовать не на модель(которая кожа) а на кости? модель тоже будет двигаться?
(Offline)
 
Ответить с цитированием
Старый 15.07.2008, 17:00   #15
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: помогите новичку с b3d

B3D онли

автопостроение ботского путенаха
Что это? по русски плз..
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите новичку срен27 JAVA Micro Edition 7 18.11.2013 19:49
Помогите новичку! Cuatro FAQ 1 07.05.2009 03:02
Помогите новичку ejjj Основной форум 8 23.01.2007 17:09
Помогите новичку _maxim_ 3D-программирование 7 17.09.2006 15:48
Вопросы...помогите новичку Round 3D-программирование 3 10.09.2006 21:47


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


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