Конференция "Игры" » Прозрачность текстуры в Direct3D9 [Delphi, Windows]
 
  • ElectriC © (20.04.07 01:01) [0]
    Как правильно устанавливать прозрачность текстуры если:
    1. Допустим, у меня есть текстура, загруженная из .jpg файла и
    нужно установить прозрачность только чёрного цвета этой текстуры?
    2. Нужно сделать "затенение"(т.б. плавное исчезновение/появление) текстуры?
  • Мистер Т (20.04.07 08:05) [1]
    1. Из .jpg ты так ни чего не загрузишь, будут "рваные пятна", так как в джипеге значительная потеря графической информации.
    Ну, а из другого формата:
    HRESULT D3DXCreateTextureFromFileEx(
     LPDIRECT3DDEVICE9 pDevice,
     LPCTSTR pSrcFile,
     UINT Width,
     UINT Height,
     UINT MipLevels,
     DWORD Usage,
     D3DFORMAT Format,
     D3DPOOL Pool,
     DWORD Filter,
     DWORD MipFilter,
     D3DCOLOR ColorKey,
     D3DXIMAGE_INFO * pSrcInfo,
     PALETTEENTRY * pPalette,
     LPDIRECT3DTEXTURE9 * ppTexture
    );


    ColorKey
    [in] D3DCOLOR value to replace with transparent black, or 0 to disable the color key. This is always a 32-bit ARGB color, independent of the source image format. Alpha is significant and should usually be set to FF for opaque color keys. Thus, for opaque black, the value would be equal to 0xFF000000.
    http://msdn2.microsoft.com/en-us/library/bb172802.aspx

    Если не используешь D3DX - то придется скорее всего ручками =)

    2. Сишные примеры, но принцип работы с директом один:
    * пример текстуры с альфа-каналом
    http://www.codesampler.com/dx9src/dx9src_4.htm#dx9_alpha_blending_texture
    * пример с прозрачностью, задаваемой материалом, степень прозрачности можно изменять
    http://www.codesampler.com/dx9src/dx9src_4.htm#dx9_alpha_blending_material

    З.Ы. Купи наконец книгу а ?
    * Краснов - DirectX в проектах Delphi. (восьмой директ правда, но суть одна)
    * Фленов - Тоже что-то про DirectX и Delphi (уже девятый директ, есть примеры с шейдерами)
  • Мистер Т (20.04.07 08:05) [2]
    1. Из .jpg ты так ни чего не загрузишь, будут "рваные пятна", так как в джипеге значительная потеря графической информации.
    Ну, а из другого формата:
    HRESULT D3DXCreateTextureFromFileEx(
     LPDIRECT3DDEVICE9 pDevice,
     LPCTSTR pSrcFile,
     UINT Width,
     UINT Height,
     UINT MipLevels,
     DWORD Usage,
     D3DFORMAT Format,
     D3DPOOL Pool,
     DWORD Filter,
     DWORD MipFilter,
     D3DCOLOR ColorKey,
     D3DXIMAGE_INFO * pSrcInfo,
     PALETTEENTRY * pPalette,
     LPDIRECT3DTEXTURE9 * ppTexture
    );


    ColorKey
    [in] D3DCOLOR value to replace with transparent black, or 0 to disable the color key. This is always a 32-bit ARGB color, independent of the source image format. Alpha is significant and should usually be set to FF for opaque color keys. Thus, for opaque black, the value would be equal to 0xFF000000.
    http://msdn2.microsoft.com/en-us/library/bb172802.aspx

    Если не используешь D3DX - то придется скорее всего ручками =)

    2. Сишные примеры, но принцип работы с директом один:
    * пример текстуры с альфа-каналом
    http://www.codesampler.com/dx9src/dx9src_4.htm#dx9_alpha_blending_texture
    * пример с прозрачностью, задаваемой материалом, степень прозрачности можно изменять
    http://www.codesampler.com/dx9src/dx9src_4.htm#dx9_alpha_blending_material

    З.Ы. Купи наконец книгу а ?
    * Краснов - DirectX в проектах Delphi. (восьмой директ правда, но суть одна)
    * Фленов - Тоже что-то про DirectX и Delphi (уже девятый директ, есть примеры с шейдерами)
  • Мистер Т (20.04.07 08:06) [3]
    Пардон - инет глюкнул =(
    З.Ы. модераторы, можно удалить второй (дублирующий пост) и этот заодно ?
  • Sapersky (20.04.07 11:53) [4]
  • ElectriC © (20.04.07 15:01) [5]

    > З.Ы. Купи наконец книгу а ?* Краснов - DirectX в проектах
    > Delphi. (восьмой директ правда, но суть одна)* Фленов -
    > Тоже что-то про DirectX и Delphi (уже девятый директ, есть
    > примеры с шейдерами)

    Нема денег пока!!!
  • Sapersky (20.04.07 15:14) [6]
    В [4] ссылки на закачку Краснова и ещё кучи книг.
 
Конференция "Игры" » Прозрачность текстуры в Direct3D9 [Delphi, Windows]
Есть новые Нет новых   [119247   +10][b:0][p:0.001]