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

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

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

Кодерский уголок

Тема в разделе "Мастерская", создана пользователем Dimouse, 10 сен 2006.

  1. Dimouse King of Mice

    Dimouse

    Администратор Переводчик

    Регистрация:
    18 апр 2003
    Сообщения:
    35.133
    В соответствии с назначением раздела, в этой теме предполагается обсуждать конкретные вопросы, которые у вас возникают при создании своих программ (в частности - игр), помогать другим, размещать полезные ссылки на статьи и материалы, которые могут пригодиться другим.

    Что здесь не допускается:
    - беспорядочный флуд на всевозможные темы, в том числе общие обсуждения языков программирования без конкретики (карается по статье "флуд и оффтопик" *),
    - разжигания на темы "что лучше, Си или Си++ и чем они отличаются?", "какой язык программирования лучше X или Y?" и т.п. (карается по статье "флейм и участие в холиварах" *),
    - мерение пиписьками в стиле "я лучше программирую" или "ты не умеешь программировать" (карается по статье "оскорбление участников и их взглядов" *).

    Всё это допускается в специально созданной теме "Беседка для программистов или «Бутерброд с кодом».

    * по усмотрению модератора также возможно применение блокировки в данной теме.

    Оригинальное сообщение
     
    Последнее редактирование модератором: 24 ноя 2014
    CY8R4Y нравится это.
  2.  
  3. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
  4. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    @Bato-San, увы, в данном случае не годится: про оверлеи Трухильо упоминает только в первой главе в списке функций (и дальше в книге нигде не использует), а fourcc и yuv вообще "выходят за рамки этой книги" (L). :-(
     
  5. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
  6. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    @Bato-San, поставил качать с рутрекера. Но, пардон за нескромный вопрос, Гончарова-Салихова ты точно так же не читал, как и Трухильо?
     
    Последнее редактирование: 2 янв 2017
  7. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
  8. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    @Bato-San, отвечаю: шо там, шо там примеры в стиле "mosquito" и "ddoverlay": в оверлей грузится картинка (иногда напрямую байтиками через умножение на коэффициенты с плавающей точкой, иногда вообще через GetDC() и LoadImage()) и выводится. Всё. :-(
    Может, где-то в дебрях MSDN и есть внятное изложение правильной последовательности действий с оверлеем, но мне не попалось. :-(
     
  9. Ogr 2 лол

    Ogr 2

    Хелпер Переводчик

    Регистрация:
    25 мар 2008
    Сообщения:
    6.492
    никто тут в написании шейдерах не шарит? мне нужно всего то картинку с центра сдвинуть влево:
    ai89.fastpic.ru_thumb_2017_0117_bd_98fbe6e2320c524d0a08cca4db1fb0bd.jpeg
    под этот "скин":
    ai89.fastpic.ru_thumb_2017_0120_4e_76844dc73aeebbf403a770ce47f7534e.jpeg
    сами шейдеры: _solid12345's analog tv.rar
     
  10. repareMan

    repareMan

    Регистрация:
    1 дек 2016
    Сообщения:
    36
    Добрый день уважаемые!
    Перейду сразу к сути: Есть набор библиотек, которые генерируют тайловый ландшафт, расставляют объекты взаимодействия (этакий менеджер ресурсов).
    Далее надо расставить объекты для взаимодействия, но классов объектов достаточно много.
    Есть какое нибудь красивое решение по этой проблеме?
    Спасибо. Извините за сумбур.
     
  11. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    описаны вводные. Сама проблема в чём ? В лени ?
     
  12. repareMan

    repareMan

    Регистрация:
    1 дек 2016
    Сообщения:
    36
    @Bato-San, нет не в лени. Я как бы написал эти библиотеки, теперь пишу менеджер ресурсов и делаю расстановку юнинитов. Спрашиваю потому, что возможно есть какие нибудь правила, хороший тон в компановке ресурсов.
    Я как бы хотел бы сделать небольшую игру на библиотеках и раздавать библиотеки всем желающим. Не хочу показаться малоопытным разработчиком игр.
     
  13. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    Всё с чего то начинали. Так что нет резона об этом печься.

    Рассуждать же об улучшении того, что ещё не выложено - весьма сложное дело. И порядком бессмысленное.
    Могу порекомендовать только не забывать грамотно комментировать всё подряд.
     
  14. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
  15. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    @Рыжий Тигра, ты только заметил ? :D Но сайт пока что не восстановили. И VX упрятан от новичков.
     
  16. Steel Rat Stainless

    Steel Rat

    Регистрация:
    28 дек 2006
    Сообщения:
    3.260
    Господи! [неистово крестится]
     
    jack7277 нравится это.
  17. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Есть проблема. Нужно быстро выводить картинку в YUV-оверлей.
    Базовая идея: сделать YUV-surface в системной памяти, исходную картинку из RGB конвертировать в этот surface своими силами, затем Blt()'ом перегнать сконвертированную картинку в оверлейный surface в видеопамять - это должно быть, на глаз, где-то втрое быстрее, чем конвертировать сразу в видеопамять.
    Примерно вот так (полный код слишком громоздок, тут только выдержки):
    Код:
      DDPIXELFORMAT // dwSize, dwFlags,
    //  dwFourCC, dwRGBBitCount, dwRBitMask, dwGBitMask, dwBBitMask, dwRGBAlphaBitMask
         yuy2_format  = { sizeof( DDPIXELFORMAT ), DDPF_FOURCC,
           '2YUY', 0, 0, 0, 0, 0 };
      DDSURFACEDESC yuv_desc = { sizeof( DDSURFACEDESC ) };
      LPDIRECTDRAW dd; // полностью готовый к работе
      IDirectDrawSurface *yuv_dds = NULL;
    // ..............
      yuv_desc.dwFlags = DDSD_CAPS | DDSD_WIDTH | DDSD_HEIGHT | DDSD_PIXELFORMAT;
      yuv_desc.dwWidth = 1280; yuv_desc.dwHeight = 960;
      yuv_desc.ddpfPixelFormat = yuy2_format;
      yuv_desc.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN | DDSCAPS_SYSTEMMEMORY;
      rc = dd->CreateSurface( yuv_desc, &yuv_dds, NULL );
    Наткнулся на грабли: CreateSurface() при попытке создания surface'а в системной памяти возвращает код ошибки "кривой формат пиксела". А в видеопамяти surface создаётся на ура.
    Проверено на двух машинах:
    - Intel Celeron-4 Nortwood, 2 ГГц, 1 ГБ ОЗУ, ATI RADEON 7500 AGP, Windows 2000, DirectX 9.0c;
    - Intel Pentium G850, 2.9 ГГц, 4 ГБ ОЗУ, Intel HD Graphics, Windows XP SP3 32-бит, DirectX 9.0c.
    В чём может быть проблема, куда копать дальше? Или плюнуть на попытку перегнать YUV'ную картинку Blt()'ом и искать способы быстрой передачи пикселов сквозь AGP, тсзать, вручную?
     
  18. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    Попробовать, например, VMR-9.

    Сразу рисовать RGB не конвертируя?
     
  19. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    А каким боком видеорендерер до показа картинки?
    Не годится: Intel HD Graphics (встроенный в современные процы), например, RGB-оверлеи вообще не рюхает.
     
  20. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    На wasm'е подсказали идею - использовать DDPF_FOURCC в паре с DDPF_RGBTOYUV, делюсь.
    --- добавлено 7 фев 2017, предыдущее сообщение размещено: 7 фев 2017 ---
    @daemolisher, кстати, в идее использовать для вывода картинки видеорендерер вместо directdraw'а - что-то есть: как минимум, независимость от особенностей железа. Расскажи подробнее, как это можно реализовать!
     
  21. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Дарю полезную фишку для любителей Micro$oft Visual Studio 6. Сам на нём сижу - удобное, простенькое, не особо требовательное к железу и поддерживает двухмашинную отладку. Но и в нём своя ложка дёгтя - не имеет настройки на русский язык и при попытке выбрать юникодный (не чисто кириллический) шрифт показывает русские строки в исходниках евромаймуницей. :-(
    А тут мне попался очень удобный (как на мой вкус) шрифтец: Input Mono - как раз юникодный. В попытке побороть еврокрокозябры я нарыл статью в ЖЖ "Глючит русская кодировка в VC6++" - способ остроумный, но чересчур уж трудоёмкий. Однако три дня экспериментов и раздумий позволили заметно упростить решение:
    • Добавляем в registry строковый параметр:
      Код:
      [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
      "InputMono,0"="InputMono,204"
      - подстановку кодовой страницы для нужного шрифта (в данном случае - шрифт "Input Mono" вместо кодовой страницы 1252 (по-микро$офтовски 0) получит 1251-ю (204)).
    • Перезагружаемся.
    • Выбираем этот же шрифт в настройках MSVS6 - или через options, или опять через registry:
      Код:
      [HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Format\Source Window]
      "FontFace"="InputMono"
      (второй способ позволяет заодно настроить размеры, расцветки и т.д.).

    Способ работает в английских win2000 и winXP с последними сервис-паками, под более новыми не проверял. В русском winxp sp3 по крайней мере этот же Input Mono изначально встал под msvs6 правильно, без крокозябров.
     
  22. Stickman

    Stickman

    Регистрация:
    10 мар 2017
    Сообщения:
    13
    Заинтересовала игра "Саботаж: Кулак империи", но покопался в сети и не нашел на нее ни одного мода. Хотя и графоний и мир вполне на уровне своего времени. В игру я так понял, забыли завезти редактор. Есть ли какие-нибудь сторонние программы позволяющие залезть в код игры, отредактировать текстуры, добавить новые локации?
     
    Последнее редактирование: 12 мар 2017
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление