2 Commits
Author SHA1 Message Date
Byte 475f5ac496 fix: Sword Blocking crashes the game when achievements enabled 2026-07-09 07:09:45 +02:00
Byte ef7d4658dc performance boost 2026-07-08 18:40:09 +02:00
4 changed files with 12 additions and 10 deletions
-7
View File
@@ -1085,13 +1085,6 @@ void Gui::render(float a, bool mouseFree, int xMouse, int yMouse)
vector<wstring> lines;
// Only show version/branch for player 0 to avoid cluttering each splitscreen viewport
if (iPad == 0)
{
lines.push_back(ClientConstants::VERSION_STRING);
lines.push_back(ClientConstants::GetLCENString());
}
if (minecraft->options->renderDebug && minecraft->player != nullptr && minecraft->level != nullptr)
{
lines.push_back(minecraft->fpsString);
+5 -1
View File
@@ -10,7 +10,11 @@ public:
int id;
bool isLoaded;
int ticksSinceLastUse;
static const int UNUSED_TICKS_TO_FREE = 20;
// @CDevJoud
// changing the lifetime of the texture from 20 ticks(1 sec) to 200 ticks (10 sec)
// as it helps the texture to have longer lifetime and reducing the usage of loadTexture for every second/frame
// note that we dont remove the code that removes the textures from `tick()` as it is required in memory limited environment such as older Consoles(PS3/XBOX360)
static const int UNUSED_TICKS_TO_FREE = 200;
MemTexture(const wstring& _name, PBYTE pbData, DWORD dwBytes, MemTextureProcessor *processor);
~MemTexture();
@@ -985,7 +985,9 @@ void CleanupDevice()
static Minecraft* InitialiseMinecraftRuntime()
{
app.loadMediaArchive();
RenderManager.Initialise(g_pd3dDevice, g_pSwapChain);
// @CDevJoud: No need to call this method as it gets called once in `InitDevice()`
// Calling it again and it results of 20MB of memory leak!
//RenderManager.Initialise(g_pd3dDevice, g_pSwapChain);
app.loadStringTable();
ui.init(g_pd3dDevice, g_pImmediateContext, g_pRenderTargetView, g_pDepthStencilView, g_rScreenWidth, g_rScreenHeight);
InputManager.Initialise(1, 3, MINECRAFT_ACTION_MAX, ACTION_MAX_MENU);
@@ -1133,7 +1135,8 @@ void StartGame(Win64LaunchOptions launchOptions, int nCmdShow)
Minecraft* pMinecraft = InitialiseMinecraftRuntime();
if (!pMinecraft) { CleanupDevice(); return; }
g_bResizeReady = true;
ShowWindow(g_hWnd, (nCmdShow != SW_HIDE) ? SW_SHOWMAXIMIZED : nCmdShow);
UpdateWindow(g_hWnd);
MSG msg = {0};
while (WM_QUIT != msg.message && !app.m_bShutdown)
{
+2
View File
@@ -109,9 +109,11 @@ Stat *CommonStats::get_itemsUsed(int itemId)
#if (defined _EXTENDED_ACHIEVEMENTS) && (!defined _XBOX_ONE)
// 4J-JEV: I've done the same thing here, we can't place these items anyway.
if (itemId == Item::porkChop_cooked_Id) return Stats::blocksPlaced[itemId];
return nullptr;
#endif
if (itemId == Item::porkChop_cooked_Id) return Stats::blocksPlaced[itemId];
return nullptr;
}
Stat *CommonStats::get_itemsBought(int itemId)