Наложение текстуры и Direct3D 1.0-3.0

Тема в разделе "WASM.DirectX", создана пользователем Rustem, 27 мар 2006.

  1. Rustem

    Rustem New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2004
    Сообщения:
    429
    Адрес:
    Russia
    Приветствую.



    Собственно сабж. Т.е. как это там реализуется, т.к. не знаю за что зацепится и перехватывать. Хочу вытащить скайбокс из одной очень старой игрушки (MDK),а формат ресурсов игры из-за одной текстуры изучать неохота....
     
  2. keYMax

    keYMax New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2003
    Сообщения:
    276
    Адрес:
    Новоуральск
    В то время было два режима работы с Direct3D: Retained Mode и ImmediateMode...

    Если не ошибаюсь, для создания текстуры в то время использовали например в RM D3DRMCreateTexture,D3DRMLoadTexture и т.п. с помощью которого создавали(загружали) текстуру и получали указатель на интерфейс IDirect3DRMTexture.



    Еще, по моему, там использовалась D3DRMWrap для настройки "обертывания" текстуры вокруг меша согласно u,v координат... (кажется так)



    В любом случае в сети еще можно найти доки от DX2
     
  3. Rustem

    Rustem New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2004
    Сообщения:
    429
    Адрес:
    Russia
    В игре используется ImmediateMode (d3dim.dll)

    И еще этот старый директ икс, оказывется здорово завязан на директ дро, так и метаюсь от интерфейсов DDRAW к DIRECT3D ;)
     
  4. keYMax

    keYMax New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2003
    Сообщения:
    276
    Адрес:
    Новоуральск
    :) до седьмой версии прогать под дх было с заморочками, это точно...
     
  5. Rustem

    Rustem New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2004
    Сообщения:
    429
    Адрес:
    Russia
    Вроде разобрался !!!

    Все на самом деле просто.



    В общем так:

    1. Для создания текстуры сперва создается поверхность ddraw - IDirectDraw_CreateSurface

    В ней все есть.

    2. При вызове DirectDrawSurface_Lock запоминаем параметры

    3. При вызове DirectDrawSurface_Unlock по параметрам скидываем текстуру в файл....

    Возможно не для всех игр, но похоже для большинства...