Angelica 2.x
Angelica 2 is what the pack renders through now: a new chunk renderer, rebuilt shader support and new video options.
Angelica 2.0 and the Celeritas renderer
The world is now drawn by Celeritas, a newer Sodium port, in place of Angelica 1's Sodium 0.2 port.
read before updating - Angelica #1221. The steps are on the Before you update page.
Shipped in: Angelica #1221, Angelica #1544
Connected stained glass
Stained glass now connects, as plain glass already did. Connected textures can also change with the neighbouring block.



Shipped in 19 pull requests
- Implement compact ctm (Angelica #1636)
- Compact CTM Fix (Angelica #1640)
- Fix AO Lighting for compact CTM (Angelica #1697)
- Enable CTM mining/breaking overlays (Angelica #2052)
- CTM Transitions - neighbor detection and influence (Angelica #2047)
- Fix some CTM Allocations (Angelica #2044)
- Avoid rescanning atlas for each CTM tile (Angelica #2029)
- CTM integration improvements (Angelica #1931)
- CTM: Fix "flipped" value not set to false in setFace() (Angelica #1913)
- Compact CTM: Decouple block face and rendered face (Angelica #1907)
- Make Glass CTM Compact, Add Stained Glass Compact CTM (Angelica #1873)
- Fix ctm crash due to null (Angelica #1852)
- Add new CTM mode "compact_expanded" to generate textures on runtime (Angelica #1840)
- Remove CTM adding .png to tile paths (Angelica #1832)
- Fix bottom-face being flipped for compact CTM (Angelica #1820)
- Compact CTM Fixes (Angelica #1726)
- Fix CTM inventory texture bleed (Angelica #1721)
- Fix CTM to not spread to nearby TEs (Angelica #1695)
- Added abutting block detection and processing (Angelica #2068)
Complete Complementary Shaders + Euphoria Patches Support
This wonderful shader pack has been fully supported at last. A long way from GregTech: New Horizons version 2.8!



Shipped in 20 pull requests
- Shadow Compute Shaders (Angelica #1333)
- First pass at setup/begin pass support (Angelica #1335)
- Misc Shaderpack loading fixes (Angelica #1343)
- Fix/bug fixes (Angelica #1905)
- Fix issues that directly affects Euphoria Patches + Complementary (Angelica #1782)
- More specific shader fixes pertaining to EP (Angelica #1831)
- Add gbuffer_lightning (Angelica #1787)
- Fix Complementary + Euphoria Patches ULTRA on SDL-GPU (Angelica #2195)
- DH: Fix shaderpack fading (Angelica #2091)
- Add a second profiles button to Angelica (Angelica #1555)
- Update entity.properties formatting (Angelica #1197)
- Parallel shader transformation and use Transformer instead of Utils (Angelica #1191)
- Fix other dynamic uniforms not updating properly (Angelica #1610)
- Return
phaseChangeNotifier(Angelica #1596) - Fix PBR atlas failing to load all textures (Angelica #1132)
- Fix: entity/item textures and lighting break with shaders when name tags render (batched font GL state) (Angelica #1091)
- POM Support (Angelica #1927)
- Custom images, textures, SSBO, SmoothLightPipeline & UseSeparateAO (Angelica #1284)
- Allow devs to target the dragon death rays as its own entity id (Angelica #1836)
- Make shader based clouds work with iris shaderpacks, and port optimizations from #1685 (Angelica #1793)
New Features and Options
Grass, dirt, sand and other natural blocks get randomly rotated top faces, so flat areas stop looking tiled.
There are some new settings to mess with, such as shader pack settings search, smooth zoom, a font brightness slider, and sharp or blended texture filtering.
With Block Biome Blending on Fancy, grass, leaves and water blend their color across each block face, so biome borders no longer show as steps. This also now blends the sky color so no more weird color snaps.
Texture Filtering can now be RGSS, Anisotropic, or both, with its own Anisotropic Filtering level.
We've also introduced Texel Blending where you can switch the blending of edges between texels from sharp (Nearest) or smooth (Linear)!
VSync now has a Mailbox mode, which gets rid of tearing without the extra latency of regular VSync.
The camera has a few new options! Smooth Zoom has a speed slider, and Cinematic Camera Zoom is available. Dynamic FOV can be set to Enabled, Mods Only or Disabled. View Bobbing can bob only the hand or only the camera, and Hurt Screen Shake sets how hard the camera tilts when you take damage. Horizon and Terrain Fog now have their own toggles, and the menu background can be set to Random.
Text Effects gets its own page. You can toggle RGB colors, gradients, rainbow text, wave text (with an amplitude slider), upside-down Dinnerbone text, per-segment drop shadows and & color code conversion. Font Brightness and a Unicode Shadow Offset are also in the font settings.
Shader packs get a "Save Compiled Shaders" option that keeps compiled programs on disk, so restarts and new dimensions load much faster. You can also and open the pack selection screen with new keybinds.
With those keybinds...here's what we have
- Ctrl+F: opens search on the shader settings page. Pressing it again closes search.
- Tab: switches between the Shader Pack List and Shader Pack Settings menu.
- F1: hides the GUI so you can see the world behind it, so you can preview setting changes live. Press F1 again, or Esc, to bring it back.
- Ctrl+D: asks whether to enable shader debug mode, which shows shader errors.
- Ctrl+G: asks whether to allow unknown shaders to load.
read before updating - Angelica #1221
Shipped in 99 pull requests
- Add Secondary Color Support to Angelica (Angelica #2046)
- Blockrotations/Natural Textures (Angelica #2020)
- SDL GPU backend, TESR Batching/caching API, Tracy Integration (Angelica #1993)
- Add a flag to StateAwareTesselator for per-quad directional shading (Angelica #1989)
- Generalize non-terrain block's material ID setting (Angelica #1981)
- RenderChunkEvent for fluxloading to avoid mixin (Angelica #1974)
- Attempt at making mipmaps better (Angelica #1952)
- Add API for allowing other mods to have celeritas support (Angelica #1936)
- POM Support (Angelica #1927)
- font: load bundled .ttf/.otf fonts from fontfiles/ and config/angelia/fonts/ (Angelica #1904)
- Add shader setting search functionality and center selection (Angelica #1897)
- Add Uniforms for End Flashes (Angelica #1892)
- feat: add smooth zoom option (Angelica #1890)
- Support glPixelStore in display lists (Angelica #1854)
- Emulate glTexParameter(pname=GL_GENERATE_MIPMAP) on core (Angelica #1845)
- ClientEvent framework (primarily written for LiteloaderLoader) (Angelica #1843)
- Allow devs to target the dragon death rays as its own entity id (Angelica #1836)
- Add Japanese Localizations (Angelica #1830)
- Update and fix Iris' shader menus (Angelica #1828)
- Add double_plant handling to match modern (Angelica #1815)
- Link up block outline shader to iris shaders (Angelica #1814)
- Cubic Chunks Compatibility (Angelica #1808)
- feat(hand): add cancellable RenderHandEvent for canRender (Angelica #1806)
- Make shader based clouds work with iris shaderpacks, and port optimizations from #1685 (Angelica #1793)
- Add gbuffer_lightning (Angelica #1787)
- Mark ClientFixer as incompatible (Angelica #1786)
- Add NBT matching to list of valid block/item entries (Angelica #1771)
- Add view bobbing mode (Angelica #1761)
- add auto emissive overlay for any block (Angelica #1710)
- Add Cosmetic Armor support for Dynamic Lights (Angelica #1708)
- Add targeting of snow-covered blocks. (Angelica #1696)
- Add "Mods Only" Dynamic FOV option (Angelica #1680)
- fix(iris): implement full GL alpha test (Angelica #1673)
- Standalone GLSM mod - Umbra (Angelica #1642)
- Add FlatteningMap and EntityFlatteningMap (Angelica #1635)
- Automate the collection of legacy IDs for very old shaderpacks. (Angelica #1631)
- Port shadow translucent (aka shadow_water) from upstream (Angelica #1628)
- Load modern block properties (Angelica #1626)
- Update zh_CN.lang (Angelica #1623)
- Create new deferred overlay system to fix z-fighting issues (Angelica #1605)
- Handle GL_POLYGON in legacy conversion (Angelica #1603)
- Adapt shader block id override for Angelica 2.x (Angelica #1601)
- External Redirector API (Angelica #1580)
- More pass throughs (Angelica #1561)
- Additions (Angelica #1557)
- Add a second profiles button to Angelica (Angelica #1555)
- Distant Horizons shader support (Angelica #1553)
- Supernova Support (Angelica #1552)
- Lwjgl3 support (Angelica #1544)
- Make fog controls work with BoP fog (Angelica #1539)
- Add glTexImage3D with IntBuffer (Angelica #1506)
- Add some missing glGetTexEnv* (Angelica #1503)
- Add missing overloads (Angelica #1500)
- Add missing overload (Angelica #1495)
- So secret you can't see them. (Angelica #1475)
- Emulate glLineWidth on core using geom shaders (Angelica #1468)
- Replace panorama with modern opengl equivalent (Angelica #1466)
- Add slider for hurt screen shake intensity (Angelica #1401)
- TESRs Translucency Sorting (Angelica #1384)
- Add new emitter modes (Angelica #1368)
- GLSL Downgrading (Angelica #1348)
- First pass at setup/begin pass support (Angelica #1335)
- Shadow Compute Shaders (Angelica #1333)
- Add hardcoded entities and player_cape (Angelica #1327)
- add biomeDictionary and lotr compat to BiomeUniforms (Angelica #1324)
- Adds "name_tag" feature (Angelica #1318)
- Add option to disable f3 additions (Angelica #1308)
- Make feature flag defines available in shader.properties preprocessing (Angelica #1303)
- Respect shader render layer overrides (Angelica #1293)
- Custom images, textures, SSBO, SmoothLightPipeline & UseSeparateAO (Angelica #1284)
- Add support for dimension.properties (Angelica #1283)
- Add Various Features (#1209) (Angelica #1277)
- Dynamic light improvements (Angelica #1255)
- Better video settings search (Angelica #1254)
- Add more menu backgrounds (Angelica #1225)
- Angelica 2.0.0 - alpha Celeritas [read before updating] (Angelica #1221)
- Random menu backgrounds (Angelica #1217)
- Adds entity_flame ID to Angelica (Angelica #1202)
- Update entity.properties formatting (Angelica #1197)
- glDrawBuffers Support (Angelica #1174)
- glFrontFace, glHint, and glBlendColor (Angelica #1156)
- Font config UI improvements (Angelica #1128)
- Add VAO's (Angelica #1126)
- Uniform Additions and fixes (Angelica #1102)
- Add several missing built-in uniforms (Angelica #1101)
- [Shaders] Basic compatibility with NTM:Space skybox & more (Angelica #1096)
- Update zh_CN.lang (Angelica #1036)
- Port
FIX_BLOCK_CRACKfrom FalseTweaks 2 (Angelica #1023) - support custom fonts on macos (Angelica #2066)
- Replace natural texture rotation hash (Angelica #2073)
- Updated the list of blocks to get rotated (Angelica #2094)
- Improve upon Texture Filtering Work (Angelica #2096)
- Add in-game Tracy capture (Angelica #2156)
- Various font improvements and fixes (Angelica #2165)
- Add option to change mouse movement from Cinematic to Standard while in Angelica Zoom (Angelica #2166)
- Add Galaxy Space compat and fix culling issues (Angelica #2131)
- Make clouds respect client's render distance (Galaxy-Space-GTNH #157)
- Better Biome Blending (Angelica #2152)
- Improve biome blending and improve compat (Angelica #2180)
Rendering and Shader Changes
Along with full support for Complementary + Euphoria Patches means we now have the ability to give block, items, and entities their own IDs that shader packs can use to apply materials to. Before 2.x, we couldn't even distinguish between sand and red sand! Now we have a full pipeline for assigning materials to all sorts of things. For example:
| Entry | Meaning |
|---|---|
stone | Vanilla block |
stone:0 | Vanilla block with meta |
minecraft:stone | Block with namespaced ID specified |
minecraft:stone:0 | Single meta |
minecraft:stone:0,1,2 | Multiple metas |
minecraft:furnace:lit=true | Blockstate property |
minecraft:oak_log:axis=y,x:variant=oak | Multiple blockstate properties |
flower_pot:1[Item=minecraft:red_flower,Data=0] | Used together with NBT brackets |
Wait blockstates? How does that work? We also included a giant modern IDs to legacy IDs map to correctly pull and assign the legacy blocks to the shader pack's assigned material IDs!
read before updating - Angelica #1221
Shipped in 60 pull requests
- Flyby and OSX improvements (Angelica #2061)
- Tracy 0.14 (Angelica #2019)
- vsync adjustments: on/mailbox/off + windows input lag fix + glsl parsing optimizations (Angelica #2009)
- Adjust vsync and fps limiters, and fix WSR with player models (Angelica #2002)
- Switch to an offset based cloud adjustment for World Providers that adjust it (Angelica #1962)
- Up default zoom speed to 20 (Angelica #1910)
- Narrow and make damage overlay a config option (Angelica #1886)
- Add compat for hodgepodge's async icon loading (Angelica #1799)
- Register later (Angelica #1763)
- Adjust options screen width (Angelica #1748)
- Adjust IDynamicLightProducer to allow passing an ItemStack parameter (Angelica #1734)
- Remove DSA from GLSM & other stuff (Angelica #1723)
- Increase MAX_COLOR_BUFFERS limit to 32 (Angelica #1704)
- NTM:Space compat rework and update (Angelica #1675)
- Always render clouds late for shaders (Angelica #1649)
- Disable clouds when shaders are active (Angelica #1648)
- Narrow another overly broad transformer exclusion (Angelica #1609)
- FINE, we'll work with java8/forge. (Angelica #1606)
- Better horse support (Angelica #1599)
- Update alpha test to hopefully work with RTM and AE2 (Angelica #1597)
- Make the mod no-op on server (Angelica #1574)
- Change compat config (Angelica #1563)
- Log once instead of every time. (Angelica #1520)
- Improvements (Angelica #1516)
- Better font rendering MC parity + book mode (Angelica #1489)
- Invert Horizon and Terrain Fog toggles (Angelica #1454)
- Add MixinWavefrontObject back (Angelica #1452)
- Core followups (Angelica #1445)
- re-enable Block Transformer when not running with rfb (Angelica #1418)
- Target OpenGL 3.3 core profile [check your build] (Angelica #1412)
- Now with 200% more screen shake (Angelica #1402)
- Detect quads rendered by vanilla AO pipeline and only recalculate lighting for those (Angelica #1391)
- Add runtime toggle for HUD Caching, and disable by default (for now at least) (Angelica #1374)
- Thread safe biome cache & VAO Redirection (Angelica #1367)
- Camera and Menu Tweaks (Angelica #1354)
- Glc redirects (Angelica #1340)
- Tweaks (Angelica #1329)
- Better Splash support (Angelica #1220)
- Add some transformer exclusions (Angelica #1169)
- Set some defaults for tile entity rendering: (Angelica #1144)
- Increase Scroll Speed in Settings GUIs (Angelica #1106)
- Disable hardcoded custom uniforms by default (Angelica #1100)
- Port modern's damage overlay (Angelica #1777)
- feat: add smooth zoom option (Angelica #1890)
- SDL presenter fixes and frame pacer adjustments (Angelica #2025)
- Add Various Features (#1209) (Angelica #1277)
- [Shaders] Fix NTM:Space sunset not rendering {2.0 regression} (Angelica #1275)
- [Hotfix] Fix NTM:Space mixin targets for X5593_H261 (Angelica #1356)
- FPS pacer work (Angelica #2086)
- Update to Celeritas 2.5.12 with translucency sorting v3 (Angelica #2151)
- Fix shadow pass receiving a full-bright lightmap constant and misreporting terrain renderStage (Angelica #2170)
- Improve shader support for custom block rendering (Angelica #2176)
- Default raw custom textures to bilinear filtering and clamping (Angelica #2198)
- Angelica 2.0.0 - alpha Celeritas [read before updating] (Angelica #1221)
- Improve behavior of Celeritas-based lighting pipeline (Angelica #1296)
- Detect vanilla AO at a higher level (Angelica #1733)
- Majority shader fixes (Angelica #1868)
- Misc Shaderpack loading fixes (Angelica #1343)
- Dynamic light improvements (Angelica #1255)
- Dynamic Lights Improvements (Angelica #1319)
Performance Improvements
We have done a lot, here's a good list of it all:
Startup and loading
- Boot work deferred until mod loading finishes; first shader pack prepared on a background thread while at the main menu.
- Parallel atlas decode, mipmap generation, and batched atlas upload.
- Faster resource lookups: PBR pack index, direct pack queries for emissive textures, regex-free path handling, incremental CTM atlas sizing.
- Faster class transformers (cheaper pre-filtering, map-based lookups).
- Concurrent CTM lookups.
Shaders
- Parallel shader transformation and pack preprocessing.
- Disk caches for transformed source, compiled SPIR-V, cross-compiled MSL/DXBC, preprocessor output, and linked program binaries.
- Linked programs reused in memory when toggling shaders, reloading a pack, or changing dimen
- Cheaper pack parsing and reserved-word renaming; lazy options menu.
- SDL GPU: async stage compiles, cached vertex variants, cheaper buffer and 3D texture clears
Allocations
- Zero-allocation
@Surroundinjector that replaces@WrapOperation/@WrapMethodon about 40 render-path mixins. - Pooled chunk sections, render lists, and world slice contexts; reused uniform and font buff
- Primitive or identity keys in place of boxed or record keys; fewer suppliers, comparators, and strings per frame.
GL state manager
- Copy-on-write attribute push/pop with precomputed masks.
- Cached main-thread context; per-program uniform upload tracking.
- More
glGetqueries answered from cache; cheaper buffer deletion; redundant calls removed. - VAO attribute caching.
- SDL GPU: in-pass depth/stencil clears, cached vertex-input hashes, array-based uniform look
Display lists
- Compiled to VBOs with format batching, merged draws, and collapsed transforms.
- Item frames and block items cached as display lists.
Instancing and batching
- Instanced rain/snow, particles, dropped items, and model cubes.
- Batched entity model parts, items, and shadows.
- Cheaper enchant glint (combined held-item layers, cached armor enchant state, reused instance data).
- Batched mesh cache for chests, signs, skulls, beacon beams, jars, and provider-API renderer
- Interleaved font vertex buffer; cheaper HUD caching; cached entity id lookups.
Culling
- Cached tile entity bounds, tight sign bounds, and class-transform-time tile entity marking.
- JOML frustum tests; shadow-pass tile entity culling; correct camera for cloud culling.
Terrain meshing
- Main-thread-bound chunk tasks moved to separate workers.
- Cached ISBRH thread-safety checks.
- Lighting recalculated only for vanilla-AO quads; fewer material checks.
- Tile entity copy iterates the chunk's tile entity map instead of every block.
- SDL GPU: region-at-a-time shadow voxelization.
Clouds
- VBO cloud renderer with distance-based detail, instanced walls, and worker-thread meshing.
- Skipped while disabled by the shader pack.
Shipped in 53 pull requests
- Do not concat strings from
glCallListwhen debug is off (Angelica #1988) - Do less work (Angelica #1971)
- Cache a few more things on glsm (Angelica #1970)
- Optimize item frame rendering (Angelica #1964)
- No point continuously building clouds if we're not rendering them... (Angelica #1900)
- Upload fewer things (Angelica #1811)
- Improve perf of EmissiveTextureAutoloader.resourceExists (Angelica #1805)
- Remove registerIcons call in MCPF MixinTextureMap (Angelica #1795)
- Be more lazy (Angelica #1794)
- Display list stuff (Angelica #1750)
- Add cached block item renderer (Angelica #1730)
- Fix terrible performance on Intel (Angelica #1718)
- Get rid of some allocations, and use immutable variants for the suppliers (Angelica #1612)
- Optimize Streaming (Angelica #1515)
- Lazy init entity lighting maps (Angelica #1476)
- Actually sleep in FPS limiter (Angelica #1471)
- Optimize fontrenderer (Angelica #1447)
- Remove boxing unboxing in RenderPassHelper (Angelica #1438)
- add shouldTransform & make it significantly faster (Angelica #1433)
- Replace framebufferRender with a VBO (Angelica #1432)
- Speedup block transformer by transforming every class directly (Angelica #1420)
- ASM redirectors micro optimizations (Angelica #1416)
- Parallelizing CTMUtils (Angelica #1393)
- Don't double check infinite bounds (Angelica #1321)
- Dynamic Lights Improvements (Angelica #1319)
- Optimize TileEntities (Angelica #1314)
- AABB Caching (Angelica #1309)
- Set defaults once per TE pass instead of once per TE (Angelica #1213)
- Parallel shader transformation and use Transformer instead of Utils (Angelica #1191)
- Stop recording normals... we're already baking them into a VBO (Angelica #1170)
- Add display list compilation/optimization (Angelica #1141)
- Optimize CloudRenderer (Angelica #1123)
- Optimize hud caching (Angelica #1103)
- Fix multithreaded rendering running blocking tasks on main workers. (Angelica #1084)
- Display List Refactor (Angelica #1360)
- Display List Overhaul (Angelica #1200)
- optimize resource reload (Angelica #2070)
- Instance more things (Angelica #2104)
- More Cloud Optimizations (Angelica #2114)
- Render pass and state stack optimizations (Angelica #2124)
- Properly handle display lists with the push/pop optimizations (Angelica #2126)
- Weather instancing (Angelica #2127)
- Stop blocking chunk workers on deferred ISBRH blocks (Angelica #2136)
- Optimize Enchant Glint Rendering (Angelica #2140)
- Parallelize atlas loading and fix SDL-GPU mip-level targets (Angelica #2167)
- Cut per-frame allocations in rendering mixins (Angelica #2182)
- Fix voxeliation performance under SDL GPU (Angelica #2188)
- Cut redundant GLSM state tracking (Angelica #2189)
- Speed up boot (Angelica #2190)
- Work around SDL Metal fence bugs and pump during present (Angelica #2191)
- Cut more per-frame allocations in terrain and rendering (Angelica #2193)
- Cache transformed and compiled shaders on disk (Angelica #2194)
- Cache Iris Shaders (Angelica #2206)
Fixes
Many....many fixes for mods that draw through Angelica.
Shipped in 244 pull requests
- fix world client leaks in bop fog handlers (Angelica #2056)
- Fix animate-only-visible-textures setting (Angelica #2054)
- Fix color leak getting into guis (Broken ColorUtils) (Angelica #2045)
- Use bound texture instead of hardcoded vanilla textures for cached vanilla model rendering (Angelica #2037)
- Synchronize CubicChunks tile entity mutations (Angelica #2031)
- SDL presenter fixes and frame pacer adjustments (Angelica #2025)
- Defer ticking on TEs we eagerly create until they get a description packet (Angelica #2018)
- Many bug fixes (Angelica #2017)
- Sign Fix (Angelica #2016)
- TE and world access thread safety for rendering, and remesh on first TE update packet. (Angelica #2014)
- fix starminer rotation & optimize starminer rotateCorpseByGravity (Angelica #2005)
- SDL followup fixes (Angelica #2001)
- More fixes (Angelica #1995)
- A few fixes (Angelica #1994)
- Fix compat for the original battlegear 2 (Angelica #1992)
- Fix Mekanism crash when it cast chunkTileEntityMap to HashMap (Angelica #1982)
- Fixes World Lighting to Text Rendering so its not Fullbright (Angelica #1976)
- Stupid splash thread (Angelica #1973)
- fix(DisplayListVBO): guard against null VAO and zero-count draw during display list replay (Angelica #1969)
- Make mipmap attribution hook not suck and thread-safe (Angelica #1967)
- Chunk -> world coords (Angelica #1966)
- Properly handle flags removed in core (Angelica #1965)
- Fix scrollbar not following mouse (Angelica #1961)
- Fix some CMEs and black screens seen during boot/splash. Should be minimal overhead after splash. (Angelica #1959)
- Fix plascrete/cleanroom trophy rendering (Angelica #1957)
- Properly gate end flash (Angelica #1954)
- Add some missing buffer redirects (Angelica #1953)
- Handle some Intel driver shenanigans (Angelica #1951)
- Fix at_midBlock at high coordinates (Angelica #1949)
- Reload unicode glyph widths on resource pack change (Angelica #1944)
- Fix Streams not rendering correctly (Angelica #1932)
- Reenable compute shaders (Angelica #1918)
- Fix infinite farplane causing incorrect culling in pdim with no clouds (Angelica #1917)
- Fix/bug fixes (Angelica #1905)
- Fix lotr biome colours again (essentially copy of https://github.com/GTNewHorizons/Angelica/pull/25) (Angelica #1902)
- Fix space elevator cable (Angelica #1896)
- Support more glDrawElement overloads in display lists (Angelica #1895)
- Betweenlands fix (Angelica #1894)
- End portal fix (Angelica #1891)
- Fix deps (Angelica #1888)
- Fix map rendering issue in xaero's map mods (Angelica #1880)
- Fix universium shader (Angelica #1877)
- Handle glDrawArraysInstanced and variants, as well as dynamic TE bounds. (Angelica #1874)
- Separate out entity overlay render mixins (Angelica #1872)
- Attempt to fix deferred particle batching (Angelica #1871)
- Majority shader fixes (Angelica #1868)
- Force invalidate dh depth tex when reconnecting DH Textures (Angelica #1862)
- Rework DH matrix handling (Angelica #1861)
- A few redirects for calls that DH was using that we weren't redirecting (Angelica #1859)
- Fix enchant glint fix so that it looks proper (Angelica #1856)
- Fix shaders not loading the correct dim (Angelica #1844)
- Fix Steadfast not loading right (Angelica #1838)
- Be less lazy (Angelica #1834)
- More specific shader fixes pertaining to EP (Angelica #1831)
- Narrow more transformer exclusions (Angelica #1827)
- Fixes a regression with TFC. (Angelica #1822)
- Fix beacon beams (Angelica #1821)
- More class loading order fun with java 8... (Angelica #1804)
- Fix shadow map from being clobbered on Windows (Angelica #1789)
- Fix GL_FEEDBACK readback using correct attribute 0 VBO (Angelica #1783)
- Fix issues that directly affects Euphoria Patches + Complementary (Angelica #1782)
- Resolve generic compressed image formats (Angelica #1781)
- Fixes crash with FFP shader linking (Angelica #1780)
- Fix osx crash (Angelica #1778)
- Port modern's damage overlay (Angelica #1777)
- Clear block and item renderlist on resource reload (Angelica #1773)
- fix: refresh ClonedChunkSection biome data on cache hit (Angelica #1769)
- Stop burying the error due to things catching RuntimeExceptions.... (Angelica #1767)
- Fix crash on windows (Angelica #1766)
- Minecraft is a dirty dirty liar. (Angelica #1764)
- Stops draw/startDrawing in ISBRH (Angelica #1759)
- Misc fixes - Journeymap and Xaeros (Angelica #1756)
- Properly end the dynamic lighting profiler section (Angelica #1751)
- Fix skeleton legs from being jammed into their pelvis (Angelica #1747)
- Fix DH framebuffer UNSUPPORTED after resize (Angelica #1741)
- [NTM:Space] Fix mixins in obfuscated environment (Angelica #1738)
- Detect vanilla AO at a higher level (Angelica #1733)
- Fix Already tesselating logs (Angelica #1729)
- Fix intel detection (Angelica #1722)
- Fix stale uniforms when switching shader program (Angelica #1715)
- Handle recoverable block render failures in celeritas meshing (Angelica #1705)
- Maybe fix DragonAPI on OSX - take two (Angelica #1689)
- Fix infinite extent AABB crash w/ kotlin, and ensure proper sizing/padding on VAO/VBO snapshots. (Angelica #1687)
- AE2 Crash Fix (Angelica #1684)
- Fix class circularity error with early redirector (Angelica #1670)
- Don't advance buffer positions for Material shininess in GLSM (Angelica #1668)
- Various fixes (Angelica #1652)
- Fix some issues someone was having with nixos (Angelica #1647)
- DH: Fix mismatch from upstream for solas shaders (Angelica #1645)
- Match OpenGL Buffer Behavior for glGet (Angelica #1637)
- Do a similar fix as MixinDroppedItemGlintEdges to held items (Angelica #1632)
- Safely handle off client thread crash reports/glGetString (Angelica #1630)
- Handle GL_QUAD_STRIP in legacy conversion (Angelica #1629)
- Pass mc_Entity like upstream does (Angelica #1627)
- Fix item reset hopefully for the last time (Angelica #1621)
- Only run the logic on bop grass (fix my mod bugging out) (Angelica #1620)
- Shader fixes (Angelica #1619)
- Defer client attributes. They're uploaded/handled elsewhere. Should fix a crash on j8/lwjgl2 (Angelica #1618)
- More Double overloads (Angelica #1613)
- Fix other dynamic uniforms not updating properly (Angelica #1610)
- fix: correctly handle cross-chunk TileEntity render bounds (Angelica #1607)
- fix: crash when client-side vertex attrib pointers are used in core profile (Angelica #1602)
- Handle method handles in invokedynamic (Angelica #1598)
- Return
phaseChangeNotifier(Angelica #1596) - Blur Compat (Angelica #1593)
- Fix missing glGetTexImage method crash when using XaerosWorldMap (Angelica #1592)
- Fix crash with fancy block particles. (Angelica #1591)
- Centers the Wither Armor (Angelica #1590)
- Pass texturemap to composite shader and honor texture replacements (Angelica #1589)
- Fix sky lighting on drawCrossSquare rendered blocks. (Angelica #1576)
- Fix blend leak in BatchingFontRenderer (Angelica #1575)
- Various fixes (Angelica #1571)
- Fixes 3rd person enchant glints z-fighting with the item model (Angelica #1569)
- Fix alpha test (Angelica #1567)
- Fix modded enchant glints not being animated (Angelica #1566)
- ASM Hook Compat (Angelica #1562)
- Clear cache on reload shaders (Angelica #1559)
- Maybe fix botania mana pool rendering (Angelica #1558)
- Misc fixes (Angelica #1550)
- Fix font alpha test transparency and BlockGrass subclass rendering with Celeritas AO (Angelica #1547)
- use mixin to change the f3 text background instead of canceling the event (Angelica #1537)
- Further em dash removal (Angelica #1526)
- use classnode name in CeleritasBlockTransform (Angelica #1521)
- Fix mob's eyes from z-fighting (Angelica #1519)
- Replace compatibility mode texture formats (Angelica #1518)
- Fix matching across newlines (Angelica #1505)
- Botania fix take two (Angelica #1501)
- Fix overwrite visibility crash (Angelica #1499)
- Maybe make Xaero work on j8 (Angelica #1494)
- UI Fix (Angelica #1492)
- Split MixinRenderManager into two for DAPI compat (Angelica #1480)
- Snapshot VAO/VBO data during display list compilation, like mesa does. (Angelica #1473)
- Fix load -> enter -> leave: panorama rendering, cleanup state & fix test (Angelica #1467)
- More core profile followons (Angelica #1464)
- Fix intel tests (Angelica #1442)
- fix rfb exclusions (Angelica #1440)
- Fixes (Angelica #1434)
- Maybe less leaky (Angelica #1414)
- Maybe fix holo inventory again - v2 - final.xlsx (Angelica #1413)
- Add unknown blend state and BufferBlendOverride handling from modern Iris (Angelica #1408)
- use renderViewEntity instead of thePlayer in shader shadows (Angelica #1392)
- Invisible unicode bugfix (Angelica #1390)
- Sign Culling (Angelica #1386)
- Less logging + small refactor (Angelica #1379)
- Fix crash without speedupAnimations enabled (Angelica #1377)
- Add PFAA Geologica cobble/bricks to the BlockCrackFix Whitelist (Angelica #1370)
- [Hotfix] Fix NTM:Space mixin targets for X5593_H261 (Angelica #1356)
- Fix crash with clearBufferSubData (Angelica #1355)
- Fix nested display lists rendering twice (Angelica #1349)
- Fix arrows inheriting item material IDs (Angelica #1347)
- Fix end portal w/ Shaders (Angelica #1346)
- Misc Shaderpack loading fixes (Angelica #1343)
- Remove redundant resource refresh (Angelica #1342)
- fix(render): adapt hodgepodge fixBottomFaceUV (Angelica #1334)
- Fix NPE (Angelica #1332)
- Use entity position instead of camera pos (Angelica #1330)
- Fix hud flickering (Angelica #1325)
- Chunk Thread Saftey (Angelica #1320)
- Use the proper blockAccess on the main thread (Angelica #1317)
- Fix currentRenderedItemId for ItemBlocks (Angelica #1307)
- Lighting fixes (Angelica #1306)
- Buffer fixes (Angelica #1304)
- Fix entity material handling. (Angelica #1298)
- Improve behavior of Celeritas-based lighting pipeline (Angelica #1296)
- Properly cleanup (Angelica #1294)
- Add a nvidia workarounds from celeritas (Angelica #1286)
- Actually allocate the (minimal) display lists so we stop clobbering the hand renderer on shader reload (Angelica #1278)
- [Shaders] Fix NTM:Space sunset not rendering {2.0 regression} (Angelica #1275)
- Fix a race condition (Angelica #1273)
- Support glCallLists (Angelica #1265)
- Fix OSX F3 crash (Angelica #1264)
- Fixes (Angelica #1251)
- Better OSX J8 Support (Angelica #1248)
- Improve glyph replacement logic (Angelica #1247)
- Fix GLSL 120 support (Angelica #1243)
- Disable custom fonts with GraphicsEnvironment.isHeadless() (Angelica #1218)
- Text cutoff quickfix (Angelica #1216)
- Texture cache fixes (Angelica #1198)
- Fix block meta parsing by removing space in split (Angelica #1196)
- fix #1190: remove remap = false from GuiIngameForge (Angelica #1192)
- Fix deadlock in CTMUtils (Angelica #1189)
- Shader boot fix + more DSA (Angelica #1184)
- Fix broken text rendering after certain characters (Angelica #1178)
- [BCF] Fix z-fighting on GT ores 2: here we go again edition (Angelica #1161)
- fix compatability profile detection (Angelica #1159)
- Add clear depth in display lists (Angelica #1152)
- GT5 custom glyph handling and visual fixes (Angelica #1148)
- Fix PBR atlas failing to load all textures (Angelica #1132)
- Revert "limit the amount of dropped items rendered exactly to the config value (#973)" (Angelica #1125)
- Disable conflicting mixins when DragonAPI is present (Angelica #1119)
- [BCF] Fix z-fighting on GT ores (Angelica #1113)
- Fix GLSM display list (Angelica #1110)
- Fall back to display lists if not using VBOs (Angelica #1109)
- Set maxShiftBy to fix some log warnings (Angelica #1105)
- Fix custom font rendering on BetterLoadingScreen splash (Angelica #2063)
- Activate FFP when enabling with program 0 (Angelica #2064)
- Fixes TESR texts (travel anchors) depth test bug (Angelica #2071)
- Fix for texture being mistakenly turned off by Iris (Angelica #2072)
- Fix tile entity pass markers skipped on newer class files (Angelica #2075)
- properly clear PBRAtlasTexture (Angelica #2085)
- Fix issues with Schematica (Angelica #2088)
- Remove superflous glVertexAttribPointer call (Angelica #2090)
- DH: Fix shaderpack fading (Angelica #2091)
- Fix cloud elevation setting (Angelica #2093)
- SDL: flush vertex attribs + deferred texture uploads before readback (Angelica #2095)
- fix resize handling on non-main thread for lwjgl2 (Angelica #2106)
- Fix microblock transparency in the hotbar (Angelica #2107)
- Fix borking modded mobs with broken eyes (Angelica #2108)
- Redirected Util.checkGLError to respect disableErrorChecks (Angelica #2110)
- Fix mipmaps bleeding (Angelica #2112)
- Fix texture filtering sampling regression (Angelica #2115)
- Fix edge cases with cloud wraps (Angelica #2122)
- Only enable shader DH compat if DH is enabled (Angelica #2130)
- Properly reset/flush state for crash interceptors (Angelica #2133)
- Fix shader packs in modded dimensions (Angelica #2137)
- Fix scissor clears wiping the whole screen on SDL-GPU (Angelica #2138)
- Use actual camera when doing cloud related culling and fuctions (Angelica #2139)
- Give each GL drawable its own GLSM context (Angelica #2142)
- Fix NEI items vanishing with ModularUI2 screens open on SDL-GPU (Angelica #2153)
- Emulate color logic ops and fix pixel readback on SDL-GPU (Angelica #2157)
- Fix Iris issues with instancing and batching (Angelica #2158)
- Fix attrib stack overflow from world-less TESR item renderers (Angelica #2159)
- TESR state and batching leak fixes (Angelica #2162)
- Fix held and dropped blocks rendering off-center (snow golem pumpkin) (Angelica #2164)
- Fix Depth Mask Issue for Nametags, etc for Text (Angelica #2168)
- Font Texture Crash Fix on Splash Screen (Angelica #2169)
- Fix async atlas with KaizPatchX (Angelica #2175)
- Fix signs being ungodly bright (Angelica #2185)
- Fix the look of EFR Boats under batching (Angelica #2186)
- Fix shader batching and instancing (Angelica #2187)
- Fix DSA binding restore and liquid colors (Angelica #2192)
- Fix Complementary + Euphoria Patches ULTRA on SDL-GPU (Angelica #2195)
- Settle frame pacing after an inconsistent vsync gate (Angelica #2197)
- Fix splash issues (Angelica #2200)
- Fix HUD caching flicker and match non-cached GL state (Angelica #2201)
- Plenty of fixes for GTNH (Angelica #2202)
- Fix crash when mods measure text off-thread with a custom font (Angelica #2204)
- Internal format fix (Angelica #2179)
- Fix (Angelica #2196)
- Fix ClassCastException when info panel text renders without Angelica font mixin (Nuclear-Control #52)
- Delegate JVM to the child class loader (GTNHExtLib #9)
- Fix: entity/item textures and lighting break with shaders when name tags render (batched font GL state) (Angelica #1091)
- Always delete texture parameter cache (Angelica #1193)
- Various Shader Fixes (Angelica #1315)
Dark mode text from resource packs
Resource packs can now recolour GUI text for a dark theme from pack.mcmeta instead of every language file. It reaches text that mods draw themselves too.
Shipped in: Angelica #2118, Angelica #2178, Angelica #2184, Angelica #2205
Contributors
Everyone who authored, reviewed or co-authored a change on this page, with how many of them:
@mitchej123 (417), @Eclipse-Sol (75), @sisyphussy (34), @DeathFuel (23), @DarkShadow44 (19), @Caedis (17), @Alexdoru (16), @kotmatross28729 (14), @MalTeeez (12), @danyadev (11), @tiffit (10), @Dream-Master (8), @ah-OOG-ah (6), @VortexSo4 (6), @Cleptomania (5), @embeddedt (5), @Ranzuu (5), @SpacEagle17 (5), @boubou19 (4), @Kai-Z-JP (4), @KAMKEEL (4), @koolkrafter5 (4), @kurrycat2004 (4), @wlhlm (4), @Auynonymous (3), @copilot-pull-request-reviewer (3), @jss2a98aj (3), @Kremnari (3), @mist475 (3), @Nana-Sakura (3), @Ruling-0 (3), @ABKQPO (2), @Algent (2), @ALongStringOfNumbers (2), @Apis035 (2), @brandyyn (2), @eigenraven (2), @Eldrinn-Elantey (2), @micvog (2), @Midnight145 (2), @NealDeal34 (2), @philipxjm (2), @RecursivePineapple (2), @UltraProdigy (2), @Wokafishh (2), @Yoshy2002 (2), @zerosignal0101 (2), @12411234 (1), @BallOfEnergy1 (1), @branan (1), @Chitak985 (1), @chrombread (1), @copi143 (1), @Creeper-banner (1), @CRIMSTAL (1), @czqwq (1), @GribanovIvan (1), @guusw (1), @HalfCooler (1), @Jakfut (1), @JamesOBrien2 (1), @JohnButlerThird (1), @klorman (1), @Kogepan229 (1), @Kokekabe-Madoha (1), @Kynake (1), @lc-1337 (1), @leagris (1), @Lumarin (1), @MassAnarchyy (1), @MellowArpeggiation (1), @mvanhorn (1), @Nikolay-Sitnikov (1), @PLASMAchicken (1), @qhris (1), @RainVaporeon (1), @RedNicStone (1), @Sopel97 (1), @SuperSoupr (1), @Teteros (1), @tuodekun (1), @vermz99 (1), @XLin0mu (1)