Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
RenderPearl

RenderPearl

Modern, incredibly lightweight and customizable shaders for Iris

432.7k
307
Colored Lighting
PBR
Shadows

Compatibility

Minecraft: Java Edition

1.21.x
1.20.4–1.20.6
1.20–1.20.2
1.19.4

Platforms

Iris

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Visit wiki
Donate on Patreon

Creators

Luracasmus
Luracasmus Owner

Details

Licensed MIT
Published 2 years ago
Updated last month
DescriptionGalleryChangelogVersions

Modern, lightweight shaders for Iris

Banner

RenderPearl is an incredibly lightweight shader pack using the latest Iris and GLSL features, aiming to deliver pleasant graphics with excellent performance on modern hardware

It is currently only tested with NVIDIA graphics drivers. If you want to report a bug or give feedback/suggestions, the easiest way to do so is by leaving a comment on the PMC page or CurseForge page, or opening an issue on the GitHub issue tracker. I rely heavily on user feedback in bug fixing and design

Trivia

This project started as a continuation of "Luracasmus Shaders" (which is why you might have seen it called "LS RenderPearl"), but modern versions share little to no code with the original project. The question remains as to whether the same shader pack remains throughout, when all parts are replaced

The name "RenderPearl" is inspired by the Bedrock Edition RenderDragon engine

Features

  • Detailed, colored real-time shadows and volumetric light using simple shadow mapping and BRDF reflections
  • Colored light index-based block light with BRDF reflections
  • A wide range of almost zero-cost post-processing effects, including FidelityFX Contrast Adaptive Sharpening and a variety of tone mapping operators
    • SMAA 1x
      • Lightweight high-quality anti-aliasing preserving sharpness and clarity
      • Implementation based on SMAA-MC
    • Dynamic Color Grading automatically adjusts exposure, black point and color balance to improve visibility and more fully utilize the display's limited range
  • Customizable Vanilla Ambient Occlusion
  • Optionally emissive Redstone, Lapis and Emerald Blocks
  • Customizable waves and water opacity
  • Specular and normal map support as well as automatically generated normals and roughness values
  • Built-in utility features such as light level visualization and a compass overlay
  • And more...

Requirements

If you have a decently modern non-macOS device it probably supports everything you need, but you might have to update your Iris and graphics drivers

  • Iris 1.8+ with features:
    • BLOCK_EMISSION_ATTRIBUTE
    • COMPUTE_SHADERS
    • CUSTOM_IMAGES
    • ENTITY_TRANSLUCENT
    • SEPARATE_HARDWARE_SAMPLERS
    • SSBO
  • GLSL 4.60.8+

Tuning & The Compatibility Menu

The default configuration and all values selectable with profiles are intended to work on all systems that meet the shader pack's Requirements, though you may be able to achieve higher performance and quality by changing some of these options. Beware that some values may cause the shader pack to not compile, in which case you simply have to reset the option. These are usually marked with a ⚠

Implementation-Limited Options

The usable values and effects of these options depend on your OpenGL and GLSL implementations

  • Index Size is limited by the amound of Local Data Share memory usable per work group on your GPU. Depending on your GPU and graphics drivers, and the features enabled by the 16/8-Bit Types option, you may be able to set this significantly higher than the maximum value selectable with profiles (though there is no reason to do so if the index isn't being filled completely, usually indicated by lights flickering, as it impacts performance negatively)

  • 16/8-Bit Types uses optional OpenGL extension-provided half- and/or quarter-sized data types to reduce register, LDS and VRAM usage. Performance impact varies depending on hardware and drivers, as conversion between types has a cost, but operations with smaller types can be significantly faster

  • Trinary Min/Max performs trinary minimum and maximum operations in singular function calls using the optional AMD_shader_trinary_minmax OpenGL extension, which may allow generation of more optimal instruction sequences. It's recommended to use this whenever possible

  • 32×16-Bit Multiplication performs multiplication between 32-bit integers and integers in the 16-bit-representable range using special functions provided by the optional INTEL_shader_integer_functions OpenGL extension, that may be faster than regular 32-bit multiplication operators. It's recommended to use this whenever possible

  • Immutable Constants marks all shader variables that can be immutable as constant, possibly enabling better optimizations. This feature is required by the GLSL specification, but still unsupported on some graphics drivers. It's recommended to use it whenever possible

Design & Modding RenderPearl

RenderPearl's source code is intended to be modifiable and re-usable. It's written according to best practice to the best of my ability, but prioritizing performance over readability. If you have any questions about how it works, feel free to contact me on any platform

Technical information can be found in the GitHub repository

  • Explanation of the Indexed Block Light system based on v2.2.0-beta.3: GitHub Gist
  • Extension support and compatibility prelude based on RenderPearl: GitHub Gist

This, the CurseForge page, the PMC page and the GitHub repository are the RenderPearl project pages made by me. If you want to distribute RenderPearl, or just spread the word of it, I would greatly appreciate if you would link to at least one of them, preferrably Modrinth

Modrinth is open source.

main@4bafae8

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.