Fix silly typo breaking alpha test in many cases. Make some log VERBOSE.

This commit is contained in:
Henrik Rydgard 2013-03-11 19:40:31 +01:00
parent 14b35c8d2d
commit de469e77a4
3 changed files with 7 additions and 5 deletions

View File

@ -946,7 +946,7 @@ bool __KernelAllocateVpl(SceUID uid, u32 size, u32 addrPtr, u32 &error, const ch
return false;
}
DEBUG_LOG(HLE, "%s(vpl=%i, size=%i, ptrout=%08x)", funcname, uid, size, addrPtr);
VERBOSE_LOG(HLE, "%s(vpl=%i, size=%i, ptrout=%08x)", funcname, uid, size, addrPtr);
// Padding (normally used to track the allocation.)
u32 allocSize = size + 8;
u32 addr = vpl->alloc.Alloc(allocSize, true);
@ -1073,7 +1073,7 @@ int sceKernelFreeVpl(SceUID uid, u32 addr)
return SCE_KERNEL_ERROR_ILLEGAL_ADDR;
}
DEBUG_LOG(HLE, "sceKernelFreeVpl(%i, %08x)", uid, addr);
VERBOSE_LOG(HLE, "sceKernelFreeVpl(%i, %08x)", uid, addr);
u32 error;
VPL *vpl = kernelObjects.Get<VPL>(uid, error);
if (vpl)

View File

@ -67,7 +67,7 @@ void ComputeFragmentShaderID(FragmentShaderID *id) {
// We only need one clear shader, so let's ignore the rest of the bits.
id->d[0] = 1;
} else {
bool enableAlphaTest = (gstate.alphaBlendEnable & 1) && !IsAlphaTestTriviallyTrue();
bool enableAlphaTest = (gstate.alphaTestEnable & 1) && !IsAlphaTestTriviallyTrue();
bool enableColorTest = (gstate.colorTestEnable & 1);
// id->d[0] |= (gstate.clearmode & 1);
if (gstate.textureMapEnable & 1) {
@ -105,7 +105,7 @@ void GenerateFragmentShader(char *buffer) {
int doTexture = (gstate.textureMapEnable & 1) && !(gstate.clearmode & 1);
bool enableFog = gstate.isFogEnabled() && !gstate.isModeThrough() && !gstate.isModeClear();
bool enableAlphaTest = (gstate.alphaBlendEnable & 1) && !gstate.isModeClear() && !IsAlphaTestTriviallyTrue();
bool enableAlphaTest = (gstate.alphaTestEnable & 1) && !gstate.isModeClear() && !IsAlphaTestTriviallyTrue();
bool enableColorTest = (gstate.colorTestEnable & 1) && !gstate.isModeClear();
bool enableColorDoubling = (gstate.texfunc & 0x10000) != 0;

View File

@ -554,8 +554,10 @@ void FramebufferManager::DestroyAllFBOs() {
for (auto iter = vfbs_.begin(); iter != vfbs_.end(); ++iter) {
VirtualFramebuffer *vfb = *iter;
textureCache_->NotifyFramebufferDestroyed(vfb->fb_address, vfb);
if (vfb->fbo)
if (vfb->fbo) {
fbo_destroy(vfb->fbo);
vfb->fbo = 0;
}
delete vfb;
}
vfbs_.clear();