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
Modern UI

Modern UI

Modern desktop graphics application framework and low-level 3D graphics engine

986.6k
345
Library
Optimization
Utility

Compatibility

Minecraft: Java Edition

1.21.x
1.20.6
1.20.4
1.20–1.20.2
1.19.4
1.19.2
1.18.1–1.18.2

Platforms

Fabric
Forge
NeoForge
Quilt

Supported environments

Client-side

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Join Discord server

Creators

BloCamLimb
BloCamLimb Owner

Details

Licensed LGPL-3.0-or-later
Published last year
Updated 3 months ago
DescriptionGalleryChangelogVersions

Show all versions

1
2
3
4
5

Modern UI 3.11.0.1 (Fabric)

by BloCamLimb on Sep 15, 2024
Download

Modern UI 3.11.0.1 (Forge)

by BloCamLimb on Sep 15, 2024
Download

Modern UI 3.11.0.1

Forge Extension 1.20.1 / NeoForge Extension 1.20.1

  • Add MinecraftSurfaceView to handle raw rendering calls
  • Ensure that all (native/GPU) resources are closed when the game exits
  • Slightly improve the Center UI
  • Fix a random crash when opening/closing UI frequently
  • Rework tooltip rendering
    • Add white noise to shadow
    • Add dithering to gradient colors
    • Use L1 norm instead of L2 norm for coverage antialiasing
    • Change shadow approximation method
    • Change default border radius and shadow alpha
    • Add new conditions for adding the extra space below tooltip title line
    • If the first three lines of the tooltip have different styles, we consider the first line as the title
    • Reduce the saturation of default tooltip colors
  • Allow using arrow keys to manually scroll the tooltip
  • Add small epsilon to text Z value for tooltip rendering to work around FP errors on some GPUs
  • Optimize blur effect
    • Use texelFetch instead of texture
    • Remove the additional blit pass and render target because we work around a Minecraft bug
    • Try to cache the shader program and temporary render target for blurring, and handle errors
    • Apply blur effect to the screen background instead of the world, just like Minecraft 1.20.6
  • Migrate to new rendering pipeline

Fabric Extension 1.20.1

  • Add support for Minecraft 1.20
  • Fix key binding not working in some cases
  • Others are functionally equivalent to Forge version

Modern Text Engine 1.20.1

  • Add compatibility for bitmap fonts with custom text shader
  • Enable linear metrics and disable font hinting by default
  • Add config to change the minimum pixel density for SDF text
  • Fix some possible bugs on text rendering
  • Optimize text rendering
    • Add texture cleanup to FontResourceManager
    • Simplify text layout rendering code
    • Use Math.round for aligning pixels
    • Fix glyph info for FontSet compatibility
  • Rework and optimize bitmap font rendering
    • Try to stitch bitmap font into atlas
    • Try to discard bitmap fonts if they have negative metrics, transparent pixels, or huge metrics
    • Saturate glyph metrics for bitmap font
    • Fix hashCode and equals for correct de-duplication
  • Adjust lod bias for normal text shader
  • Adjust bitmap font to match vanilla behavior
    • Adjust glyph advance calculation
  • Adjust Unicode font loading behavior
    • Any reference to vanilla Unicode font and UNIHEX font will redirect to current ModernUI default typeface list instead of system fonts, except for Minecraft default font set
  • Fix text layout bug when finding style transitions
  • Allow caching the missing glyph to atlas
  • Adopt full text rendering technology from core framework
  • Fix line breaker that may output no lines and keep consistency with vanilla behavior
    • This fix a bug with IBE Editor
  • Fix text strike cache invalidation for FontSet compatibility
    • This fix a bug with Create
  • Add text layout dump in advanced options
  • Add a command for debugging line breaker
  • Add methods for debugging text engine

Core Framework

  • Enable linear text by default, increase layout cache limit
  • Delete render thread executor
  • Delete old text rendering code
  • Add GradientDrawable that draw shapes with gradient colors
  • Update/fix ShapeDrawable with latest rendering pipeline
  • Add set/get ColorFilter to Drawable and ImageView Add ImageView.setImageTintBlendMode
  • Rework ImageDrawable.setSrcRect() method
  • Update ImageDrawable with antialias, dither, filter, and tile modes
  • Add setter/getter to change blend mode for edge effect
  • Change default blend mode for EdgeEffect from SRC_OVER to SRC_ATOP
  • Fix Matrix.mapRect()
  • Fix EdgeEffect centerX
  • Improve text rendering
  • Add AngularGradient API and implementation
  • Add RadialGradient API and implementation
  • Add LinearGradient API and implementation
  • Add GradientShader API and implementation
  • Add new draw methods to Canvas class
  • Add BlendModeColorFilter and make it work finally, default blend mode for ImageDrawable is SRC_IN
  • Add ColorFilter class that can be installed on Paint
  • Refactor Image class and fix Image.close() issue
  • Refactor Paint class
  • Add ImageShader class
  • Add Shader class that can be installed on Paint
  • Add TextView.setTextSize() that specifies a unit, default is sp
  • Full migration to the new rendering pipeline, Arc3D Granite Renderer; delete old GLSurfaceCanvas
  • Avoid re-layout on window minimized, since framebuffer is destroyed and size is 0
  • Deprecate Canvas.saveLayer() for future layer compositor and render tree

Core Framework - Kotlin Extension

  • No changes

Markdown Extension

  • No changes

Arc3D Graphics Engine

  • Remove old usage of Image.getSurfaceFlags
  • Add Image.getUniqueID() and static methods to create raster images
  • Add utility NoDrawCanvas NWayCanvas and PaintFilterCanvas
  • Fix Matrix.mapRect() is not correct
  • Fix compiler error
  • Optimize text ops if subRunToDevice is translation-only and pipeline does not require local coords trivially
  • Optimize matrix computation for text ops
  • Replace Matrix4 in rendering code with Matrix
  • Make Matrix4() construct an identity matrix, and Matrix4.identity() return a read-only identity matrix
  • Fix TextBlobBuilder offsets not reset after build
  • Add RoundRect flatten methods
  • Improve NoPixelsDevice clip tracking, remove ConservativeClip
  • Add DrawAtlas.purge() to free unused pages
  • Add implementation for gradients in other interpolation color spaces and for all hue interpolation methods
  • Allow DrawAtlas to perform an immediate compact
  • Rename some classes and methods
  • Change the default uniform buffer block size to 32KB
  • Fix color array copy in Vertices::makeCopy
  • Fix persistent mapping check in GLBuffer
  • Temporarily enable RGB texture in OpenGL
  • Try to share vertex array objects in OpenGL backend
  • Expose resource cleanup API, also cleanup framebuffer cache and strike cache
  • Review ResourceCache, fix some legacy issues
  • Add support for alpha-only images, add missing Shaders shader implementation
  • Purge framebuffers immediately after one attachment was destroyed
  • Complete the compatibility with OpenGL 3.3 and OpenGL ES 3.0
  • Improve texture and renderbuffer creation
  • Deprecate old Device methods
  • Fix OpenGL 3.3 and GLSL 330 compatibility
  • Finalize BoundsManager, add samples
  • Add plus_clamped, minus, and minus_clamped blend info
  • Remove 01 coverage in non-aa case
  • Add blend equation in GL backend
  • Mark old code as deprecated
  • Implement basic functionality for final blender, enable dual source blending
  • Fully implement BakedTextBlob and TextBlobCache for text rendering
  • Fix blend shader doesn't compile
  • Add TextBlob as an immutable container for glyph rendering
  • Rework FramebufferDesc, add FramebufferCache to manage framebuffers
  • Basically implement texture copy task, implement Surface.onNewImageSnapshot()
  • Add factory method to create Surface
  • Implement Device management
  • Invalidate atlases if RC.snap() failed
  • Fix several threading issues for OpenGL backend
  • Handle ColorFilter properly
  • Add BlendModeShader
  • Fix color space transformation on paint's solid color
  • Add primitive color blending and color space transform
  • Add blending with shader and paint's alpha
  • Fix color space transformation on BlendModeColorFilter
  • Add implementation of BlendModeShader and BlendModeColorFilter
  • Remove Geometry interface
  • Add Vertices class and Vertices step to drawVertices
  • Add shader implementation for 42 blend modes
  • Fix arg name for uniforms that start with no mangle prefix
  • Add StaticBufferManager and Buffer-to-Buffer copy task
  • Fix ImageUploadTask bug
  • Implement remaining important Canvas methods
  • Add and implement new Canvas methods in Device
  • Fix depth is perspective-correct; the depth should be preserved, then multiply it by w.
  • Fix bugs on arc shader with square end
  • Finish methods to create and draw GlyphRuns
  • Add method to set Matrix elements
  • Fix Matrix4.hashCode() for negative zero
  • Add Geometry.getBounds() to compute bounds
  • Improve ClipStack to compute several bounds
  • Fix stroke inflation radius computation for inner and outer stroke
  • Optimize draw when it does not depend on dst
  • Fix several issues on Device
  • Implement the creation of AtlasSubRuns
  • Add method to compute res scales if matrix has perspective
  • Fix AnalyticSimpleBoxStep instance data type
  • Add method to draw pie and chord, optimize shaders
  • Add rendering with three cap types of stroke arcs initially
  • Implement Atlas text op at low level, improve solid color fast path, trying to handle primitive color
  • Fix ScalerContext_JDK does not return a reliable glyph bounds
  • Fix DrawAtlas assertion and GlyphAtlasManager row stride
  • Fix Strike and ScalerContext bugs, remove stroke cap in StrikeDesc
  • Improve finite check and non-invertible matrix
  • Add RendererProvider to manage GeometryRenderers
  • Finish implementation of atlas management for draw ops and glyph atlas
  • Calculate the Path byte size when generating Glyph in Strike
  • Implement Strike, StrikeCache, and ScalerContext basically
  • Add Paint.setPathEffect(), add missing javadoc in Font
  • Add Path.transform(), add PathIterator.getFillRule()
  • Add GPU dithering implementation (no texture lookup)
  • Fix GLCaps.FormatInfo for RGB565
  • Update Paint and related classes
  • Make Blender and ColorFilter strictly ref-counted
  • Add Shader.isConstant()
  • Fix Canvas.drawCircle()
  • Add Paint.setColor4f()
  • Fix Paint.setStrokeWidth() and Paint.setStrokeMiter() for NaN values
  • Remove Paint's SmoothWidth, MaskFilter and ImageFilter
  • Add PathEffect skeleton class
  • Fix several hashCode implementation for negative zeros
  • Update Paint.nothingToDraw() for more blend modes
  • Add more methods to RoundRect
  • Update Surface, Canvas, and related classes
  • Add Stroke, PathIterable, update PathStroker
  • Optimize shaders
  • Use short-circuit for transfer function
  • Use texelFetch for cubic shader, remove invImageSize uniform
  • Add perspective correction for local matrix shader
  • Extract color space transform from image shaders
  • Ensure subset sampling does not use mipmaps
  • Implement bicubic and strict subset sampling
  • Change AnalyticSimpleBoxStep to use L1 norm
  • Fix bug on GLImageDesc.equals()
  • Fix bug on uniform block layout
  • Change Paint constants and SamplingOptions, adding classes for text rendering
  • Done depth stencil work, fix several bugs
  • Add flipY and unorm clamp for PixelUtils
  • Implement LinearGradient, RadialGradient, AngularGradient
  • Fix bugs on ImageShader.makeSubset()
  • Fix bugs on premul & unpremul in some classes
  • Improve ColorSpace transform, add PixelUtils.convertPixels()
  • Add new ColorSpace transform shader
  • Fix GLSampler TEXTURE_WRAP_R is not set, add validation for SamplerDesc
  • Fix Matrix4.invert, add Matrix.toMatrix4, fix UniformDataGatherer for mat3
  • Make Paint, PaintParams, and Draw classes closeable
  • Fix TextureTracker; rename gradient shaders
  • Optimize box shader
  • Accumulated updates on fragment effects and shading pipeline
  • Implement simple pixel upload using image-to-image copy
  • Add new Shader and ColorFilter classes
  • Rename PixelMap to Pixmap, PixelRef to Pixels
  • Switch slow JNI to PixelUtils.copyImage() for array to off-heap copy
  • Remove the offset parameter of Buffer.unmap()
  • Finish AnalyticSimpleBoxStep
  • Allow implicit conversion between numerics
  • Add DepthStencilSettings and BoundsManager, limit the number of geometry steps
  • Optimize vertex writer and uniform writer, optimize uniform data deduplication
  • Basically complete the Granite Renderer
  • Add geometry projection, solid color simplification
  • Finish RenderPassTask execution Fix scissor origin, initial scissor setup
  • Complete DrawPass's texture sampler binding
  • Add TextureDataGatherer, texture sampler binding and tracker
  • Add UniformDataGatherer and UniformDataCache
  • Fix Matrix4.store()
  • Add framebuffer creation and some tests
  • Some work on new PipelineBuilder
  • Update Buffer, GLBuffer, persistent mapping and so on
  • Accumulative updates for new renderer
  • Add method for updating clip draws
  • Update ClipStack
  • Improve vertex specification and buffer binding
  • Rename the project from 'Arc 3D' to 'Arc3D'
  • Commit all accumulative updates
  • Change BlendMode.apply() to static methods
  • Accumulative updates for the new pipeline
  • Attempt to refactor pipeline
  • Add more classes for new pipeline
  • Add frexp & ldexp impl
  • Some attempts on pipeline
  • Refactor GPU Image, RenderTarget, SurfaceProxy classes; remove Texture
  • Add Image and Framebuffer creation, add reusable framebuffers
  • Refactor GpuResource class hierarchy
  • Support GL_CONTEXT_LOST
  • Tons of work on Engine and OpenGL backend, not listed
  • Add pre-defined extensions to compile options
  • A lot of work on abstraction between GL3 and GLES3
  • Initially add GLInterface for both OpenGL & OpenGL ES support
  • Add std140/std430 layout qualifiers, add include directive parsing
  • Abandon usage of GLSL ARB extensions that core in later versions
  • Fix GLCaps crash for some capabilities
  • Fix some bugs in preprocessing
  • Other improvements
  • Add new preprocessing methods, allow sub-range source
  • Add StringLiteral grammar, fix Whitespace grammar
  • Add FatalError to terminate compiler
  • Add identifier name length check (1024 at most)
  • Add benchmark between Arc3D and shaderc (glslang)
  • Update Lexer
  • Add directive grammar
  • Add 'using' grammar for type aliases
  • Add newline token, fix block comment grammar

Modern UI 3.10.1.5 (Fabric)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.5 (NeoForge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.5 (Forge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.5

NeoForge Extension 1.20.4

  • Do not use new word breaker in command mode
  • Add preferences navigation to mods config button
  • Improve PreferencesFragment
  • Add API to allow back to previous screen, allow passing a ScreenCallback
  • Add API to create MuiScreen
  • Add Segoe UI Symbol to default fallback list
  • Fix issue with TrueType Collection registration
  • Add font registration config to register additional fonts
  • Add modifiers to ACTION_SCROLL event
  • Add showing layout bounds
  • Add adaptive tooltip colors
  • Renew tooltip rendering
    • Create rendertype_modern_tooltip shader
    • Interpolate color bilinearly in sRGB space
    • Better shadow effect, add shadow opacity
    • Add corner radius config
    • Adjust auto scrolling velocity
    • Fix bugs on exact positioning with some mods
  • Fix a rare crash on config reloading due to thread-safety
  • Apply blur effect only to screens that have default background (configurable)
  • Do not use Overwrite for calculateScale
  • Fix startup crash on server and datagen
  • Fix EditBox deletion undo not working
  • Refactor project structure and bootstrap

Forge Extension 1.20.4

  • Remove ScreenCallback capability
  • Others are equivalent to NeoForge version

Fabric Extension 1.20.4

  • Fix tooltip compatibility with Sodium
  • Others are functionally equivalent to NeoForge version

Modern Text Engine 1.20.4

  • Change logging level for font loading, enhance onFontRegistered thread-safety
  • Add new default font behaviors and rule set, allowing regexes to match fonts
  • Adjust text renderer alpha threshold from 1 to 2 (0-255)
  • Fix only a very small set of characters can be used for obfuscated rendering
  • Use Latin1 for FastCharSet
  • Fix a rare crash on text engine due to batch rendering and display mode changes

Core Framework 3.10.1

  • Update typecast checks, add ArrayMap.forEach
  • Make FontFamily.createFamily throw Exception
  • Add FontFamily.createFamilies for TrueType Collection
  • Add HorizontalScrollView, update ScrollView
  • Add debug layout to show layout bounds
  • Optimize Color.parseColor
  • Add Animatable and Animatable2
  • Add some missing javadoc
  • Use UTF-16 for TextUtils read/write
  • Add TextPaint.baselineShift and Subscript/SuperscriptSpan
  • Disable pooling of Message objects
  • Build against a copy of Arc3D, instead of composite build
  • Add Canvas.shear / skew, deprecate Canvas.getMatrix
  • Add TextUtils.concat and TextUtils.join methods
  • Make use of Java 20 float/half convert instruction
  • Add CharBuffer support for TextUtils.getChars()

Core Framework - Kotlin Extension 3.10.1

  • No changes

Markdown 3.10.1

  • No changes

Arc 3D Graphics Engine 3.10.1

  • Add 3D shearing transform methods
  • Improve GL_TEXTURE_SWIZZLE_RGBA compatibility
  • Tons of updates on DSL shader compiler, including new grammar parsing and SPIR-V generation, no detailed information provided

Modern UI 3.10.1.4 (Fabric)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.4 (Forge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.4

Forge Extension 1.20.1 / NeoForge Extension 1.20.1

  • Do not use new word breaker in command mode
  • Add preferences navigation to mods config button
  • Improve PreferencesFragment
  • Add API to allow back to previous screen, allow passing a ScreenCallback
  • Add API to create MuiScreen
  • Add Segoe UI Symbol to default fallback list
  • Fix issue with TrueType Collection registration
  • Add font registration config to register additional fonts
  • Add modifiers to ACTION_SCROLL event
  • Add showing layout bounds
  • Add adaptive tooltip colors
  • Renew tooltip rendering
    • Create rendertype_modern_tooltip shader
    • Interpolate color bilinearly in sRGB space
    • Better shadow effect, add shadow opacity
    • Add corner radius config
    • Adjust auto scrolling velocity
    • Fix bugs on exact positioning with some mods
  • Fix a rare crash on config reloading due to thread-safety
  • Apply blur effect only to screens that have default background (configurable)
  • Do not use Overwrite for calculateScale
  • Fix startup crash on server and datagen
  • Remove ScreenCallback capability
  • Refactor project structure and bootstrap

Fabric Extension 1.20.1

  • Fix tooltip compatibility with Sodium
  • Others are functionally equivalent to Forge version

Modern Text Engine 1.20.1

  • Change logging level for font loading, enhance onFontRegistered thread-safety
  • Add new default font behaviors and rule set, allowing regexes to match fonts
  • Adjust text renderer alpha threshold from 1 to 2 (0-255)
  • Fix only a very small set of characters can be used for obfuscated rendering
  • Use Latin1 for FastCharSet
  • Fix a rare crash on text engine due to batch rendering and display mode changes

Core Framework 3.10.1

  • Update typecast checks, add ArrayMap.forEach
  • Make FontFamily.createFamily throw Exception
  • Add FontFamily.createFamilies for TrueType Collection
  • Add HorizontalScrollView, update ScrollView
  • Add debug layout to show layout bounds
  • Optimize Color.parseColor
  • Add Animatable and Animatable2
  • Add some missing javadoc
  • Use UTF-16 for TextUtils read/write
  • Add TextPaint.baselineShift and Subscript/SuperscriptSpan
  • Disable pooling of Message objects
  • Build against a copy of Arc3D, instead of composite build
  • Add Canvas.shear / skew, deprecate Canvas.getMatrix
  • Add TextUtils.concat and TextUtils.join methods
  • Make use of Java 20 float/half convert instruction
  • Add CharBuffer support for TextUtils.getChars()

Core Framework - Kotlin Extension 3.10.1

  • No changes

Markdown 3.10.1

  • No changes

Arc 3D Graphics Engine 3.10.1

  • Add 3D shearing transform methods
  • Improve GL_TEXTURE_SWIZZLE_RGBA compatibility
  • Tons of updates on DSL shader compiler, including new grammar parsing and SPIR-V generation, no detailed information provided

Modern UI 3.10.1.3 (Forge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.3

Forge Extension 1.19.4

  • Do not use new word breaker in command mode
  • Add preferences navigation to mods config button
  • Improve PreferencesFragment
  • Add API to allow back to previous screen, allow passing a ScreenCallback
  • Add API to create MuiScreen
  • Add Segoe UI Symbol to default fallback list
  • Fix issue with TrueType Collection registration
  • Add font registration config to register additional fonts
  • Add modifiers to ACTION_SCROLL event
  • Add showing layout bounds
  • Add adaptive tooltip colors
  • Renew tooltip rendering
    • Create rendertype_modern_tooltip shader
    • Interpolate color bilinearly in sRGB space
    • Better shadow effect, add shadow opacity
    • Add corner radius config
    • Adjust auto scrolling velocity
  • Fix a rare crash on config reloading due to thread-safety
  • Apply blur effect only to screens that have default background (configurable)
  • Do not use Overwrite for calculateScale
  • Fix startup crash on server and datagen
  • Remove ScreenCallback capability

Modern Text Engine 1.19.4

  • Change logging level for font loading, enhance onFontRegistered thread-safety
  • Add new default font behaviors and rule set, allowing regexes to match fonts
  • Adjust text renderer alpha threshold from 1 to 2 (0-255)
  • Fix only a very small set of characters can be used for obfuscated rendering
  • Use Latin1 for FastCharSet
  • Fix a rare crash on text engine due to batch rendering and display mode changes

Core Framework 3.10.1

  • Update typecast checks, add ArrayMap.forEach
  • Make FontFamily.createFamily throw Exception
  • Add FontFamily.createFamilies for TrueType Collection
  • Add HorizontalScrollView, update ScrollView
  • Add debug layout to show layout bounds
  • Optimize Color.parseColor
  • Add Animatable and Animatable2
  • Add some missing javadoc
  • Use UTF-16 for TextUtils read/write
  • Add TextPaint.baselineShift and Subscript/SuperscriptSpan
  • Disable pooling of Message objects
  • Build against a copy of Arc3D, instead of composite build
  • Add Canvas.shear / skew, deprecate Canvas.getMatrix
  • Add TextUtils.concat and TextUtils.join methods
  • Make use of Java 20 float/half convert instruction
  • Add CharBuffer support for TextUtils.getChars()

Core Framework - Kotlin Extension 3.10.1

  • No changes

Markdown 3.10.1

  • No changes

Arc 3D Graphics Engine 3.10.1

  • Add 3D shearing transform methods
  • Improve GL_TEXTURE_SWIZZLE_RGBA compatibility
  • Tons of updates on DSL shader compiler, including new grammar parsing and SPIR-V generation, no detailed information provided

Modern UI 3.10.1.2 (Forge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.2

Forge Extension 1.19.2

  • Do not use new word breaker in command mode
  • Add preferences navigation to mods config button
  • Improve PreferencesFragment
  • Add API to allow back to previous screen, allow passing a ScreenCallback
  • Add API to create MuiScreen
  • Add Segoe UI Symbol to default fallback list
  • Fix issue with TrueType Collection registration
  • Add font registration config to register additional fonts
  • Add modifiers to ACTION_SCROLL event
  • Add showing layout bounds
  • Add adaptive tooltip colors
  • Renew tooltip rendering
    • Create rendertype_modern_tooltip shader
    • Interpolate color bilinearly in sRGB space
    • Better shadow effect, add shadow opacity
    • Add corner radius config
    • Adjust auto scrolling velocity
  • Remove tooltip fade-in animation
  • Fix a rare crash on config reloading due to thread-safety
  • Apply blur effect only to screens that have default background (configurable)
  • Do not use Overwrite for calculateScale
  • Fix startup crash on server and datagen
  • Remove ScreenCallback capability

Modern Text Engine 1.19.2

  • Change logging level for font loading, enhance onFontRegistered thread-safety
  • Add new default font behaviors and rule set, allowing regexes to match fonts
  • Adjust text renderer alpha threshold from 1 to 2 (0-255)
  • Fix only a very small set of characters can be used for obfuscated rendering
  • Use Latin1 for FastCharSet
  • Fix a rare crash on text engine due to batch rendering and display mode changes

Core Framework 3.10.1

  • Update typecast checks, add ArrayMap.forEach
  • Make FontFamily.createFamily throw Exception
  • Add FontFamily.createFamilies for TrueType Collection
  • Add HorizontalScrollView, update ScrollView
  • Add debug layout to show layout bounds
  • Optimize Color.parseColor
  • Add Animatable and Animatable2
  • Add some missing javadoc
  • Use UTF-16 for TextUtils read/write
  • Add TextPaint.baselineShift and Subscript/SuperscriptSpan
  • Disable pooling of Message objects
  • Build against a copy of Arc3D, instead of composite build
  • Add Canvas.shear / skew, deprecate Canvas.getMatrix
  • Add TextUtils.concat and TextUtils.join methods
  • Make use of Java 20 float/half convert instruction
  • Add CharBuffer support for TextUtils.getChars()

Core Framework - Kotlin Extension 3.10.1

  • No changes

Markdown 3.10.1

  • No changes

Arc 3D Graphics Engine 3.10.1

  • Add 3D shearing transform methods
  • Improve GL_TEXTURE_SWIZZLE_RGBA compatibility
  • Tons of updates on DSL shader compiler, including new grammar parsing and SPIR-V generation, no detailed information provided

Modern UI 3.10.1.1 (Forge)

by BloCamLimb on Apr 2, 2024
Download

Modern UI 3.10.1.1

Forge Extension 1.18.2

  • Add IGNORE_ALL_VERSION display test
  • Do not use new word breaker in command mode
  • Add preferences navigation to mods config button
  • Improve PreferencesFragment
  • Add API to allow back to previous screen
  • Add API to create MuiScreen
  • Add MenuScreenFactory to create MenuScreen
  • Add Segoe UI Symbol to default fallback list
  • Fix issue with TrueType Collection registration
  • Add font registration config to register additional fonts
  • Add modifiers to ACTION_SCROLL event
  • Add showing layout bounds
  • Add adaptive tooltip colors
  • Renew tooltip rendering
    • Create rendertype_modern_tooltip shader
    • Interpolate color bilinearly in sRGB space
    • Better shadow effect, add shadow opacity
    • Add corner radius config
    • Adjust auto scrolling velocity
  • Remove tooltip fade-in animation
  • Fix a rare crash on config reloading due to thread-safety
  • Apply blur effect only to screens that have default background (configurable)
  • Do not use Overwrite for calculateScale
  • Fix startup crash on server and datagen

Modern Text Engine 1.18.2

  • Enhance onFontRegistered thread-safety
  • Add new default font behaviors and rule set, allowing regexes to match fonts
  • Adjust text renderer alpha threshold from 1 to 2 (0-255)
  • Fix only a very small set of characters can be used for obfuscated rendering
  • Use Latin1 for FastCharSet
  • Fix a rare crash on text engine due to batch rendering and display mode changes

Core Framework 3.10.1

  • Update typecast checks, add ArrayMap.forEach
  • Make FontFamily.createFamily throw Exception
  • Add FontFamily.createFamilies for TrueType Collection
  • Add HorizontalScrollView, update ScrollView
  • Add debug layout to show layout bounds
  • Optimize Color.parseColor
  • Add Animatable and Animatable2
  • Add some missing javadoc
  • Use UTF-16 for TextUtils read/write
  • Add TextPaint.baselineShift and Subscript/SuperscriptSpan
  • Disable pooling of Message objects
  • Build against a copy of Arc3D, instead of composite build
  • Add Canvas.shear / skew, deprecate Canvas.getMatrix
  • Add TextUtils.concat and TextUtils.join methods
  • Make use of Java 20 float/half convert instruction
  • Add CharBuffer support for TextUtils.getChars()

Core Framework - Kotlin Extension 3.10.1

  • No changes

Markdown 3.10.1

  • No changes

Arc 3D Graphics Engine 3.10.1

  • Add 3D shearing transform methods
  • Improve GL_TEXTURE_SWIZZLE_RGBA compatibility
  • Tons of updates on DSL shader compiler, including new grammar parsing and SPIR-V generation, no detailed information provided

Modern UI 3.10.0.6 (Fabric)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.6 (NeoForge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.6 (Forge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.6

Forge Extension 1.20.4

  • Add Markdown preview
  • Use vanilla border style for modern tooltip (when rounded = false)
  • Add font names for registered fonts, add JetBrains Mono
  • Update to Emoji 15.1, remove Emoji 15 workaround
  • Add auto scroll when tooltip is out of screen
  • Add shadow effect for tooltip
  • Add developer mode config to Preferences GUI
  • Hide Advanced Options and Dev when not in developer mode
  • Adjust default font behavior to be locale-sensitive
  • Tweak fallback font loading behavior (now it accepts font files)
  • Move destroy() method so that the game won't crash in forced tick after the window closes
  • Handle glowing sign where text color is black
  • Update Traditional Chinese - notlin4

NeoForge Extension 1.20.4

  • Port to NeoForge
  • Remove ScreenCallback capability
  • Others are equivalent to Forge version

Fabric Extension 1.20.4

  • Enhance tooltip compatibility with Sodium (when rounded = false)
  • Add tooltip line wrapping for Fabric
  • Add tooltip center title and title break for Fabric
  • Others are functionally equivalent to Forge version

Modern Text Engine 1.20.4

  • Add Untranslated Items integration
  • Fix useComponentCache not working at all
  • Fix force unicode font not working after game restart
  • Fix line breaker SIOOBE for illegal string (this fixed crash with Better Statistics Screen)

Core Framework 3.10.0

  • Move kotlin extension to a separate module (Core-KTX)
  • Add Log class to avoid using log4j in submodules
  • Implement blend mode filter for ShapeDrawable, ColorDrawable and other Drawable classes
  • Fix incorrect drop-down position in RTL layout direction
  • Fix MenuPopup overlap anchor (google-bug) (fix #199)
  • Fix TextShaper context range for BiDi analysis
  • Add LocaleSpan
  • Add all 42 blend modes that used in Photoshop (currently no shader implementation)
  • Update BlendMode and Color.blend()
  • Change Bitmap.getSize() type to long
  • Make Bitmap's color info mutable (for reinterpretation)
  • Add path measurement implementation (PathMeasure class)
  • Remove 2GB restriction on Bitmap creation, add more sanitizations
  • Deprecate ImageStore, fix javadoc errors
  • Update Bitmap with Arc3D
  • Update Matrix and Path with Arc3D
  • Fix Underline and Strikethrough offset
  • Add "exclusive" East Asian family support (currently not used)
  • Public Menu.setOptionalIconsVisible() method
  • Change atlas coverage type to double

Core Framework - Kotlin Extension 3.10.0

  • Add kotlin-flavored methods, update annotations

Markdown 3.10.0

  • Suppress unchecked warning

Arc 3D Graphics Engine 3.10.0

  • Add color filters and color matrix
  • Add/update all blend modes and their raster implementations: PLUS, MINUS, DIFFERENCE, EXCLUSION, COLOR_DODGE, COLOR_BURN, HARD_LIGHT, SOFT_LIGHT, LINEAR_DODGE, LINEAR_BURN, VIVID_LIGHT, LINEAR_LIGHT, PIN_LIGHT, HARD_MIX and HSL blend modes (HUE, SATURATION, COLOR, LUMINOSITY)
  • Rename shaderc package to compiler
  • Add Image-derived and Shader-derived skeleton classes
  • Add UNORM_PACK16 and UNORM_PACK32 encoding constant
  • Public ColorType.channelFlags
  • Add missing GRAY_ALPHA_88 for ColorType.encoding
  • Add alpha type validation
  • Make owner's reference to pixel map mutable
  • Fix ColorSpace initializer
  • Add Raster, remove heap version of Bitmap
  • Add full path measurement implementation
  • Add PixelUtils for pixel conversion
  • Add PixelMap and PixelRef, remove Pixmap
  • Add and optimize Path methods
  • Add Path.bounds computation, optimize Path allocation
  • Add Rect2fc and Rect2ic for read-only usage
  • Inline Path.Ref usage count implementation
  • Finish approximation of cubic strokes by quadratic splines
  • Finish approximation of quadratic strokes by quadratic splines
  • Add MathUtil.pin() method for capturing NaN values, replace some use of clamp()
  • Add conic section to quadratic curves conversion
  • Add several methods to reset the Path
  • Finish RoundJoiner, fix Path reversePop
  • Add Matrixc interface for read-only usage of Matrix
  • Update and optimize PathStroker
  • Optimize approximation of conic sections by quadratic splines
  • Add PathConsumer
  • Add Path tessellation for quadratic and cubic splines
  • Add PathUtils and WangsFormula for subdivisions
  • Add Path, add Path.Ref, add PathIterator
  • Add Geometry class for finding inflection points, tangent, curvature, max curvature, cusp, solving quadratic equations, cubic equations, etc
  • Add RefCounted interface
  • Add Hardware transfer processor
  • Optimize rectangle packer

Modern UI 3.10.0.5 (Fabric)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.5 (NeoForge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.5 (Forge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.5

Forge Extension 1.20.2

  • Add Markdown preview
  • Use vanilla border style for modern tooltip (when rounded = false)
  • Add font names for registered fonts, add JetBrains Mono
  • Update to Emoji 15.1, remove Emoji 15 workaround
  • Add auto scroll when tooltip is out of screen
  • Add shadow effect for tooltip
  • Add developer mode config to Preferences GUI
  • Hide Advanced Options and Dev when not in developer mode
  • Adjust default font behavior to be locale-sensitive
  • Tweak fallback font loading behavior (now it accepts font files)
  • Move destroy() method so that the game won't crash in forced tick after the window closes
  • Handle glowing sign where text color is black
  • Update Traditional Chinese - notlin4

NeoForge Extension 1.20.2

  • Port to NeoForge
  • Others are equivalent to Forge version

Fabric Extension 1.20.2

  • Enhance tooltip compatibility with Sodium (when rounded = false)
  • Add tooltip line wrapping for Fabric
  • Add tooltip center title and title break for Fabric
  • Others are functionally equivalent to Forge version

Modern Text Engine 1.20.2

  • Add Untranslated Items integration
  • Fix useComponentCache not working at all
  • Fix force unicode font not working after game restart
  • Fix line breaker SIOOBE for illegal string (this fixed crash with Better Statistics Screen)

Core Framework 3.10.0

  • Move kotlin extension to a separate module (Core-KTX)
  • Add Log class to avoid using log4j in submodules
  • Implement blend mode filter for ShapeDrawable, ColorDrawable and other Drawable classes
  • Fix incorrect drop-down position in RTL layout direction
  • Fix MenuPopup overlap anchor (google-bug) (fix #199)
  • Fix TextShaper context range for BiDi analysis
  • Add LocaleSpan
  • Add all 42 blend modes that used in Photoshop (currently no shader implementation)
  • Update BlendMode and Color.blend()
  • Change Bitmap.getSize() type to long
  • Make Bitmap's color info mutable (for reinterpretation)
  • Add path measurement implementation (PathMeasure class)
  • Remove 2GB restriction on Bitmap creation, add more sanitizations
  • Deprecate ImageStore, fix javadoc errors
  • Update Bitmap with Arc3D
  • Update Matrix and Path with Arc3D
  • Fix Underline and Strikethrough offset
  • Add "exclusive" East Asian family support (currently not used)
  • Public Menu.setOptionalIconsVisible() method
  • Change atlas coverage type to double

Core Framework - Kotlin Extension 3.10.0

  • Add kotlin-flavored methods, update annotations

Markdown 3.10.0

  • Suppress unchecked warning

Arc 3D Graphics Engine 3.10.0

  • Add color filters and color matrix
  • Add/update all blend modes and their raster implementations: PLUS, MINUS, DIFFERENCE, EXCLUSION, COLOR_DODGE, COLOR_BURN, HARD_LIGHT, SOFT_LIGHT, LINEAR_DODGE, LINEAR_BURN, VIVID_LIGHT, LINEAR_LIGHT, PIN_LIGHT, HARD_MIX and HSL blend modes (HUE, SATURATION, COLOR, LUMINOSITY)
  • Rename shaderc package to compiler
  • Add Image-derived and Shader-derived skeleton classes
  • Add UNORM_PACK16 and UNORM_PACK32 encoding constant
  • Public ColorType.channelFlags
  • Add missing GRAY_ALPHA_88 for ColorType.encoding
  • Add alpha type validation
  • Make owner's reference to pixel map mutable
  • Fix ColorSpace initializer
  • Add Raster, remove heap version of Bitmap
  • Add full path measurement implementation
  • Add PixelUtils for pixel conversion
  • Add PixelMap and PixelRef, remove Pixmap
  • Add and optimize Path methods
  • Add Path.bounds computation, optimize Path allocation
  • Add Rect2fc and Rect2ic for read-only usage
  • Inline Path.Ref usage count implementation
  • Finish approximation of cubic strokes by quadratic splines
  • Finish approximation of quadratic strokes by quadratic splines
  • Add MathUtil.pin() method for capturing NaN values, replace some use of clamp()
  • Add conic section to quadratic curves conversion
  • Add several methods to reset the Path
  • Finish RoundJoiner, fix Path reversePop
  • Add Matrixc interface for read-only usage of Matrix
  • Update and optimize PathStroker
  • Optimize approximation of conic sections by quadratic splines
  • Add PathConsumer
  • Add Path tessellation for quadratic and cubic splines
  • Add PathUtils and WangsFormula for subdivisions
  • Add Path, add Path.Ref, add PathIterator
  • Add Geometry class for finding inflection points, tangent, curvature, max curvature, cusp, solving quadratic equations, cubic equations, etc
  • Add RefCounted interface
  • Add Hardware transfer processor
  • Optimize rectangle packer

Modern UI 3.10.0.4 (Fabric)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.4 (Forge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.4

Forge Extension 1.20.1 / NeoForge Extension 1.20.1

  • Add Markdown preview
  • Use vanilla border style for modern tooltip (when rounded = false)
  • Add font names for registered fonts, add JetBrains Mono
  • Update to Emoji 15.1
  • Add auto scroll when tooltip is out of screen
  • Add shadow effect for tooltip
  • Add developer mode config to Preferences GUI
  • Hide Advanced Options and Dev when not in developer mode
  • Adjust default font behavior to be locale-sensitive
  • Tweak fallback font loading behavior (now it accepts font files)
  • Move destroy() method so that the game won't crash in forced tick after the window closes
  • Handle glowing sign where text color is black
  • Update Traditional Chinese - notlin4

Fabric Extension 1.20.1

  • Enhance tooltip compatibility with Sodium (when rounded = false)
  • Add tooltip line wrapping for Fabric
  • Add tooltip center title and title break for Fabric
  • Others are functionally equivalent to Forge version

Modern Text Engine 1.20.1

  • Add Untranslated Items integration
  • Fix useComponentCache not working at all
  • Fix force unicode font not working after game restart
  • Fix line breaker SIOOBE for illegal string (this fixed crash with Better Statistics Screen)

Core Framework 3.10.0

  • Move kotlin extension to a separate module (Core-KTX)
  • Add Log class to avoid using log4j in submodules
  • Implement blend mode filter for ShapeDrawable, ColorDrawable and other Drawable classes
  • Fix incorrect drop-down position in RTL layout direction
  • Fix MenuPopup overlap anchor (google-bug) (fix #199)
  • Fix TextShaper context range for BiDi analysis
  • Add LocaleSpan
  • Add all 42 blend modes that used in Photoshop (currently no shader implementation)
  • Update BlendMode and Color.blend()
  • Change Bitmap.getSize() type to long
  • Make Bitmap's color info mutable (for reinterpretation)
  • Add path measurement implementation (PathMeasure class)
  • Remove 2GB restriction on Bitmap creation, add more sanitizations
  • Deprecate ImageStore, fix javadoc errors
  • Update Bitmap with Arc3D
  • Update Matrix and Path with Arc3D
  • Fix Underline and Strikethrough offset
  • Add "exclusive" East Asian family support (currently not used)
  • Public Menu.setOptionalIconsVisible() method
  • Change atlas coverage type to double

Core Framework - Kotlin Extension 3.10.0

  • Add kotlin-flavored methods, update annotations

Markdown 3.10.0

  • Suppress unchecked warning

Arc 3D Graphics Engine 3.10.0

  • Add color filters and color matrix
  • Add/update all blend modes and their raster implementations: PLUS, MINUS, DIFFERENCE, EXCLUSION, COLOR_DODGE, COLOR_BURN, HARD_LIGHT, SOFT_LIGHT, LINEAR_DODGE, LINEAR_BURN, VIVID_LIGHT, LINEAR_LIGHT, PIN_LIGHT, HARD_MIX and HSL blend modes (HUE, SATURATION, COLOR, LUMINOSITY)
  • Rename shaderc package to compiler
  • Add Image-derived and Shader-derived skeleton classes
  • Add UNORM_PACK16 and UNORM_PACK32 encoding constant
  • Public ColorType.channelFlags
  • Add missing GRAY_ALPHA_88 for ColorType.encoding
  • Add alpha type validation
  • Make owner's reference to pixel map mutable
  • Fix ColorSpace initializer
  • Add Raster, remove heap version of Bitmap
  • Add full path measurement implementation
  • Add PixelUtils for pixel conversion
  • Add PixelMap and PixelRef, remove Pixmap
  • Add and optimize Path methods
  • Add Path.bounds computation, optimize Path allocation
  • Add Rect2fc and Rect2ic for read-only usage
  • Inline Path.Ref usage count implementation
  • Finish approximation of cubic strokes by quadratic splines
  • Finish approximation of quadratic strokes by quadratic splines
  • Add MathUtil.pin() method for capturing NaN values, replace some use of clamp()
  • Add conic section to quadratic curves conversion
  • Add several methods to reset the Path
  • Finish RoundJoiner, fix Path reversePop
  • Add Matrixc interface for read-only usage of Matrix
  • Update and optimize PathStroker
  • Optimize approximation of conic sections by quadratic splines
  • Add PathConsumer
  • Add Path tessellation for quadratic and cubic splines
  • Add PathUtils and WangsFormula for subdivisions
  • Add Path, add Path.Ref, add PathIterator
  • Add Geometry class for finding inflection points, tangent, curvature, max curvature, cusp, solving quadratic equations, cubic equations, etc
  • Add RefCounted interface
  • Add Hardware transfer processor
  • Optimize rectangle packer

Modern UI 3.10.0.3 (Forge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.3

Forge Extension 1.19.4

  • Add Markdown preview
  • Use vanilla border style for modern tooltip (when rounded = false)
  • Add font names for registered fonts, add JetBrains Mono
  • Update to Emoji 15.1
  • Add auto scroll when tooltip is out of screen
  • Add shadow effect for tooltip
  • Add developer mode config to Preferences GUI
  • Hide Advanced Options and Dev when not in developer mode
  • Adjust default font behavior to be locale-sensitive
  • Tweak fallback font loading behavior (now it accepts font files)
  • Move destroy() method so that the game won't crash in forced tick after the window closes
  • Handle glowing sign where text color is black
  • Update Traditional Chinese - notlin4

Modern Text Engine 1.19.4

  • Add Untranslated Items integration
  • Fix useComponentCache not working at all
  • Fix force unicode font not working after game restart
  • Fix line breaker SIOOBE for illegal string (this fixed crash with Better Statistics Screen)

Core Framework 3.10.0

  • Move kotlin extension to a separate module (Core-KTX)
  • Add Log class to avoid using log4j in submodules
  • Implement blend mode filter for ShapeDrawable, ColorDrawable and other Drawable classes
  • Fix incorrect drop-down position in RTL layout direction
  • Fix MenuPopup overlap anchor (google-bug) (fix #199)
  • Fix TextShaper context range for BiDi analysis
  • Add LocaleSpan
  • Add all 42 blend modes that used in Photoshop (currently no shader implementation)
  • Update BlendMode and Color.blend()
  • Change Bitmap.getSize() type to long
  • Make Bitmap's color info mutable (for reinterpretation)
  • Add path measurement implementation (PathMeasure class)
  • Remove 2GB restriction on Bitmap creation, add more sanitizations
  • Deprecate ImageStore, fix javadoc errors
  • Update Bitmap with Arc3D
  • Update Matrix and Path with Arc3D
  • Fix Underline and Strikethrough offset
  • Add "exclusive" East Asian family support (currently not used)
  • Public Menu.setOptionalIconsVisible() method
  • Change atlas coverage type to double

Core Framework - Kotlin Extension 3.10.0

  • Add kotlin-flavored methods, update annotations

Markdown 3.10.0

  • Suppress unchecked warning

Arc 3D Graphics Engine 3.10.0

  • Add color filters and color matrix
  • Add/update all blend modes and their raster implementations: PLUS, MINUS, DIFFERENCE, EXCLUSION, COLOR_DODGE, COLOR_BURN, HARD_LIGHT, SOFT_LIGHT, LINEAR_DODGE, LINEAR_BURN, VIVID_LIGHT, LINEAR_LIGHT, PIN_LIGHT, HARD_MIX and HSL blend modes (HUE, SATURATION, COLOR, LUMINOSITY)
  • Rename shaderc package to compiler
  • Add Image-derived and Shader-derived skeleton classes
  • Add UNORM_PACK16 and UNORM_PACK32 encoding constant
  • Public ColorType.channelFlags
  • Add missing GRAY_ALPHA_88 for ColorType.encoding
  • Add alpha type validation
  • Make owner's reference to pixel map mutable
  • Fix ColorSpace initializer
  • Add Raster, remove heap version of Bitmap
  • Add full path measurement implementation
  • Add PixelUtils for pixel conversion
  • Add PixelMap and PixelRef, remove Pixmap
  • Add and optimize Path methods
  • Add Path.bounds computation, optimize Path allocation
  • Add Rect2fc and Rect2ic for read-only usage
  • Inline Path.Ref usage count implementation
  • Finish approximation of cubic strokes by quadratic splines
  • Finish approximation of quadratic strokes by quadratic splines
  • Add MathUtil.pin() method for capturing NaN values, replace some use of clamp()
  • Add conic section to quadratic curves conversion
  • Add several methods to reset the Path
  • Finish RoundJoiner, fix Path reversePop
  • Add Matrixc interface for read-only usage of Matrix
  • Update and optimize PathStroker
  • Optimize approximation of conic sections by quadratic splines
  • Add PathConsumer
  • Add Path tessellation for quadratic and cubic splines
  • Add PathUtils and WangsFormula for subdivisions
  • Add Path, add Path.Ref, add PathIterator
  • Add Geometry class for finding inflection points, tangent, curvature, max curvature, cusp, solving quadratic equations, cubic equations, etc
  • Add RefCounted interface
  • Add Hardware transfer processor
  • Optimize rectangle packer

Modern UI 3.10.0.2 (Forge)

by BloCamLimb on Jan 17, 2024
Download

Modern UI 3.10.0.2

Forge Extension 1.19.2

  • Add Markdown preview
  • Use vanilla border style for modern tooltip (when rounded = false)
  • Add font names for registered fonts, add JetBrains Mono
  • Update to Emoji 15.1
  • Add auto scroll when tooltip is out of screen
  • Add shadow effect for tooltip
  • Add developer mode config to Preferences GUI
  • Hide Advanced Options and Dev when not in developer mode
  • Adjust default font behavior to be locale-sensitive
  • Tweak fallback font loading behavior (now it accepts font files)
  • Move destroy() method so that the game won't crash in forced tick after the window closes
  • Handle glowing sign where text color is black
  • Update Traditional Chinese - notlin4

Modern Text Engine 1.19.2

  • Add Untranslated Items integration
  • Fix useComponentCache not working at all
  • Fix force unicode font not working after game restart
  • Fix line breaker SIOOBE for illegal string (this fixed crash with Better Statistics Screen)

Core Framework 3.10.0

  • Move kotlin extension to a separate module (Core-KTX)
  • Add Log class to avoid using log4j in submodules
  • Implement blend mode filter for ShapeDrawable, ColorDrawable and other Drawable classes
  • Fix incorrect drop-down position in RTL layout direction
  • Fix MenuPopup overlap anchor (google-bug) (fix #199)
  • Fix TextShaper context range for BiDi analysis
  • Add LocaleSpan
  • Add all 42 blend modes that used in Photoshop (currently no shader implementation)
  • Update BlendMode and Color.blend()
  • Change Bitmap.getSize() type to long
  • Make Bitmap's color info mutable (for reinterpretation)
  • Add path measurement implementation (PathMeasure class)
  • Remove 2GB restriction on Bitmap creation, add more sanitizations
  • Deprecate ImageStore, fix javadoc errors
  • Update Bitmap with Arc3D
  • Update Matrix and Path with Arc3D
  • Fix Underline and Strikethrough offset
  • Add "exclusive" East Asian family support (currently not used)
  • Public Menu.setOptionalIconsVisible() method
  • Change atlas coverage type to double

Core Framework - Kotlin Extension 3.10.0

  • Add kotlin-flavored methods, update annotations

Markdown 3.10.0

  • Suppress unchecked warning

Arc 3D Graphics Engine 3.10.0

  • Add color filters and color matrix
  • Add/update all blend modes and their raster implementations: PLUS, MINUS, DIFFERENCE, EXCLUSION, COLOR_DODGE, COLOR_BURN, HARD_LIGHT, SOFT_LIGHT, LINEAR_DODGE, LINEAR_BURN, VIVID_LIGHT, LINEAR_LIGHT, PIN_LIGHT, HARD_MIX and HSL blend modes (HUE, SATURATION, COLOR, LUMINOSITY)
  • Rename shaderc package to compiler
  • Add Image-derived and Shader-derived skeleton classes
  • Add UNORM_PACK16 and UNORM_PACK32 encoding constant
  • Public ColorType.channelFlags
  • Add missing GRAY_ALPHA_88 for ColorType.encoding
  • Add alpha type validation
  • Make owner's reference to pixel map mutable
  • Fix ColorSpace initializer
  • Add Raster, remove heap version of Bitmap
  • Add full path measurement implementation
  • Add PixelUtils for pixel conversion
  • Add PixelMap and PixelRef, remove Pixmap
  • Add and optimize Path methods
  • Add Path.bounds computation, optimize Path allocation
  • Add Rect2fc and Rect2ic for read-only usage
  • Inline Path.Ref usage count implementation
  • Finish approximation of cubic strokes by quadratic splines
  • Finish approximation of quadratic strokes by quadratic splines
  • Add MathUtil.pin() method for capturing NaN values, replace some use of clamp()
  • Add conic section to quadratic curves conversion
  • Add several methods to reset the Path
  • Finish RoundJoiner, fix Path reversePop
  • Add Matrixc interface for read-only usage of Matrix
  • Update and optimize PathStroker
  • Optimize approximation of conic sections by quadratic splines
  • Add PathConsumer
  • Add Path tessellation for quadratic and cubic splines
  • Add PathUtils and WangsFormula for subdivisions
  • Add Path, add Path.Ref, add PathIterator
  • Add Geometry class for finding inflection points, tangent, curvature, max curvature, cusp, solving quadratic equations, cubic equations, etc
  • Add RefCounted interface
  • Add Hardware transfer processor
  • Optimize rectangle packer
1
2
3
4
5

Modrinth is open source.

main@016c3d7

© 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.