mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-06 11:07:18 -04:00
Frame interp: Fix cloud shadow flickering (#446)
This commit is contained in:
@@ -293,11 +293,6 @@ void J3DModel::calcMaterial() {
|
||||
|
||||
material->calc(getAnmMtx(material->getJoint()->getJntNo()));
|
||||
}
|
||||
|
||||
#if TARGET_PC
|
||||
if (mModelData->needsInterpCallBack())
|
||||
dusk::frame_interp::add_interpolation_callback(&J3DModel::interp_callback, this);
|
||||
#endif
|
||||
}
|
||||
|
||||
void J3DModel::calcDiffTexMtx() {
|
||||
@@ -500,6 +495,11 @@ void J3DModel::entry() {
|
||||
joint->entryIn();
|
||||
}
|
||||
}
|
||||
|
||||
#if TARGET_PC
|
||||
if (mModelData->needsInterpCallBack())
|
||||
dusk::frame_interp::add_interpolation_callback(&J3DModel::interp_callback, this);
|
||||
#endif
|
||||
}
|
||||
|
||||
void J3DModel::viewCalc() {
|
||||
|
||||
@@ -383,6 +383,8 @@ bool J3DMaterial::needsInterpCallBack() const {
|
||||
case J3DTexMtxMode_EnvmapBasic:
|
||||
case J3DTexMtxMode_EnvmapOld:
|
||||
case J3DTexMtxMode_Envmap:
|
||||
case J3DTexMtxMode_ProjmapBasic:
|
||||
case J3DTexMtxMode_Projmap:
|
||||
case J3DTexMtxMode_ViewProjmap:
|
||||
case J3DTexMtxMode_ViewProjmapBasic:
|
||||
return true;
|
||||
|
||||
+5
-1
@@ -296,7 +296,11 @@ J3DModelData* dRes_info_c::loaderBasicBmd(u32 i_tag, void* i_data) {
|
||||
addWarpMaterial(modelData);
|
||||
}
|
||||
|
||||
if (i_tag == 'BMDR' || i_tag == 'BMWR') {
|
||||
// FRAME INTERP NOTE: Always create shared DL buffers so we can use J3DMaterial::diff()
|
||||
#ifndef TARGET_PC
|
||||
if (i_tag == 'BMDR' || i_tag == 'BMWR')
|
||||
#endif
|
||||
{
|
||||
s32 result = modelData->newSharedDisplayList(J3DMdlFlag_UseSingleDL);
|
||||
if (result != kJ3DError_Success) {
|
||||
return NULL;
|
||||
|
||||
Reference in New Issue
Block a user