Проблема прозрачности красного круга - не могу увидеть фон через центр круга (C ++ 98 / Direct3d9) [Закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Проблема прозрачности красного круга - не могу увидеть фон через центр круга (C ++ 98 / Direct3d9) [Закрыто]

Сообщение Anonymous »

Я работаю со старым игровым двигателем, закодированным в C ++ 98 с использованием Direct3d9, и я пытался реализовать красный круг в стиле Royale Royale на экране карты. < /p>
Circle Png < /p>
bg_tile png < /p>
< /p>

< /p> < /h3> do:

[*] i рендеринг плиточный фон (bg_tile.ddj), который охватывает всю область карты. circle_5.ddj).

[*] Эти текстуры красного круга предназначены для прозрачных центров , как кольцо/пончик, так что карта под ней можно увидеть в середине. Проблема:

Circle появляется, но его центр не является прозрачным

это кажется фоном (bg_tile.ddj). Ожидается. рендеринг трубопроводов .
📄 Вот упрощенная версия моего кода рендеринга:
cpp
if (!s_texturesLoaded)
{
s_bgTileTexture = Fun_CacheTexture_Create("interface\\royale\\bg_tile.ddj");
for (int i = 0; i < 5; ++i)
{
char path[128];
sprintf(path, "interface\\royale\\circle_%d.ddj", i + 1);
s_redCircleTextures = Fun_CacheTexture_Create(path);
}
s_texturesLoaded = true;
}

// Draw background tile
if (s_bgTileTexture)
{
g_RStateMgr.SetTextureForStage(0, s_bgTileTexture);
g_RStateMgr.SetDeviceFVFState(0x104);
// draw quad...
}

// Draw animated red circle
int loop = GetTickCount() / 111 % 5;
const IDirect3DBaseTexture9* redTex = s_redCircleTextures[loop];
if (redTex)
{
g_RStateMgr.SetTextureForStage(0, redTex);
g_RStateMgr.SetDeviceFVFState(0x104);
// draw quad...
}
< /code>
❓ Мои вопросы:
Как я могу сделать центр красного круга прозрачным, так что фон внизу видна? обходной путь?

Подробнее здесь: https://stackoverflow.com/questions/796 ... -center-c9
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»