Пятница, 29 Ноября 2024, 06:36

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
VuvkДата: Пятница, 08 Сентября 2017, 11:15 | Сообщение # 61 | Тема: Nuke3D - Конструктор олдскульных FPS
заслуженный участник
Сейчас нет на сайте
Byurrer, попиксельно формирую буффер и его вывожу на экран. На самом деле буфферов несколько будет, они будут склеиваться в один (для минимизации лишних расчетов). Никаких функций ядра...
VuvkДата: Пятница, 08 Сентября 2017, 08:22 | Сообщение # 62 | Тема: Nuke3D - Конструктор олдскульных FPS
заслуженный участник
Сейчас нет на сайте
Byurrer, пора обновить винрар)) Или использовать 7-zip.
В будущем буду выкладывать в архивах zip, чтобы не было таких оказий...
Цитата Byurrer ()
Что используешь для программного рендера (как-то библиотека)?

Нет, только свои мозги. Оптимизировал алгоритмы, активно использую битовые операции, заменил все повторяющиеся операции деления на умножение, сократил количество побочных переменных и вызовов функций. Узнал много нового (например, double работает быстрее на 64-битных процессорах даже если приложение 32-битное, инлайновые функции могут тормозить программу и т.д.). Сейчас попробую заменить числа с плавающей точкой на фиксированную - должно дать прирост на слабых/старых процессорах. Далее на повестке многопоточность через thread pool.
Всё-таки главная проблема - быстрый рендеринг. Редактор это уже фигня.


Сообщение отредактировал Vuvk - Пятница, 08 Сентября 2017, 08:47
VuvkДата: Пятница, 08 Сентября 2017, 05:58 | Сообщение # 63 | Тема: Nuke3D - Конструктор олдскульных FPS
заслуженный участник
Сейчас нет на сайте
Цитата GWÁLÐ ()
Просто у вас получается будет уже 4 языка? :)

Я насчитал только три...
В любом случае пользователи получат готовые исполняемые файлы, так что на чем оно написано - моя головная боль.
Как я вижу процесс использования конструктора :
1. пользователь создает новый проект в редакторе, выбрав целевую папку. В эту папку закидываются среда исполнения, паки со стандартными ресурсами и скрипты на lua (если всё-таки я буду их использовать)
2. пользователь меняет стандартные ресурсы / добавляет новые
3. пользователь при желании правит lua-скрипты, но это не обязательно

По поводу разных языков. Оба языка я активно использую ежедневно, так что для меня ничего нового. Я мог бы всё написать на FreePascal, но FPC выдаёт чуть более медленный код, чем GCC, а для программного рендеринга это непростительная роскошь. Я мог бы написать всё на Си + какой-нибудь GTK, но тогда пользователям Windows нужно будет устанавливать что-то лишнее (среду GTK). Win API? Но для других осей его нет)) Поэтому я решил писать среду исполнения на Си для максимального быстродействия, а для кросс-платформенного "формошлёпства" использовать Lazarus (IDE для FPC + LCL).
Также я использую заведомо кросс-платформенные библиотеки, чтобы это всё работало на разных ОС без плясок с бубном или варганом.

Благодарю за проявленный интерес, комментарии и за ободрение:
Цитата GWÁLÐ ()
в Steam можно продать все что угодно


Сообщение отредактировал Vuvk - Пятница, 08 Сентября 2017, 06:04
VuvkДата: Четверг, 07 Сентября 2017, 19:11 | Сообщение # 64 | Тема: Nuke3D - Конструктор олдскульных FPS
заслуженный участник
Сейчас нет на сайте
Всем привет! Решил создать отдельную тему, т.к. разработка начала активно вестись после обсуждения в этой теме.
Итак, что же это такое?
Nuke3D - конструктор олдскульных игр жанра FPS
Жанровая направленность: FPS, Action
GAPI: OpenGL, DirectX, Software Rendering (Burning's Video)
Язык программирования: C++ для "запускатора", ObjectPascal/FreePascal для редактора карт и ресурсов, JavaScript для скриптовой части
Двигатель: в раннере используется WorldSim3D
Платформы: Linux, Windows, гипотетически MacOS
Лицензия: коммерческая, проприетарная?

Планируемые (реализованные) отличия от оригинала (RGM?):
- три типа рендеринга;
- поддержка современных разрешений экрана;
- текстуры более высокого разрешения (ограничено искусственно);
- гипотетическая возможность добавления бесконечного количества текстур, спрайтов, кадров анимации;
- настраиваемые коллизии;
- масштабирование спрайтов;
- скайбоксы и их предпросмотр прямо в редакторе;
- послойное рисование полов, стен, потолков;
- поддержка множества форматов текстур: jpg, jp2000, bmp, png, tiff, tga и проч.
- автоматическая подгонка редактором загружаемых текстур под размеры и необходимый движку формат;
- управление количеством карт и скайбоксов;
- удобный редактор, включающий в себя редактор ресурсов, карт, IDE для написания скриптов;
- скриптовый язык программирования для управления логикой игры.

За прогрессом разработки вы можете следить здесь (обновляю редко) или в моем дневнике на ВКонтакте - Antoshka's Diary (обновляю довольно часто).



Всем спасибо за внимание!


Сообщение отредактировал Vuvk - Пятница, 09 Ноября 2018, 08:19
VuvkДата: Четверг, 07 Сентября 2017, 10:35 | Сообщение # 65 | Тема: Бэкграунд перекрывает логотип?
заслуженный участник
Сейчас нет на сайте
Цитата useruser ()
у меня используется одна (общая) переменная под спрайт

тьфу ты, блин. Вот и твоя ошибка!
Ты сначала загрузил один спрайт, а потом в него грузанул другой, а объекты ссылаются на один и тот же спрайт.


Сообщение отредактировал Vuvk - Четверг, 07 Сентября 2017, 10:36
VuvkДата: Четверг, 07 Сентября 2017, 09:20 | Сообщение # 66 | Тема: Бэкграунд перекрывает логотип?
заслуженный участник
Сейчас нет на сайте
Картинка со справки GM о глубине и очередности отрисовки


help

Но есть подозрение, что ошибка не здесь.
VuvkДата: Вторник, 05 Сентября 2017, 20:18 | Сообщение # 67 | Тема: Raycasting Game Constructor
заслуженный участник
Сейчас нет на сайте
Я теперь в некотором замешательстве )) Всё идёт к тому, что нужно серьёзней отнестись к этой идее.
Всем спасибо за отзывы и обсуждение!
VuvkДата: Вторник, 05 Сентября 2017, 18:00 | Сообщение # 68 | Тема: Raycasting Game Constructor
заслуженный участник
Сейчас нет на сайте
Накидал тут тест разных плиток для пола/потолка и дыр, где будет рисоваться открытое небо:
видео
И ссылка, чтобы пощупать

Цитата
Сможешь ли довести до итога.

Это самое интересное. Но на удивление мне кажется, что эта поделка перспективней, чем мой олдскульный движок аля idTech2.
Цитата
Ещё под широкие разрешения бы.

Это вообще не проблема. Хоть сейчас могу сделать! Вот только рендеринг программный и чем шире полотно, тем быстрее падает фпс в геометрической прогрессии. Сначала нужны лютые оптимизации.

salewa, спасибо за фидбэк и тем более за видео. Вижу, что надо стремиться повышать FPS (хоть 30 это не мало, но чем больше, тем лучше конечно же).
Цитата
один раз лагнула на 2 секунды

Да, лагает в основном, если смотреть впритык в стену или под ноги/в потолок. Ещё буду над этим работать. В будущем.

Цитата bodya_WM ()
Но если у тебя там 3D кубы то это уже не рейкастинг.

В том и дело, что у меня всё по-честному. Я про то и говорю, что если рендерить кубы в OpenGL, то это всё будет гораздо шустрее.


Сообщение отредактировал Vuvk - Вторник, 05 Сентября 2017, 18:08
VuvkДата: Вторник, 05 Сентября 2017, 14:27 | Сообщение # 69 | Тема: Raycasting Game Constructor
заслуженный участник
Сейчас нет на сайте
Цитата bodya_WM ()
В конструкте ... работает крайне медленно.

Чтоб рейкаст работал быстро тоже надо изрядно попотеть. Рендер с аппаратной поддержкой всё равно шустрее.
Цитата bodya_WM ()
скинь сырцы, форкнусь.

Если ничего интересного не получится, то скину.

Это пока всего лишь идея, на которую очень много времени не хочется тратить


Сообщение отредактировал Vuvk - Вторник, 05 Сентября 2017, 14:37
VuvkДата: Вторник, 05 Сентября 2017, 12:06 | Сообщение # 70 | Тема: Raycasting Game Constructor
заслуженный участник
Сейчас нет на сайте
Так как тема вызвала некоторый интерес как здесь, так и за пределами форума, то я решил накидать демку с базовым рендерингом стен и пола/потолка. Прикладываю демки для скачивания и аппробации всеми желающими!
Скачать
В архиве несколько вариантов. Если кто-то будет смотреть, то отпишитесь какой у вас FPS.
Это честный программный рендеринг технологией "рейкастинг". Для запуска с аппаратной поддержкой ожидается ключ "-accelerated" (однако скорее всего это особо ничего не даст). Для небольшого смазывания ключ "-HQ". Можете попробовать запускать high_quality.bat.

Базовая версия
rgm.exe


Версия со смешным багом, который стал фичей - блестящий пол с отражением.
rgm_reflection.exe


Только стены. Самый быстрый рендер
rgm_classic.exe


Оптимизировал, как бог мог. В голову приходит только попробовать использовать целочисленную математику (цисла с фиксированной запятой), что может не дать особого прироста к производительности. А также разделить пускание лучей на потоки. Буду ещё экспериментировать.


Сообщение отредактировал Vuvk - Вторник, 05 Сентября 2017, 14:29
VuvkДата: Воскресенье, 03 Сентября 2017, 08:59 | Сообщение # 71 | Тема: Суббота скриншотов
заслуженный участник
Сейчас нет на сайте
Byurrer, в оригинальные карты уже зашиты лайтмапы, включая "лайтстили" для динамического освещения. Хочу их использовать.
VuvkДата: Суббота, 02 Сентября 2017, 21:48 | Сообщение # 72 | Тема: Кодинг под NES
заслуженный участник
Сейчас нет на сайте
bodya_WM, подбирал как-то ссылочки себе на будущее. Тоже хочу попробовать когда-нибудь. Мож и тебе пригодится
VuvkДата: Суббота, 02 Сентября 2017, 15:11 | Сообщение # 73 | Тема: Суббота скриншотов
заслуженный участник
Сейчас нет на сайте
Psycho, я очень трепетно отношусь к программному рендерингу, но в этом движке решил акцентировать внимание только на OpenGL. Да и необходимых познаний в АСМ у меня нет.
Когда будет готов основной функционал, то буду изучать шейдеры и накручивать графоний, но до этого, как до луны. Амбициозная цель движка - запустить сингл оригинальной игры Quake2 crazy
VuvkДата: Суббота, 02 Сентября 2017, 12:09 | Сообщение # 74 | Тема: Суббота скриншотов
заслуженный участник
Сейчас нет на сайте
Разрабатываю движок с олдскул-рендером на OpenGL 2.0 и чистом Си, который должен поддерживать все форматы idTech2 + некоторые современные. bodhi Game Engine (дневник разработки).
На неделе:
самописная загрузка текстур формата wal


загрузка и обработка текстур через библиотеки DevIL ИЛИ SDL2_image (по желанию программиста... меня)


самописный блюр текстур с настраиваемой интенсивностью


и самое главное - обработка BSP дерева и рендеринг карты (пока что без лайтмап и всего сопутствующего)


Сообщение отредактировал Vuvk - Суббота, 02 Сентября 2017, 12:12
VuvkДата: Четверг, 31 Августа 2017, 07:52 | Сообщение # 75 | Тема: Майнкрафт
заслуженный участник
Сейчас нет на сайте
Storm54, +
VuvkДата: Вторник, 29 Августа 2017, 13:36 | Сообщение # 76 | Тема: Как собрать ID tech 4 в Visual Studio 2013?
заслуженный участник
Сейчас нет на сайте
1) Visual Studio 2010
2) можно, но все исходники ты обязан предоставить
VuvkДата: Суббота, 26 Августа 2017, 09:59 | Сообщение # 77 | Тема: Прокачиваю PixelArt
заслуженный участник
Сейчас нет на сайте
VuvkДата: Пятница, 25 Августа 2017, 08:48 | Сообщение # 78 | Тема: Прокачиваю PixelArt
заслуженный участник
Сейчас нет на сайте
Лично мне минималистичный герой первый слева больше всех нравится. Фон немного не вяжется, особенно наличие размытия.
Вспомнился почему-то Flashback от Delphine Software.
VuvkДата: Понедельник, 21 Августа 2017, 08:38 | Сообщение # 79 | Тема: Лицензия разработчика Play Market
заслуженный участник
Сейчас нет на сайте
rrrooorrr12, мой скромный уголок на Маркете. Обращайся, если интересно ))
VuvkДата: Среда, 16 Августа 2017, 08:43 | Сообщение # 80 | Тема: Как я рисую 2D спрайты и векторную графику для игр
заслуженный участник
Сейчас нет на сайте
Но... ведь... по нынешним правилам тогда нужно банить flatingo, как дабл акк? Впрочем, это уже не моё дело. Я сливаюсь, пока не поздно.




Сообщение отредактировал Vuvk - Среда, 16 Августа 2017, 08:50
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг