public void ResetSproc() { sproc.SetTexture("Palette", currentPaletteTexture); sproc.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); SpriteRenderer.shader.SetTexture("Palette", currentPaletteTexture); SpriteRenderer.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); WorldSpriteRenderer.shader.SetTexture("Palette", currentPaletteTexture); WorldSpriteRenderer.SetViewportParams(lastResolution, depthScale, depthOffset, lastZoom, lastScroll); FontSpriteRenderer.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); }
public void SetPalette(HardwarePalette palette) { if (palette.Texture == currentPaletteTexture) { return; } Flush(); currentPaletteTexture = palette.Texture; SpriteRenderer.SetPalette(currentPaletteTexture); FontSpriteRenderer.SetPalette(currentPaletteTexture); WorldSpriteRenderer.SetPalette(currentPaletteTexture); WorldModelRenderer.SetPalette(currentPaletteTexture); sproc.SetTexture("Palette", currentPaletteTexture); }
public void SetViewportParams(int2 scroll, float zoom) { // PERF: Calling SetViewportParams on each renderer is slow. Only call it when things change. var resolutionChanged = lastResolution != Resolution; if (resolutionChanged) { lastResolution = Resolution; SpriteRenderer.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); ImguiSpriteRenderer.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); FontSpriteRenderer.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); sproc.SetViewportParams(lastResolution, 0f, 0f, 1f, int2.Zero); } // If zoom evaluates as different due to floating point weirdness that's OK, setting the parameters again is harmless. if (resolutionChanged || lastScroll != scroll || lastZoom != zoom) { lastScroll = scroll; lastZoom = zoom; WorldSpriteRenderer.SetViewportParams(lastResolution, depthScale, depthOffset, zoom, scroll); WorldModelRenderer.SetViewportParams(lastResolution, zoom, scroll); } }