diff --git a/engine/src/renderer/3d/pipeline/dynamic/core/dynpip_renderer.cpp b/engine/src/renderer/3d/pipeline/dynamic/core/dynpip_renderer.cpp index fef2f6f..de4c204 100644 --- a/engine/src/renderer/3d/pipeline/dynamic/core/dynpip_renderer.cpp +++ b/engine/src/renderer/3d/pipeline/dynamic/core/dynpip_renderer.cpp @@ -189,6 +189,8 @@ void DynPipRenderer::addBufferDataToPacket(DynPipBag** bags, const u32& count) { void DynPipRenderer::sendPacket() { dma_channel_wait(DMA_CHANNEL_VIF1, 0); + dma_channel_wait(DMA_CHANNEL_GIF, 0); // Wait for texture. Issue #182. + // dma_wait_fast(); // This have no impact on performance dma_channel_send_packet2(currentPacket, DMA_CHANNEL_VIF1, true); diff --git a/engine/src/renderer/3d/pipeline/minecraft/programs/mcpip_programs_manager.cpp b/engine/src/renderer/3d/pipeline/minecraft/programs/mcpip_programs_manager.cpp index 248a7a6..ddcda2b 100644 --- a/engine/src/renderer/3d/pipeline/minecraft/programs/mcpip_programs_manager.cpp +++ b/engine/src/renderer/3d/pipeline/minecraft/programs/mcpip_programs_manager.cpp @@ -87,6 +87,7 @@ void BlockizerProgramsManager::uploadBlock(bool isMulti) { vu1BlockData = isMulti ? BlockMultiUploaded : BlockSingleUploaded; dma_channel_wait(DMA_CHANNEL_VIF1, 0); + // dma_channel_wait(DMA_CHANNEL_GIF, 0); // ? - ? dma_channel_send_packet2(staticPacket, DMA_CHANNEL_VIF1, true); } @@ -168,6 +169,8 @@ void BlockizerProgramsManager::sendPacket(McpipProgram* program) { packet2_utils_vu_add_end_tag(currentPacket); dma_channel_wait(DMA_CHANNEL_VIF1, 0); + dma_channel_wait(DMA_CHANNEL_GIF, 0); // Wait for texture. Issue #182. + // dma_wait_fast(); // This have no impact on performance dma_channel_send_packet2(currentPacket, DMA_CHANNEL_VIF1, true); diff --git a/engine/src/renderer/3d/pipeline/static/core/stapip_qbuffer_renderer.cpp b/engine/src/renderer/3d/pipeline/static/core/stapip_qbuffer_renderer.cpp index 1bf1adc..3e32cc4 100644 --- a/engine/src/renderer/3d/pipeline/static/core/stapip_qbuffer_renderer.cpp +++ b/engine/src/renderer/3d/pipeline/static/core/stapip_qbuffer_renderer.cpp @@ -173,6 +173,7 @@ void StaPipQBufferRenderer::sendObjectData( packet2_utils_vu_add_end_tag(objectDataPacket); dma_channel_wait(DMA_CHANNEL_VIF1, 0); + // dma_channel_wait(DMA_CHANNEL_GIF, 0); // 289 - 294 dma_channel_send_packet2(objectDataPacket, DMA_CHANNEL_VIF1, true); } @@ -365,6 +366,8 @@ void StaPipQBufferRenderer::sendPacket() { "Packet is too big. Internal error"); dma_channel_wait(DMA_CHANNEL_VIF1, 0); + dma_channel_wait(DMA_CHANNEL_GIF, 0); // Wait for texture. Issue #182. + // dma_wait_fast(); // This have no impact on performance dma_channel_send_packet2(currentPacket, DMA_CHANNEL_VIF1, true);