Сайт симпатичный, заявления громкие, а ни одного примера? Неужто из 26+ нечего показать? Как заказывать услугу, если понятия не имеешь, как и в каком виде вы можете её предоставить?
Сообщение отредактировал Vuvk - Воскресенье, 08 Октября 2017, 11:23
Я ждал этого момента, но тогда вопрос а где дно, ниже которого нельзя опускаться в погоне за фидбэком? Подозреваю, что тут только начни поступать по таким принципам и дна просто нет
ответ:
ЦитатаVuvk ()
если бы все внезапно стали игнорировать этого товарища, то, быть может, он бы прекратил свою деятельность. Наконец-то.
Я не в защиту этого деятеля написал, а наоборот - он так и будет клепать свои видосы, пока на них есть какая-то реакция.
red_odysseus, ты такой агрессивный, потому что ешь мясо?
А вообще, плохой фидбэк - тоже фидбэк. Вот если бы все внезапно стали игнорировать этого товарища, то, быть может, он бы прекратил свою деятельность. Наконец-то.
Сообщение отредактировал Vuvk - Четверг, 05 Октября 2017, 08:39
А мне вот для статичного мира понравился алгоритм Флойда — Уоршелла тем, что все возможные пути просчитываются единожды и хранятся в виде простых матриц.
drcrack, ну знаешь, не все любят доверять чужому коду, если не понимают, что в нём творится.
afq, одна из техник псевдо 3D. Поизучай перевод или оригинал
Добавлено (25 сентября 2017, 08:06) --------------------------------------------- Посмотрел видео с poppy kart - не исключено, что карта в виде одной текстуры натянута на квадратный полигон. Как-то так выглядит.
Сообщение отредактировал Vuvk - Понедельник, 25 Сентября 2017, 08:07
flatingo, вот все хают твой код и я впервые решил посмотреть внимательней, что ты там продемонстрировал в этом видео. Названия переменных это отдельная история... меня удивил факт, что ты скорость складываешь с дельтой времени - в чём логика?
Сообщение отредактировал Vuvk - Пятница, 22 Сентября 2017, 13:52
ArtemS, странная логика. В EnemyShot же есть публичное поле BulletDamage (float)??
Создаешь объект "пуля1", на него вешаешь скрипт EnemyShot, выставляешь BulletDamage 10, сохраняешь префаб. Создаешь объект "пуля2", на него вешаешь скрипт EnemyShot, выставляешь BulletDamage 20, сохраняешь префаб. Теперь у тебя целых два вида пуль с разным уроном.
Подкинул тестовый билд v007 под Win32. Ссылка в шапке. Туда-сюда перестану выкладывать промежуточные итоги. Сейчас я делаю это в надежде на тестирование желающими, которые отпишутся мне о FPS и их машине. Уже сейчас в голове есть соображения, как я могу сделать быстрое "освещение" секторов. Оно будет "квадратное", но думаю, что в тему. Также есть идейка добавить анимированные текстуры для карты.
bodya_WM,
Сообщение отредактировал Vuvk - Суббота, 09 Сентября 2017, 20:35
Еще интересно почему именно программный рендер? Почему не хочешь сосредоточится именно на игровой составляющей и использовать аппаратные возможности рендера? Это же ускорило бы релиз, не?
Во-первых, желание сделать, как в оригинале, но лучше/быстрее. Во-вторых, потренироваться в оптимизации и научиться чему-то новому. Всё же полезные навыки. Также, возможно, я и сделаю отдельный рендер на OpenGL. Но это не точно.
Цитатаbodya_WM ()
Vuvk не осилил GUI на C, поэтому решил формошлепать его на FPC.
Йее, шуточки за 300 подъехали. Кто-то вообще даже смысл рейкаста не осилил
По таким мелким вопросам можете в ЛС писать. Не хочется тему засорять.
Добавлено (09 сентября 2017, 12:54) --------------------------------------------- + Изменение качества картинки на лету поправлено. Теперь больше похоже на правду. + Исправлен тайминг - отныне игра идет с одинаковой скоростью на Win и Lin. + Некоторые повторяющиеся расчеты вынесены в таблицу, которая формируется при старте. Прирост ~5%. + Частично перенесены расчеты вещественных чисел с плавающей точки на фиксированную с помощью библиотеки libfixmath. В однопоточном рендеринге прирост ~10%. Результат будет разниться от машины. Почему частично: 1. неизбежны потери из-за погрешностей. В оригинале с разрешением 320х200 это бы прокатило. Но не здесь... 2. в некоторых местах конверсия из одного вида числа в другое медленнее, чем расчет напрямую.
Заметил несколько интересных фактов: 1. антивирус Касперского очень сильно просаживает фпс 2. на Linux FPS примерно вдвое выше (даже в однопоточном режиме), чем на Windows. Одна и та же машина, один и тот же код, а результат разный в зависимости от ОСи. 3. режим "-accelerated" (вывод через OpenGL сформированного буффера) иногда неплохо добавляет производительности - зависит опять же от машины и от ОСи.
Остаётся попробовать thread pool (например, адаптировать этот - A simple C thread pool). Если и это не даст особого прироста, то стоит задуматься... Может схитрить и сделать портальный рендеринг вместо рейкастинга... или вообще отказаться от программного рендеринга и на OpenGL слепить... слишком просто ))
Результат проведенных махинаций:
Сообщение отредактировал Vuvk - Суббота, 09 Сентября 2017, 20:53
Byurrer, по умолчанию блиттинг, в SDL2 создается рендерер с флагом SDL_RENDERER_SOFTWARE. При запуске с ключом "-accelerated" создается SDL2-рендерер с флагом SDL_RENDERER_ACCELERATED ("the renderer uses hardware acceleration"). Подозреваю, что во втором случае рисуется через OpenGL, но в исходники sdl лезть неохота. Да и если это так, то просто рисуется полигон с формируемой на лету текстурой. Профита почти никакого (+ 1-3 FPS).
Сообщение отредактировал Vuvk - Пятница, 08 Сентября 2017, 13:28