
Angelica
Rendering Overhaul Mod
About this Mod
Angelica
- The little Angle [sic] that supports shaders while saving your fps from a certain death -boubou
- Is it obtuse, or accute? -Caedis
- It's a cute angle -mitchej123
- It's the angel that pulls you out of OptiFine's hell -Roadhog360
What's in it
- Shaders - Iris backport & enhancements
- Terrain - Celeritas 2.5.12 (NH) with threaded chunk building and translucency sorting
- Default GL 3.3 core profile with Java based fixed function pipeline emulation
- Optional Renderer selection - OpenGL, or SDL GPU for Vulkan/Metal/Direct3D 12
- Batching and instancing for entities, tile entities, items, particles and weather
- Dynamic lights
- HUD caching
- Custom fonts and text effects
- MCPatcher - connected textures, custom item textures, custom colors, random mobs, better skies
- Bundled NotFine, zoom, FPS reducer
Status
- OpenGL + Celeritas terrain - Default
- SDL GPU renderer - Experimental
- Shaders - Generally Available
- Complementary + Euphoria Patches is the primary compatibility target
- Sildurs, Seus, and any other shaders might work
- MCPatcher features - Alpha
- HUD caching - Semi-stable
SDL GPU renderer
Optional, OpenGL is the default
- Vulkan, Metal (macOS) and Direct3D 12 (Windows) through SDL3
- Needs LWJGL3ify 3.0.25+
- Falls back to OpenGL when no device can be created
- Vulkan on macOS via MoltenVK from the optional
angelica-moltenvkjar
Core Profile
Targets GL 3.3+ core profile
- FFP emulation via generated GLSL shaders
- Display list emulation
- Software matrix stacks and state management through GLSM
- GL_QUADS -> GL_TRIANGLES conversion
- Automatic transformation of mod shaders that use compat-only GLSL builtins (
gl_ModelViewMatrix,texture2D, etc.)
Required Dependencies
- UniMixins >= 0.1.23
- GTNHLib >= 0.11.19
- NOTE: Some mods are not required, but a specific version is required if present - see:
Minimum versionsbelow.
Minimum versions (if present)
- LWJGL3ify 1.5.3+ (3.0.25+ for the SDL GPU renderer)
- Hodgepodge 2.4.4+
- ArchaicFix 0.7.0+
- CodeChickenCore 1.2.0+ - Threading issues below that
- Amazing Trophies 1.2.2+
Known (temporary) Incompatibilities
- Forge Relocation - Currently non Thread Safe; safe if not in use
- ProjectRed Frames - Currently non Thread Safe; safe if not in use
Potential Incompatibilities
- EndlessIDs - Compat commits have been made, might work, might not - not fully tested
Known Incompatibilities
- FalseTweaks - Not currently planned (Looking for volunteers) [Might work if you effectively disable most of the mod]
- RPLE - Not currently planned (Looking for volunteers)
- LiteLoader - Install LiteloaderLoader
Permanent Incompatibilities
- OptiFine [Disabled, won't fix]
- FastCraft [Disabled, won't fix]
- BetterFPS [Disabled, won't fix]
- OptimizationsAndTweaks [Disabled, won't fix]
- Neodymium - Untested, but unlikely to be compatible. (Chunk Meshing is definitely incompatible, other features might work depending on config)
- SmoothFont - Equivalent functionality added
- ClientFixer - Use a resource pack like GTNH-FTI-Standard-Font
Building
./gradlew build,./gradlew test- Subprojects:
glsm(state manager, FFP emulation, backends),lwjgl3-backend,sdl-gpu,tracy-client,moltenvk - Read the AI policy before opening a PR
Credits
- ShadersMod
- Original ShadersMods: karyonix, sonic ether, id_miner, daxnitro
- eigenraven, Caedis, glowredman, and mitchej123 for the conversion of ASM to Mixin
- eigenraven and vlaetansky for getting the original ShadersMod compiling again
- ArchaicFix
- Includes graphic enhancements from ArchaicFix by embeddedt under the LGPL
- NotFine
- Includes modified version of NotFine by jss2a98aj under the LGPL
- Iris Shaders
- Sodium / Celeritas
- JellySquid & the CaffeineMC team, for making Sodium in the first place
- Embeddedt for Celeritas used under the LGPL 3.0
- Reese's Sodium Options
- FlashyReese for Reese's Sodium Options under the MIT license
- Neodymium
- Makamys for Neodymium - Various Tessellator -> Quad functionality taken under the LGPL 3
- MCPatcherForge
- Original MCPatcher: Paul Rupe
- Forge version: Mist475 under LGPL 3.0 with default ctm textures for glass and bookshelves by DarkBum under CC-BY-SA
- HUDCaching
- Angelica
- mitchej123, Omni, Makamys, Embeddedt, NanoLive, Caedis, Cardinalstar, Alexdoru, Eigenraven, mist475, Clepto, kurrycat for helping get Angelica up and running!
- IMS, jss2a98aj, || dbp ||, roadhog360 for advice and moral support
- Forge 1.12+
- Some files have been taken from Minecraft Forge under the LGPL 2.1 license and are marked as such
- FRAPI and Indigo
- Model building API heavily inspired by/copied from Fabric's; upstream may use it under the original Apache 2.0 license, see LICENSE in
com.gtnewhorizons.angelica.models
- Model building API heavily inspired by/copied from Fabric's; upstream may use it under the original Apache 2.0 license, see LICENSE in
- Dynamic Lights
- LambdAurora for LambDynamicLights under the MIT license, and the Forge port anthxnymc for DynamicLightsReforged, also under the MIT license
- Embeddedt and Ferri_Arnus for glsl-transformation-lib
- Also for work on Monocle which was used as a reference for implementing glsl-transformation-lib
- Code from both glsl-transformation-lib and Monocle taken under their respective LGPL 3.0 licenses
- FalseTweaks
- FalsePattern for FalseTweaks - Item Rendering Optimizations taken from FalseTweaks under the LGPL 3.0 license
- Beddium
- Venn and Falsepattern for Beddium - MinimapRenderer, SafeChunkTracker, and some debug commands adapted under the LGPL 3.0 License
- Mesa - Code ported and/or inspired from Mesa - under the MIT license
- Display list ID allocator ported from util_idalloc (Copyright 2017 Valve Corporation)
- FFP vertex shader generation inspired by ffvertex_prog.c (Copyright 2007 VMware, Inc.)
- FFP fragment shader generation inspired by ff_fragment_shader.c (Copyright 2007, 2009 VMware, Inc. / 2010-2011 Intel Corporation)
- Fog parameter optimization inspired by st_nir_lower_fog.c (Copyright 2023 Google LLC) and prog_statevars.c (Copyright 1999-2007 Brian Paul)
- RGSS Terrain Texture Filtering
- Indiesoft for defold-sharp-sprite, used as the reference implementation under the MIT license
Available Versions
How to Install Angelica on Your Client
Install the Mod Loader Locally
Install forge for your local Minecraft version.
Download the Matching File
Choose the Angelica file for forge and Minecraft 1.7.10.
Install Mod
Place the .jar file in your local .minecraft/mods folder and restart Minecraft. No server-side installation is required.
Compatibility
Mod Loaders
Minecraft Versions
1.7.10
Server-side
✗ UnsupportedRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Does Angelica need to be installed on the Minecraft server?
No. Modrinth marks Angelica as unsupported on the server side. Install it only in your local Minecraft mods folder. Your server can remain unchanged unless the mod page lists an additional dependency.
Which version and loader does Angelica require?
Use a file for forge and your exact Minecraft version. Supported versions include 1.7.10. Files for different loaders are not interchangeable.
Angelica is not working – what should I check?
First check the Minecraft version, loader version and required dependencies. Put the .jar file in your local .minecraft/mods folder and remove older duplicates. Because this mod is client-side, adding server RAM will not fix it.
Similar Mods
Minecraft Server for Your Group
Angelica stays on your client. Host a compatible world for your group.