Несколько поздновато я создал тему, конечно, но... в общем, я сразу решил, что при создании темы обязательно выложу первую версию, и она должна быть играбельна. Собственно в последнее слово всё и "упёрлось". Во-первых, я считал, что играбельность этого проекта напрямую зависит от графики, ну не в общем от графики, а конкретно от отдельных её элементов, без которых играть будет если не невозможно, то очень непросто. Собственно к понятию "графика" применительно к данному проекту я отнёс только тени, но даже и их нормальная реализация требует достаточно немалого времени. И во-вторых, весь код "игры" писался практически с нуля (а точнее просто с нуля, но не считая всяких копи-пастов из уже имеющихся наработок), ну уж графика писалась вообще с чистого листа, ибо и теней подобных и освещение я ещё не делал (это конечно не значит, что получилось что-то выдающееся).
Теперь по самому проекту. Я практически не сомневаюсь, что в том или ином виде "идея", лежащая в основе проекта наверняка давным-давно кем-нибудь была придумана, и возможно даже реализована, хотя.... непонятно кому это могло быть нужно. :-) (Во всяком случае уж точно можно не бояться, что кто-то утащит идею и сделает по ней что-то коммерчески-пригодное.)
Ну ладно, прежде чем давать линки для скачивания предупрежу, проект требует:
1. Процессор с поддержкой SSE (P-III или выше, Athlon XP или выше).
2. Видеокарту с подержкой шейдеров 2.0 (GeForce FX 5200 и выше, Radeon 9500 и выше).
Это МИНИМУМ, необходимый просто для запуска игры, и даже если выша конфигурация соответствует этим требованиям, то это ещё ничего не значит, в частности не значит: 1) что игра у вас запустится, 2) что в неё можно будет нормально играть (особенно на gf FX-ах - посмотрите на fps на скрине ниже, и учитывая, что скрин сделан на Radeon 9800, представьте что будет на FX-ах), 3) что графика будет отображаться корректно.
Если вы всё ещё уверены, что хотите попробовать, то:
1. Для запуска игры требуется (моя же) "библиотека" PhysX Light. Её необходимо скачать всего один раз (и то, при условии, что у Вас либо не установлено вообще PhysX_6.11.01_SystemSoftware, либо рантайм уже установлен, но более ранней версии; кто не понял о чём речь - просто качайте и всё, сама либа НЕ требует НИКАКОЙ доп-й установки ПО/драйверов и т.д.). Вообще, в релизной версии эта либа будет входить в архив с игрой, но поскольку пока игра будет обновляться часто (я надеюсь), я решил хранить всё "по частям".
2. Собственно сама игра (результат уже почти трёхнедельной разработки). Должна быть в той же папке, куда вы распаковали архив с PhysX Light.
Идём дальше, если ваша конфигурация соответствует требованиям (см. выше), однако при запуске появляется сообщение "GL Extension 'EXT_framebuffer_object' not supported", то 90% того, что: 1) у Вас ATI Radeon и 2) у Вас просто старые дрова (я не о видюхе :-), а про дрова к ней). В таком случае рекомендую просто скачать отсюда последнюю версию дров размером ~7 Мб.
И последнее, поскольку используемые шейдеры достаточно сложны, нет никакой гарантии, что они будут нормально работать (или вообще компилироваться) на NV-картах (GfFX/Gf6/Gf7), поэтому чтобы было на что ориентироваться, привожу ниже скрин, как оно вообще должно выглядеть. Если у вас картинка отличается от этой, большая просьба укажите свою конфигурацию и версию дров.
Ну и по самой игре. Задача игры - собрать некоторую конструкцию, которая показывается при старте уровня. Управление: стрелки (или WSAD) + мышь (перемещения + 2 кнопки). Всё. :-)
В будущем планирую добавить (ну кроме новых уровней есст-но) новые режимы игры, напр. есть такие варианты: за некоторый промежуток времени нужно собрать скажем 10 синих кубиков (или др. объектов), или напр. на краю стоят кегли, а рука ограничена по перемещению и достать их не может, задача - с помощью большого шара, бросить его так, чтобы он сбил все кегли (этот вариант уже реализован, однако по геймплею как-то пока ещё не отточен и в игру не входит), ещё была пара идей по другим режимам игры, но я пока слабо себе представляю, возможно ли их сделать хоть сколь-нибудь играбельными, поэтому оставлю пока что есть. И, также буду, конечно, оттачивать геймплей (надо подольше с коэфф-тами трения поиграться), улучшать графику, ну ещё надо что-то делать с источниками света, а то так просто нифига не видно с таким освещением. :-) Ну, в общем до приличного вида.. ещё работать и работать.
P.S. Ах да, чуть не забыл, там в 5-м уровне зелёные кубики не просто так, если их бросить в углубление с краю, то это увеличит время на минуту.
Скачал. Игра запустилась но только черный экран и надпись соберите эту конструкцию.
GeForce 7600 GS
все файлы драйвера версии 6.14.10. 9147
SerP
М-да.. Попробуй запустить эту версию.
И кстати, в файле log.txt что-нить появляется?
Скачал, всё запустилось... напомнило чем-то тетрис))).... стоит немного подинамичней сделать
all
Я там кое-что поменял в рендере. Если не трудно, проверьте ещё раз (ссылка та же, в первом посте). Должно работать и на ATI, и на NV.
tav
GeForce 7600GT / 93.71
По ссылке из первого поста - черный экран. Та, которая _NV работает нормально.
Забавная игруха. Мне понравилась :) Единственно конечно да с освещением надо бы чего-нибуть наколдовать.
Вот теперь все работает.
90-100 fps
all
В общем, я добавил 3 новых уровня. Ссылка та же - в первом посте (если вдруг опять не пойдёт на NV... тогда качать _NV-версию по прежней ссылке, кстати теперь не факт, что хотяб эта версия сработает, так что, пож-ста, укажите сразу, у кого на NV пошла последняя версия).
Ну и кое-что изменил в освещении. Так уже хоть что-то видно. Особенно хорошо стало видно конструкции на экране задания - теперь даже с неосвещённой стороны видна форма конструкций. Пришлось правда усложнить пикс. шейдер. Эту модель освещения я назвал UltraAmbient. :-)
tav
Ага, теперь работает, и видно тоже лучше стало.
Вот только что-то там с трением не то - манипулятор ко всему буквально приклеивается даже при самом легком касании - раздражает немного его все время в симметричное состояние приводить.
tav
p4 3.2
1 GiB ram
GeForce FX 5200 128 MiB ForceWare 91.47
WinXP Pro SP2 перацкий
Падает в софтварню, 0.9 FPS =) (обе версии одинаково, причем fps как ни странно совершенно одинаков в 640.480 и 1280.1024)
Собственно, оно и должно падать в софт (ибо 5200 не держит FBO).
А теперь субъективное:
Берите пример с Кармака: Doom3 идет на GeForce 2 MX. Не падая в софтварню!
IMHO only. Извините за крик, хочу как лучше.
7er
>Берите пример с Кармака: Doom3 идет на GeForce 2 MX. Не падая в софтварню!
подтверждаю-пробовал.
но только 640х480 с отключением всех эффектов и тормозит=)
7er
>обе версии одинаково
Да там обе версии вообще одинаковы. :-) Мне просто надоело делать разные версии -- я стал путаться :-), а потому просто решил делать одну -- релизную, работающую и на ati и на nv, пока не разберусь в чём дело, почему некоторые оптимизации на nv не работают.
>а лучше сделайте тени на PBO вместо FBO!
Ага. Там сначала и было через p-buffers сделано (тогда правда было аж 4 источника), я смотрю чё-т тормозит сильно, взял переделал всё на FBO. fps вырос на ~40% (!!!). Тогда я сразу решил -- а ну их нафиг, этих p-buffers.
>ибо 5200 не держит FBO
Да нет, он его держит, т.к. если бы не держал, игра бы просто не запустилась. :-)
Тут дело, имхо, в том, что верш. шейдер достаточно сложный -- в нём считается всё освещение (да, как ни странно, освещение там вершинное :-), чтобы не перегружать и без того сложный пикс. шейдер), и ещё выполняется несколько вспомогательных действий для упрощения пикс. шейдера. Так что мин. требования, думаю, надо скорректировать. Т.е. нужны мин. пикс. шейдеры 2.0, и вершинные 2.0+/2.a. (GF FX 5600 и выше; Radeon 9600, Radeon 9800 и выше (т.е. на 9500 и 9700 наверное тоже работать не будет :-( ).
>* Темновато, добавьте хотя бы капельку эмбиента.
Да там вроде ничё так. А если про скрин -- так он старый, там ещё амбиента вообще не было.
>Берите пример с Кармака: Doom3 идет на GeForce 2 MX
Ну doom3 уже давно прошлый век. Новые технологичные игры просто требуют шейдеры 2.0 (тот же TES4:oblivion), и не запускаются даже на GF4ti. Так что... увы ничем помочь не могу. :-(
>либо вообще возможность тени отключать,
Первоначальная версия была на ffp с простым освещением. Нифига не видно, особенно когда кубик ставишь -- приходится по 10 раз камеру вертеть, чтобы понять как далеко один кубик от другого.
Ладно-ладно, я уже почти накопил на 8800 gtx! =)))
>А если про скрин
Да нет, не про скрин. Это наверно у меня гамма монитора неправельная. В любом случае, всё-таки не помешал бы фон. Звёздное небо например.
>Нифига не видно
Спасибо, теперь я понял зачем тени так нужны.
Всё пошло прекрасно, но на AMD Athlon x2 5200+/2Gb RAM (DDR2 800)/ Radeon x1900GT это и не удивительно =)
Игра интересная, но текстурки хотя-бы по примитиву не помешали, а то глаза сильно напрягает в Grayscale рассматривать
серые кубики на сером фоне.
И ещё немножко пожеланий:
1) Переключать камеру должен сам игрок. Во-первых добавит интригу и внесёт разнообразие в геймплей, одновременно избавив тебя от нареканий на глючную камеру.
2) Зум камеры скроллингом с фокусом на захват.
3) "Пальцы" захвата сделать жёсткими, а то смотрятся они как-то нереально, застряют на стенках и цепляются за всё подряд.
Тема в архиве.