1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Нужны игры под DDRAW, для проверки утилиты -

Тема в разделе "Мастерская", создана пользователем black_ninja, 21 фев 2008.

  1. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    Приветствую!

    В общем сабж. Прочитал тут тему про увеличитель разрешения у игры Falout, решил написать свою такую же, но чтобы для всех игр, юзающих ddraw.
    Нужны именно те, которые не используют всякие IDirect3D7..., так как там сам движок сможет увеличить.

    Идея проста:
    1. Устанавливать большее разрешение экрана, путем перехвата IDirectDraw_SetDisplayMode, автоматом размер PrimariSurface будет такой же как у экрана.
    2. Перхватывать вывод на первичную поверхность (Lock\Unlock), но изображение кадра будет в верхнем левом углу.
    3. Скопировать кадр себе. Увеличить\обработать фильтром и скопировать обратно в в первичную поверхнуть, разлочить ее.

    Это пока тестовая схема, возможно придется доработать...

    Сейчас пробую на игре MDK. Кстати в тулзе есть возможность рипать поверхности в bmp. Так вытащил все бэкграунды из это игры)
     
    Vladar, BoaKaa, Siberian_GRemlin и ещё 1-му нравится это.
  2.  
  3. marginal2k

    marginal2k

    Регистрация:
    1 мар 2007
    Сообщения:
    171
    так вопрос в чем?
    выкладывайте утилиту - мы протестим.))

    или нужны названия игр для тестирования?

    fallout 1, 2, jagged alliance 2, 2.5, starcraft...
     
  4. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    Нужны игры для внутреннего тестирования, чтобы не очень большие.
    На паблик выкладывать рано.

    Готово ядро, перхватывающее методы директ икса.
    Все остальное: зумер-величитель, риппер, подключаются как плагины.
     
  5. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Простой способ определить, что игра использует чистый DirectDraw – должна импортироваться библиотека DDRAW.DLL, и из неё исподьзоваться только одна функция – DirectDrawCreate.
     
  6. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    MisterGrim Я в курсе.
    Нужны именно такие
     
  7. marginal2k

    marginal2k

    Регистрация:
    1 мар 2007
    Сообщения:
    171
    насколько небольшие?

    ufo 1, 2 (win-версии)? (правда для них есть уже свои ddraw-хаки)
    mk 3 (win-версия)?

    о! abuse - win-версия на некотором железе (моем например) тормозииииит жутко.
     
    Последнее редактирование: 21 фев 2008
  8. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Можно обратить внимание на игры, использующие SDL.
     
  9. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    Как Я уже сказал сейчас подопытный кролик - MDK, есть Carmageddon под 95 винду, тоже хорошо подходит.

    Похоже игры с окончанием на 95 подойдут неплохо))

    Размер макс метров по 20

    С абузе прикольно было , если принудительно увеличить разрешение экрана, то становится видено все пространство, которое входит в окно, можно видеть врагов на этаж выше\ниже\слева\справа )
     
    Последнее редактирование: 21 фев 2008
  10. marginal2k

    marginal2k

    Регистрация:
    1 мар 2007
    Сообщения:
    171
    ну вот то, что я написал под этот размер подходит
     
  11. VorteX DrAgON Троллей не кормлю, сами сдохнут.

    VorteX DrAgON

    Legacy

    Регистрация:
    20 сен 2004
    Сообщения:
    3.050
    Далеко за примером ходить не надо.

    Heroes of Might and Magic III

    Добавлено через 3 минуты
    black_ninja,
    И правда, все гениальное просто.
    А как с быстродействием дело обстоит? Ведь на ресайзинг и фильтрацию КАЖДОГО кадра будет уходить процессорное время.
     
    Последнее редактирование: 22 фев 2008
  12. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    VorteX DrAgON
    Идея была взята с замечательного эмулятора спектрума unreal, В нем есть фильтры, позволяющие очень неплохо обработать оригинальный кадр

    Подумалось, почему бы не добавить в готовые игры, тем более в дх с перехватом все просто.
    Время на обработку уходить конечно будет, но на современных компах и при всяких SSE2,3,4) можно будет оптимизировать
     
  13. BoaKaa Oldboy

    BoaKaa

    Legacy

    Регистрация:
    6 апр 2006
    Сообщения:
    2.319
    black_ninja, а можно немного подробнее про способ реализации?
    Или, если подобное возможно, исходники увидеть?
    Это модифицированная библиотека для Fallout'a или собственноручно написанная?
     
  14. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    BoaKaa
    Вручную на С. Все сделано на перехвате функций дх.
    Исходник тот смотрел. жутко не понравилась реализация-жестко привязано к экзе)
    У меня все попроще, и в идеале под любую игру)

    Насчет исходников, не секрет, стучите в асю 404558476
     
    Последнее редактирование: 22 фев 2008
  15. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    При реализации идеи возник один большой подводный камень, в виде тормозов при чтении из видеопамяти, которое я не знаю как обойти...

    Подробнее тут: http://www.gamedev.ru/code/forum/?id=77105
    Если знаете как, то стукните в асю, она постом выше
     
  16. BoaKaa Oldboy

    BoaKaa

    Legacy

    Регистрация:
    6 апр 2006
    Сообщения:
    2.319
    black_ninja, а исходники от мода к Fallout'у не смотрел? Мож быть там что-нибудь тебе подскажет.
     
  17. John Freeman

    John Freeman

    Регистрация:
    13 май 2004
    Сообщения:
    14.241
    А, решили мою идею реализовать? А в чём проблема то? Я изначально сказал же что просто порезать фоловский лоадер и всё будет уже в готовом виде.
     
  18. BoaKaa Oldboy

    BoaKaa

    Legacy

    Регистрация:
    6 апр 2006
    Сообщения:
    2.319
    John Freeman, я тоже сначала подумал, что black_ninja решил твою идею реализовать, но оказалось, что он сам пишет эту библиотеку.
    Кстати, если фоловский лоадер просто порезать, то такой трюк не пройдёт, там править кое что придётся, я уже смотрел немного. Но что именно править сейчас не скажу, уже не помню.
     
  19. black_ninja

    black_ninja

    Регистрация:
    12 ноя 2007
    Сообщения:
    32
    BoaKaa, я делаю свою либу

    Попробовал как в утилите для фалаута, возвращать свой буфер, так в меню работает, а в самой игре нет. В самой игре, используются методы IDirect3D, и рэндерится все в бэк буфер. А в фалауте, похоже используется чистый ddraw.
    Проверить не могу, тк игры нет
     
    Последнее редактирование: 28 фев 2008
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление