forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на Blitz3D (http://forum.boolean.name/forumdisplay.php?f=14)
-   -   Про.кт "FreeSpace" (http://forum.boolean.name/showthread.php?t=5408)

FrankH 23.02.2008 02:31

Ответ: Про.кт "FreeSpace"
 
Выкладываю дему как и обещал, за неделю почти ничего не сделал(всего пару часов и то на исправление глюков ушло), но графика в сравнении с прошлой демой стала лучше. Изменения помимо описанных ранее:
1. Добавлена опция в меню трех режимов bloom+glow, вобще там множество настроек есть, но я выбрал самые оптимальные варианты.
2. Скайбокс с последнего скриншота.
3. При попадании по кораблю плазменным орудием добавлена вспышка искр.
4. Сорри, но в процессе теста отключил звук и постпроцесс, так что лучше включите сразу..:rolleyes:
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.

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

И с праздником всех!:*

Leito 23.02.2008 02:50

Re: Ответ: Про.кт "FreeSpace"
 
Цитата:

Сообщение от FrankH (Сообщение 77785)
И с праздником всех!:*

тебя тоже!

moka 23.02.2008 03:10

Ответ: Про.кт "FreeSpace"
 
Синхронизацию вкрутил???
Скачал, дома затещу :)

УПД:
Быстреньсто и в тихоря "Затестил".
Синхронизацию не вкрутил, удалил, и опять же буду ругатся, и дабы ты понял что без неё никуда, иди и запусти на Мощнявом, и Слабом компе свою игру с хорошим качеством эффектов, и тогда поймёшь о чём я говорил, а до этого тут смотреть нечего..

ABTOMAT 23.02.2008 11:25

Ответ: Про.кт "FreeSpace"
 
Цитата:

Синхронизацию вкрутил???
DeltaTime нада вкручивать! Твоя синхра жрёт впустую логику!

jimon 23.02.2008 11:33

Ответ: Про.кт "FreeSpace"
 
DeltaTime и ограничение фпс ето наше всё :)

FrankH 23.02.2008 18:55

Ответ: Про.кт "FreeSpace"
 
MoKa, по порядку:
1. В деме есть стандартная блитцевская синхра, а с быстрым блуром можно играть и на моем компе, хотя не спорю, не удобно, но МОЖНО.
2. Я вставил в дему синхро с твоего сайта, но есть 2 вещи, из-за которых я не хочу его использовать: а) для того чтобы его включать\отключать пришлось создать 2 основных цикла.. б) с ним ФПС в игре жестко падает в) глюки неимоверные, как при пониженном, так и при повышенном ФПС игра сильно дергается и при совпадении желаемого с необходимым выходит сдвиг во времени.. Эту дему тестил на 2х компах, вполне реально поиграть, жене нравится..
Попробую сделать синхру как у Автомата.. Когда-нибудь..:(

П.С. кто еще будет тестить, вариант "Best" для блура только для супер-пупер компов.
П.П.С. сорри за глюк в меню с разрешением :(
П.П.П.С ссылка в 65м посте

moka 25.02.2008 12:58

Ответ: Про.кт "FreeSpace"
 
ФПС падает, потому что у тебя рендери на столь тяжолый что теснит логику, что есть глупо. Да и логика не быстрая, поэтому и на рендер мало остаётся. Теперь представь что с синхронизацией упал фпс в 2 раза, так вот без неё скорость игры падает в 2,5 раза. И разве это играбельно? Нет. Пробуй дельтатайм, но синхронизацию нада крутить полюбому.

ABTOMAT 25.02.2008 15:02

Ответ: Про.кт "FreeSpace"
 
Цитата:

Сообщение от MoKa (Сообщение 77905)
ФПС падает, потому что у тебя рендери на столь тяжолый что теснит логику, что есть глупо. Да и логика не быстрая, поэтому и на рендер мало остаётся.

Хочу заметить, DT лишён этого глюка.

Твоя синхра годится при быстрой логике и при тяжёлом рендере, а DT подходит куда угодно.

З.Ы. Фрэнк, надо было сразу же крутить синхру, когда проѢкт уже наполовину готов, прикрутить ДельтаТайм будет на порядок сложнее.

moka 25.02.2008 16:12

Ответ: Про.кт "FreeSpace"
 
Цитата:

З.Ы. Фрэнк, надо было сразу же крутить синхру, когда проѢкт уже наполовину готов, прикрутить ДельтаТайм будет на порядок сложнее.
О чём я всем и вся твержу, но все игнорят..

FrankH 25.02.2008 21:39

Ответ: Про.кт "FreeSpace"
 
В следующей версии сделаю синхру, и надеюсь побольше всего добавить, но будет это не завтра.. :)

HolyDel 26.02.2008 12:46

Ответ: Про.кт "FreeSpace"
 
дельта тайм и ограничение фпс.
синхранизация (та, что в Castle), это вообще нечто сильно пересложненное.

Leito 26.02.2008 18:54

Re: Ответ: Про.кт "FreeSpace"
 
Цитата:

Сообщение от MoKa (Сообщение 77926)
О чём я всем и вся твержу, но все игнорят..

а что сложного.
по поиску в коде ищешь команды MoveEntity RotateEntity и аналогичные. и все:)

moka 26.02.2008 19:40

Ответ: Про.кт "FreeSpace"
 
Не понял о чём ты, о дельта тайминге???
Всё намного проще ;)

FrankH 26.02.2008 21:16

Ответ: Про.кт "FreeSpace"
 
MoKa, поделись? ;)

moka 27.02.2008 12:01

Ответ: Про.кт "FreeSpace"
 
Вот.

FrankH 27.02.2008 21:47

Ответ: Про.кт "FreeSpace"
 
Цитата:

Не понял о чём ты, о дельта тайминге???
Всё намного проще ;)
MoKa, я думал "проще добавить дельтатайминг" ..

ABTOMAT 27.02.2008 21:56

Ответ: Про.кт "FreeSpace"
 
Цитата:

Сообщение от FrankH (Сообщение 78238)
MoKa, я думал "проще добавить дельтатайминг" ..

Я про то же говорил! К сожалению, мой пост был незаслуженно стёрт, однако выражал сию мысль одним смайлом. :(

moka 28.02.2008 11:35

Ответ: Про.кт "FreeSpace"
 
С дельта таймом, тебеж придётся все процессы завязанные на времени, умножать на дельтатайм, а тут ничего этого не нужно делать!

HolyDel 28.02.2008 11:44

Ответ: Про.кт "FreeSpace"
 
MoKa, конечно нужно ;)
просто "умеожение" получается неявно через сложение.
если сдвинуть объект 10 раз за цикл на 1-еденицу вправу. то он будет сдвинут на 10 едениц. это все равно что домножить еденицу на 10.

дельтатайминг будет плавнее, дешевле.
минус - писать умножение на дельту на КАЖДУЮ операцию (значимую ессено). что, согласись, довольно лениво.

moka 28.02.2008 11:53

Ответ: Про.кт "FreeSpace"
 
Да не только в лени дело, этож ВЕСЬ код, а согласись он порой Огромен, и в нём эти сотни и почти тысячи умножений, читабельность падает неимоверно..

Taugeshtu 28.02.2008 19:12

Ответ: Про.кт "FreeSpace"
 
МоКа, очень многое зависит, как ни странно, от имени переменной дельтатайминга... Если это вполне внятное:
GAME_SPEED - то и она всегда видна будет, и окружающие ее вещи особо не запутает...
Кстати, как я понимаю, твой стабилизатор решать задачу "полуторного" запаздывания УПС от идеала не умеет... Дельтатайм же справится...
Однако вживлять его в уже готовый, большой (и жирный (с) ) проект трудновато...

ABTOMAT 28.02.2008 19:46

Ответ: Про.кт "FreeSpace"
 
Цитата:

минус - писать умножение на дельту на КАЖДУЮ операцию (значимую ессено). что, согласись, довольно лениво.
Ну, если лениться на всём, то и игру не сделаешь ;)
Если я пишу нечто, что связано с дельтой, то тут же и приписываю *dt вот и всё :)

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

Цитата:

Да не только в лени дело, этож ВЕСЬ код, а согласись он порой Огромен, и в нём эти сотни и почти тысячи умножений, читабельность падает неимоверно.
Ну, вот. Теперь мы будем бороться не за качество конечного продукта, а за читабельность кода. Конечно, пускай у нас тяжёлая логика повторяется N раз, пока не поспеет за рендером. А, между прочим, если юзать, например, PhysX, то и физику (RenderPhysX в данном случае) нужно пихать к логике, или я не прав? Выходит, обработку физики тоже нужно повторять?! А это уже нехилые тормоза! И это при том, что в том же RenderPhysX'e и стандартном блитзевском UpdateWorld'e предусмотрена переменная tween (см. хелп), которая и есть ни что иное, как dt!
Так о чём это я? Ах да, у нас же зато будет самый читабельный код на свете!

Цитата:

Bot\speed = bot\speed + 0.001*dt ; То увеличим его скорость бега
If bot\speed > 0.3 bot\speed = 0.3 ; Но она не должна превышать 0.3
If bot\anim_status <> goes ; Если бот всё ещё не анимирован анимацией ходьбы
Animate(bot\mesh,1,.03,4,5000.0/dt) ; Исправляем это дело
bot\anim_status = goes ; И пишем что бот, мол, уже анимирован
End If
Нечитабельно? ИМХО, всё очень даже понятно.

HolyDel 28.02.2008 19:51

Ответ: Про.кт "FreeSpace"
 
ABTOMAT, ты чего?!!!
Animate(bot\mesh,1,.03,4,5000.0) - анимация должна быть задана в нормальной скорость

UpdateWorld(dt) - твиним только ее проигрывание.

а то представь ситауцию - во время тормозов (dt - большое) назначили анимацию медленную, торомза прошли, а двигается объект все равно медленно, до тех пор, пока его не придется переанимировать.

Цитата:

Нечитабельно? ИМХО, всё очень даже понятно.
нифига не понятно. комментарии все портят.

jimon 28.02.2008 19:52

Ответ: Про.кт "FreeSpace"
 
в jaqua из более чем 100 тысячи строчек кода
и всего около 100 умножений на dt ... так что я думаю ето не очень накладно
если уметь писать код :)

ps. хотя я помню лично мест 15 где умножал на dt ...

FrankH 28.02.2008 21:23

Ответ: Про.кт "FreeSpace"
 
Даже интересно стало, посчитаю, сколько у меня их будет.. :) по памяти не более 20ти..

Leito 28.02.2008 22:03

Re: Про.кт "FreeSpace"
 
мм 100 тысяч строчек кода, и каждую писал лично? оО

jimon 28.02.2008 22:07

Ответ: Про.кт "FreeSpace"
 
память не подводит - в jaqua 15 раз только уможается на dt O_o
(поиском проверил)

Leito
ето мало, когда будет 500 тысяч то можно будет меряццо :lol:

FrankH 03.03.2008 00:50

Ответ: Про.кт "FreeSpace"
 
Вложений: 1
Сделал ЛОД, получил не такой сильный прирост как хотелось, но за то ФПС стал намного стабильнее.
Добавил дальтатайминг(вышло 16 перемножений + надо 6 на движение камеры, но убрал потому как ее колбасить начало. Выходит за цикл 4 дельтатайма на бота, 1 на каждый снаряд и 1 на обновление пушки), сьел этот дельтатайминг весь прирост от ЛОДа :-D, если сравнить с методом дополнительных проходов, дельтатайм меньше убивает производительность и стабилизирует куда плавнее.
Смог даже поиграть на максимальном качестве, правда при 3-7 ФПС неразбериха страшная..:crazy:
Скрин при 3 ФПС.

FrankH 28.06.2008 20:33

Ответ: Про.кт "FreeSpace"
 
Последние новости по теме. Про.кт жив, однако уже немного в другом виде.
Последнюю рабочую демку (от 30го марта) в стиле "Аркада" можно скачать тут:
http://zbrush.3dn.ru/blog
(не смотрите на название :)) там и дельтатайминг и вобщем вполне играбельная версия.

Сейчас движок переделывается под скрипты, пишется обработчик скриптов, делается интерфейс для получения заданий и инвентарь корабля, переход база-околобазовое пространство.

FrankH 11.12.2008 01:05

Ответ: Про.кт "FreeSpace"
 
Проэкт сдвинулся с места и обрел немного формы.
Пофикшены практически все известные глюки.
Переделана система боя, теперь:

├ на кораблях все пушки сдвоены(ЛКМ - лазер, ПКМ - плазма), орудия нельзя использовать одновременно.
├ весь нанесенный Вами урон подсчитывается как игровые очки.
├ добавлен ускоритель(пробел, боты не используют).
├ доступно больше разрешений монитора.
├ с каждого уничтоженного корабля падает случайный ящик с запчастями или апгрейдом(рекомендовано собирать все, боты не собирают).
├ теперь игра завершается показом нанесенных вами повреждений
├ получше сделан фон меню.
├ добавлена подсказка автопилота(для тех кто это не читает).
├ менее яркий прицел и изменения в индикации юнитов на экране, теперь расстояние и положение видно всегда.

Как и прежде:
├ управление W,A,S,D+мышь+пробел+ентер+таб
├ ужасные звуки)
├ столкновения кораблей не наносят урона, только выстрелы.
├ при выборе уровней выбирается одна из команд(не проработана концепция уровней), т.е. уровень один.
├ 90 юнитов считая Игрока.

Минимальный конфиг компа для комфортной игры AthlonXP 2000+, NVidia GeForce 6600 = 40 кадров при максимальном постпроцессе.
Перед игрой рекомендуется зайти в настройки, выставить оптимальное разрешение для Вашего монитора, применить, перезапустить игру.
Если игра идет медленно, попробуйте убрать эффект глоу.


Спасибо АВТОМАТу за моральное содействие и песнопение по асе.:)

Приятной игры, жду Ваших отзывов и предложений. :)
Страница скачивания

FrankH 11.12.2008 13:13

Ответ: Про.кт "FreeSpace"
 
Вложений: 2
Пару скринов
Пост №94

sSwSs 11.12.2008 23:31

Ответ: Про.кт "FreeSpace"
 
Клас, так держать...ФПС постояно 40 был!

ЗЫ: Сколько не воевал не одного не збил, может я слишком кривой для этой игры?

FrankH 12.12.2008 01:16

Ответ: Про.кт "FreeSpace"
 
Цитата:

Клас, так держать...ФПС постояно 40 был!
Сколько не воевал не одного не збил, может я слишком кривой для этой игры?
Спасибо.:)
Я уж было подумал, что за пол года моего отсутствия геймдев ушел в упадок или эволюционировал..:-D(почти не постит никто:dontknow:)
По поводу сложности игры - вполне реально, управляюсь со всеми за 10-20 минут, но важно как раз мнение неискушенного. Попробую сделать полегче.:super:

Да, и забыл, если кому игра покажется легкой, при выборе уровня отключите тестовый режим.:ok:

Morganolla 12.12.2008 02:12

Ответ: Про.кт "FreeSpace"
 
Тоже посмотрел, политал... никого сбить не удалось.. ( а вообще можно?)...
А в чем будет смысл игры - только летать и мочить?

FrankH 12.12.2008 02:35

Ответ: Про.кт "FreeSpace"
 
Вложений: 1
Цитата:

Сообщение от Morganolla (Сообщение 92055)
Тоже посмотрел, политал... никого сбить не удалось.. ( а вообще можно?)...
А в чем будет смысл игры - только летать и мочить?

Вообще можно, даже жена сбивала.. иногда :-D.
Пока летать и мочить, собсно задумывалась как шутер;), что-то серьезнее один не осилю:dontknow:(начал писать парсер, но понял что это на долго). И так не хватает моделей, дизайна, озвучки.

ссылка пост №94

Morganolla 12.12.2008 14:59

Ответ: Про.кт "FreeSpace"
 
FrankH Ты только на Б3Д кодишь?

FrankH 12.12.2008 22:23

Ответ: Про.кт "FreeSpace"
 
Цитата:

FrankH Ты только на Б3Д кодишь?
Я никогда(судя по всему) не сяду больше на С++, всегда это заканчивалось не достижением цели а попыткой убедить компилятор выполнять код. Немного опыт в Асме и Пурике.

Morganolla 13.12.2008 00:52

Ответ: Про.кт "FreeSpace"
 
Я тоже долго присматривался к Блитцу, но мне не понравилось его ограниченность. Даже не было двойной точности в целых и с плавающей точкой... Только в Максе появилась и то недавно. И недавно появилась эта Ксорс...:)


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

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