mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-11-23 19:59:16 +01:00
- fixed homebrew icon pngs with transparency correctly now. no more blank black covers.
This commit is contained in:
parent
ab898c98b5
commit
1724046bf3
Binary file not shown.
BIN
out/boot.dol
BIN
out/boot.dol
Binary file not shown.
Before Width: | Height: | Size: 4.1 MiB After Width: | Height: | Size: 4.1 MiB |
@ -1549,6 +1549,16 @@ u64 CCoverFlow::getChanTitle(void) const
|
||||
m_items[loopNum(m_covers[m_range / 2].index + m_jump, m_items.size())].hdr->settings[1]);
|
||||
}
|
||||
|
||||
bool CCoverFlow::getRenderTex(void)
|
||||
{
|
||||
return m_renderTex;
|
||||
}
|
||||
|
||||
void CCoverFlow::setRenderTex(bool val)
|
||||
{
|
||||
m_renderTex = val;
|
||||
}
|
||||
|
||||
/* this is used for smallbox homebrew icon png's that have alpha transparency */
|
||||
/* cover textures can't have transparency. this creates a new texture by filling the transparent parts */
|
||||
void CCoverFlow::RenderTex(void)
|
||||
@ -1558,6 +1568,7 @@ void CCoverFlow::RenderTex(void)
|
||||
DrawTexture(m_renderingTex);
|
||||
m_vid.renderToTexture(*m_renderingTex, true);
|
||||
}
|
||||
setRenderTex(false);
|
||||
}
|
||||
|
||||
bool CCoverFlow::select(void)
|
||||
|
@ -137,6 +137,8 @@ public:
|
||||
wstringEx getTitle(void) const;
|
||||
u64 getChanTitle(void) const;
|
||||
const char *getFilenameId(const dir_discHdr *curHdr);
|
||||
bool getRenderTex(void);
|
||||
void setRenderTex(bool);
|
||||
void RenderTex(void);
|
||||
//
|
||||
static u32 InternalCoverColor(const char *ID, u32 DefCaseColor);
|
||||
|
@ -448,9 +448,9 @@ TexErr STexture::fromPNG(TexData &dest, const u8 *buffer, u8 f, u32 minMipSize,
|
||||
}
|
||||
_convertToRGBA8(dest.data, tmpData2, dest.width, dest.height);
|
||||
DCFlushRange(dest.data, dest.dataSize);
|
||||
m_vid.prepare();
|
||||
m_vid.setup2DProjection(false, true);// false = prepare() already set view port, true = no scaling - draw at 640x480
|
||||
CoverFlow.RenderTex();
|
||||
CoverFlow.setRenderTex(true);
|
||||
while(CoverFlow.getRenderTex())
|
||||
usleep(50);
|
||||
_convertToRGBA(tmpData2, dest.data, dest.width, dest.height);
|
||||
DCFlushRange(tmpData2, Size2);
|
||||
Cleanup(dest);
|
||||
|
@ -1630,6 +1630,8 @@ void CMenu::_mainLoopCommon(bool withCF, bool adjusting)
|
||||
m_vid.prepare();
|
||||
m_vid.setup2DProjection(false, true);// false = prepare() already set view port, true = no scaling - draw at 640x480
|
||||
_updateBg();
|
||||
if(CoverFlow.getRenderTex())
|
||||
CoverFlow.RenderTex();
|
||||
m_vid.setup2DProjection();// this time set the view port and allow scaling
|
||||
_drawBg();
|
||||
m_btnMgr.draw();
|
||||
@ -1654,6 +1656,8 @@ void CMenu::_mainLoopCommon(bool withCF, bool adjusting)
|
||||
|
||||
/* background and coverflow drawing */
|
||||
_updateBg();
|
||||
if(CoverFlow.getRenderTex())
|
||||
CoverFlow.RenderTex();
|
||||
if(withCF && m_lqBg != NULL)
|
||||
CoverFlow.makeEffectTexture(m_lqBg);
|
||||
if(withCF && m_aa > 0)
|
||||
|
Loading…
Reference in New Issue
Block a user