Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.26;
Скачать: CL | DM;

Вниз

GLScene Новая демка "FireBrand" Tank Demo Preview Оцните   Найти похожие ветки 

 
Алекс А   (2004-05-11 02:31) [0]

На сайте GLScene появилась : http://glscene.sourceforge.net/index.php
Вот ссылка на скачку. http://glscene.sourceforge.net/misc/FireBrand-Preview.zip С исходником.
Танк ездит, стреляет, правда пока без снарядов. В принципе может быть заготовкой для создания собственной игры, если на то у кого есть желание. Всё лучше, чем с нуля. Добавить снаряды, противников, и можно воевать.


 
Алекс А   (2004-05-14 04:42) [1]

Никого не вдохновило ?
А я слегка доделал демку. Теперь из танка может стрелять снарядами по шарам и набирать очки. Получился простейший вариант игры. Зацените, если кому интересно. : http://tankgame.narod.ru/tankgame.html
Распакуйте экзэшник в папку с игрой и запустите.
Управление WSAD, башней QERF, выстрел - пробел.


 
имя   (2004-05-15 12:06) [2]

Удалено модератором
Примечание: Неделя отдыха.


 
A22   (2004-05-17 03:09) [3]

не работает, в архиве только екз, игра попросила еще файлы


 
DeadMeat ©   (2004-05-17 21:08) [4]

Дык надо всё скачать сначала с http://glscene.sourceforge.net/misc/FireBrand-Preview.zip
А потом с http://tankgame.narod.ru/tankgame.html (что как я понял уже у вас есть)
После всех этих комбинаций всё вместе совместить...

Кстати дема ничё... Можно сетевую танковую стрелялку сделать, если немного упростить...

---
...Death Is Only The Begining...


 
Алекс А   (2004-05-18 01:47) [5]


> DeadMeat ©   (17.05.04 21:08) [4]
> Дык надо всё скачать сначала с http://glscene.sourceforge.net/misc/FireBrand-Preview.zip
> А потом с http://tankgame.narod.ru/tankgame.html (что как
> я понял уже у вас есть)
> После всех этих комбинаций всё вместе совместить...

Совершенно верно. Просто ресурсы всё равно одни и теже, а занимают они давольно много.


> Кстати дема ничё... Можно сетевую танковую стрелялку сделать,
> если немного упростить...

Прежде нужно сделать там возможность добавлять дополнительные танки. Хотя бы два для начала. А то боя неполучится.
И придумать какую-то проверку, чтобы танки не проезжали друг сквозь друга.


 
DeadMeat ©   (2004-05-18 09:01) [6]

Ну столкновение танков можно сделать простым GLCollisionManager. А добавление... добавление в принципе не тяжело я думаю... Я уже писал некое подобие шутера... Так там добавлялось нужное количество ACTOR-ов, когда подключались клиенты... Только вот всё тормозило при передаче по сети... Но это было давно. Щас может смогу сделать без тормозов... Надо проверить...

---
...Death Is Only The Begining...


 
КиТаЯц   (2004-05-18 09:42) [7]

Я здесь писАл уже про добавление-удаление. Топик что-то типа "GLScene как правильно удалить объект" или что-то вроде того...


 
Алекс А   (2004-05-20 05:34) [8]


> DeadMeat ©   (18.05.04 09:01) [6]
> добавление в принципе не тяжело я думаю... Я уже писал некое
> подобие шутера... Так там добавлялось нужное количество
> ACTOR-ов, когда подключались клиенты...

Тут в игре управление пушкой, гусеницами, вычисление высоты в пространстве, спецеффекты, снаряды свои, и ещё куча всего. Это не так просто сделать.


> КиТаЯц   (18.05.04 09:42) [7]
> Я здесь писАл уже про добавление-удаление. Топик что-то
> типа "GLScene как правильно удалить объект" или что-то вроде
> того...

Это к чему ?


 
КиТаЯц   (2004-05-20 07:18) [9]


> Алекс А   (20.05.04 05:34) [8]
> Это к чему ?

Это к тому, что было сказано:

> Прежде нужно сделать там возможность добавлять дополнительные
> танки.

А я как раз пробовал добавлять-удалять новых актеров в GLScene, о чем в указаной теме и написал буквально следующее:

Вот так я добавлял:
var NewEnemy: tGLActor;
begin
NewEnemy:= tGLActor(GLScene1.Objects.AddNewChild(tGLActor));
NewEnemy.Name:="Vrag"+inttostr(nomer); // глобальная переменная типа "табельный номер" :)
with NewEnemy do begin
  LoadFromFile("файл");
  ...
  // задаем свойства
  ...  
end;
end;

А вот так Vrag as Trup :) без проблемм удаляется...
var ToDel: tComponent;
begin
ToDel:= nil;
ToDel:= GLScene1.FindSceneObject("Vrag"+inttostr(nomer));
if ToDel <> nil then ToDel.Destroy;
end;


 
DeadMeat ©   (2004-05-20 21:25) [10]

> [8] Алекс А   (20.05.04 05:34)
> Тут в игре управление пушкой, гусеницами, вычисление высоты в пространстве, спецеффекты, снаряды свои, и ещё куча всего. Это не так просто сделать.

А кому сейчас легко...?? Я код самой демки ещё не смотрел, но подозреваю, что его модифицировать будет не очень сложно... Программа будет обрабатывать только один танк, а остальные будут просто рисоваться в своих координатах, и со своими направлениями... ИМХО конечно, но это не должно быть чрезвычайно сложно... Я так делал в своей мини игрушке - одним клиентом обрабатывается только один ACTOR, а остальные своими клиентами... потом каждый из них отсылает такую инфу, как положение, направление и анимация... Здесь разница небольшая...

---
...Death Is Only The Begining...


 
Sanek_metaller ©   (2004-05-21 00:29) [11]

А где вообще можно скачать GLScene для D7?
Я и поисковнике искал,на оффициальный сайт зашел,а там хрень какая-то...


 
Алекс А   (2004-05-21 02:22) [12]


> КиТаЯц   (20.05.04 07:18) [9]
> А я как раз пробовал добавлять-удалять новых актеров в GLScene,
> о чем в указаной теме и написал буквально следующее:

Это не правильный подход. Потому, что два раза грузятся одни и теже ресурсы танка.

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


> Sanek_metaller ©   (21.05.04 00:29) [11]
> А где вообще можно скачать GLScene для D7?

http://cvs.sourceforge.net/viewcvs.py/glscene


> DeadMeat ©   (20.05.04 21:25) [10]
> А кому сейчас легко...?? Я код самой демки ещё не смотрел,
> но подозреваю, что его модифицировать будет не очень сложно...
> Программа будет обрабатывать только один танк, а остальные
> будут просто рисоваться в своих координатах, и со своими
> направлениями...


Вычисление направления и позиции делается вот так :

  tankVW.Progress(deltaTime, newTime);
  ACTTank.Position.Y:=( tankVW.Nodes[6].Location[1]+tankVW.Nodes[0].Location[1]
                       +tankVW.Nodes[8].Location[1]+tankVW.Nodes[2].Location[1]
                       +tankVW.Nodes[10].Location[1]+tankVW.Nodes[4].Location[1])*(1/6)-0.45;
  ACTTank.Up.AsAffineVector:=MinusZVector;
  ACTTank.Direction.AsAffineVector:=
     VectorCrossProduct(VectorSubtract(VectorAdd(tankVW.Nodes[0].Location,
                                                 tankVW.Nodes[6].Location),
                                       VectorAdd(tankVW.Nodes[4].Location,
                                                 tankVW.Nodes[10].Location)),
                        VectorSubtract(VectorAdd(tankVW.Nodes[0].Location,
                                                 tankVW.Nodes[4].Location),
                                       VectorAdd(tankVW.Nodes[6].Location,
                                                 tankVW.Nodes[10].Location)));


Можете это объяснить ?

И вообще всё что в ОнКрэйт написано относительно tankVW не очень понятно. Куча векторов, нодов, контактов. Потому и непонятно как это сделать для второго танка.


 
КиТаЯц   (2004-05-21 07:24) [13]


> Правильный подход - это использовать проксиобжект для всего
> уже загруженного танка со всеми его наворотами. Делается
> одной строчкой. Проблема - пересчитать это всё под другую
> точку в пространстве.

Какой строчкой? Пример можеш привести?


 
Алекс А   (2004-05-21 07:54) [14]


> КиТаЯц   (21.05.04 07:24) [13]
> Какой строчкой? Пример можеш привести?

Создаёшь TGLProxyObject через и в его свойство MasterObject ставишь DCTarget . У тебя получается второй танк. Только в позишн запиши небольшое смещение, а то танки будут друг внутри друга и не увидешь их.


 
КиТаЯц   (2004-05-21 09:24) [15]

2 Алекс А   (21.05.04 07:54) [14]
ОК. А как его потом "замочить"?


 
КиТаЯц   (2004-05-21 09:55) [16]

2 Алекс А   (21.05.04 07:54) [14]
Не. Не пойдет через TGLProxyObject.
При изменении свойств MasterObject-a меняются и свойства сомого TGLProxyObject. Ну, типа бежит актер и его двойник туда же, а должен на месте стоять. Мне кажется прокси само то будет для статичных объектов... заполнения ландшафта: создал дерево, потом насоздавал проксиобъектов и раскидал их рендомом по карте... А для актера прокси не годится.


 
КиТаЯц   (2004-05-21 09:56) [17]

Да, в тему...
А НЕ ПОРА МОДЕРАТОРАМ ОБ ОТДЕЛЬНОЙ ВЕТКЕ ДЛЯ GLScene ПОДУМАТЬ?


 
DeadMeat ©   (2004-05-21 12:12) [18]

> [12] Алекс А   (21.05.04 02:22)
> Можете это объяснить ?
А зачем...?? Не ну понять конечно это хорошо... Но я ещё раз говорю, зачем делать полную обработку второго, третьего и т.п танков... Ведь полностью обрабатывать надо только один танк - свой, а остальные будут обрабатывать остальные клиенты... Ведь почти любой объект можно описать всего лишь 2-двумя параметрами - положение и направление... Так вот эти параметры каждой запчасти и надо передавать по сети и уже учитывая их, обрабатывать остальные танки...

---
...Death Is Only The Begining...


 
DeadMeat ©   (2004-05-21 12:13) [19]

>[17] КиТаЯц   (21.05.04 09:56)
Да, в тему...
А НЕ ПОРА МОДЕРАТОРАМ ОБ ОТДЕЛЬНОЙ ВЕТКЕ ДЛЯ GLScene ПОДУМАТЬ?
Было бы неплохо... Ведь есть тема КОМПОНЕНТЫ, КОL, FreePascal и т.п. А GLScene давольно быстро набирает обороты...

---
...Death Is Only The Begining...


 
КиТаЯц   (2004-05-21 12:47) [20]

Вот именно, а http://glscene.sourceforge.net/ попросить чтобы на своем сайте линку повесили что-то типа "GLScene Russian forum"


 
Sanek_metaller ©   (2004-05-22 01:03) [21]

>http://cvs.sourceforge.net/viewcvs.py/glscene
Это чё все по одному файлу качать?


 
Алекс А   (2004-05-22 01:36) [22]


> КиТаЯц   (21.05.04 09:24) [15]
> 2 Алекс А   (21.05.04 07:54) [14]
> ОК. А как его потом "замочить"?

Неужели самому непонятно ? Убрать из MasterObject"а DCTarget . Или удалить сам TGLProxyObject .


> Не. Не пойдет через TGLProxyObject.
> При изменении свойств MasterObject-a меняются и свойства
> сомого TGLProxyObject. Ну, типа бежит актер и его двойник
> туда же, а должен на месте стоять. Мне кажется прокси само
> то будет для статичных объектов... заполнения ландшафта:
> создал дерево, потом насоздавал проксиобъектов и раскидал
> их рендомом по карте... А для актера прокси не годится.

Ну вот ты и сделал для себя массу открытий, которые другие и так давно знают.


>Мне кажется прокси само
> то будет для статичных объектов... заполнения ландшафта:

Отдельно башня танка, и корпус танка - два статичных объекта ...
В общем смогёшь сделать дополнительные танки - напиши.

Мелкая анимация типа качания травы, или антены танка, или ещё чего может быть у всех предметов одинаковая, что уменьшает объёмы рассчётов.


> DeadMeat ©   (21.05.04 12:12) [18]
> > [12] Алекс А   (21.05.04 02:22)
> > Можете это объяснить ?
> А зачем...??

Ответ вопросом на вопрос, со всеми вытекающими.


> Sanek_metaller ©   (22.05.04 01:03) [21]
> >http://cvs.sourceforge.net/viewcvs.py/glscene
> Это чё все по одному файлу качать?

FAQ читай, программу используй :
http://glscene.sourceforge.net/faq.htm#160801-1


 
DeadMeat ©   (2004-05-22 18:07) [23]

> Алекс А   (22.05.04 01:36) [22]
Ответ вопросом на вопрос, со всеми вытекающими.

Эээ.. Не понял...


 
Polymorph   (2004-05-23 09:56) [24]

Ну дак чё, модераторы, как на счёт отдельной ветки форума по GLS? По моему идея классная, я знаю уже много русских прогеров парятся на ихнем английском форумею Поддержите РУССКИЙ GAMEDEV!


 
kas-t   (2004-05-24 01:10) [25]

Если нужно то я тоже готов отдать голос ЗА! такое предложение! :)


 
Алекс А   (2004-05-24 03:22) [26]


> DeadMeat ©   (22.05.04 18:07) [23]
> Эээ.. Не понял...

А зачем писать фразы "А зачем?" ?
Если человек знает как сделать второй танк, то он пишет, а если не знает, то пишет "А зачем?".
Вражеские танки надо сделать или ненадо? Или вообще хоть какие-нибудь враги нужны или не нужны? Или будет просто огромая пустыня Сахара, и в ней лишь пара одиноких танков ищет друг друга? В любой приличной игре должны быть искусственные противники по которым можно было бы пострелять. Считаю это просто бесспорным.


> kas-t   (24.05.04 01:10) [25]
> Если нужно то я тоже готов отдать голос ЗА! такое предложение!
> :)

А я бы посоветовал для начала сделать FAQ по GLScene, хотя бы как с CVS скачивать, а то спрашивают чуть ли не в каждой ветке.


 
DeadMeat ©   (2004-05-24 16:26) [27]

> [26] Алекс А   (24.05.04 03:22)
Я кажется уже писал как реализовать второй танк (см [18] и [10])... И именно так я его и реализовал. Вот через пару дней допишу сетевую часть (просто проверять негде) и выложу с исходником...

---
...Death Is Only The Begining...


 
Micah'GF   (2004-05-24 20:39) [28]

а у меня так и не запустилось ничего... :(
вылетает, много раз, глюча..... (раз десять винда выдает окно с просьбой "отправить разработчиков")
Винда ХР


 
имя   (2004-05-31 09:47) [29]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2004.09.26;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.026 c
9-1086212573
MrAngel
2004-06-03 01:42
2004.09.26
Мультимониторинг на DirectX


1-1095092277
Tesmo
2004-09-13 20:17
2004.09.26
Помогите!! Сканирование директорий.


1-1094997798
maxnn
2004-09-12 18:03
2004.09.26
Защита DCU


4-1092319395
почемука
2004-08-12 18:03
2004.09.26
Послать сообщение о перерисовке всем окнам


3-1093791919
ghrup
2004-08-29 19:05
2004.09.26
Как сделать, чтобы TTable позволял редактировать запись, но не по