Skip to content

1.18.2-3.8.0.1

Compare
Choose a tag to compare
@BloCamLimb BloCamLimb released this 11 Aug 07:30
· 171 commits to master since this release

Modern UI 3.8.0.1

Forge Extension 1.18.2-40.1.73

  • Add tooltips for some options
  • Add in-game option for background opacity
  • Use bootstrap.properties instead of bootstrap file
  • Add dynamic tooltip border colors and presets
  • Block NUL char for input method
  • Fix crash on dedicated server
  • Fix possible startup crash
  • Add ContainerDrawHelper
  • Add config to use vanilla font for convenience
  • Remove tooltip fade-in animation
  • Add slider control for preferences
  • Fix UI screenshot not un-premultiplied
  • Don't allow soft launching due to OpenGL 3.3 support
  • Fix GUI scale pinned after game restart
  • Add CenterFragment2
  • Remove noise from gaussian blur shader
  • Remove deprecated configs
  • Adjust GUI scale algorithm
  • Adjust tooltip border width
  • Support capability for fragments and screens
  • Fix incorrect color blending for tooltip
  • Fix GUI scale is always auto after restart
  • Fix black screen with blur effect
  • Add glow wave effect
  • Change the background blur from 4-pass box blur to 2-pass gaussian blur with lod and noise
  • Improve config reloading and action center UI
  • Fix crash on dedicated server (though you shouldn't install on server)
  • Add config to disable slider GUI scale
  • Update GUI scale algorithm
  • Add I18n compat characters
  • Add new API and remove server dependency
  • Change registration and network to internal

Modern Text Engine 1.18.2

  • Add config to control component cache
  • Add default font behavior to control whether to use default font
  • Add SpaceFont for compatibility
  • Add position alignment for direct mask drawing
  • Add StandardFontSet for better mod compatibility
  • Make color emoji work in font itemization rather than brute force
  • Enhance and optimize text layout engine
    • Only compute the required information
    • Make text layout asynchronous
    • Mix layout processor into LayoutCore to increase cache hit
    • Adjust paragraph layout lifespan
    • Reduce performance and memory impact
  • Remove fast digit replacement
  • Make obfuscated style work with bitmap fonts
  • Adjust EditBox highlight color
  • Fix EditBox selection highlight
  • Fix per-glyph rendering for compatibility
  • Fix obfuscated text crash in world using SDF
  • Make SDF work as long as in 3D or non-translation matrix
  • Make SDF work with 32pt font size at least
  • Remove alignPixels due to font hinting
  • Replace 8x outline with SDF stroke
  • Fix compatibility for Create display board
  • Change Twemoji 14 to Google Noto Color Emoji 15
  • Fix text rendered as emoji without VS-16 (0xFE0F)
  • Combine IamCal (Slack) shortcodes with JoyPixels (Discord) and Google
  • Add distance field text to 3D world
  • Fix total advance of layout is never pixel-aligned
  • Fix TTF loading in vanilla resource packs
  • Adjust texture sharpening factor
  • Fix line breaking for obfuscated chars
  • Remove enchantment font hack
  • Support vanilla bitmap font in replacement run
  • Support vanilla bitmap font as font family
  • Support vanilla font declaration
  • Adjust text decoration thickness
  • Reduce unnecessary native memory usage in vanilla
  • Make font resource reloading work async
  • Optimize ChatFormatting.getByCode to O(1)
  • Optimize layout caching strategy
  • Add font set to layout key
  • Add sharpen font atlases
  • Change blend mode for glowing text
  • Add new glowing text effect
  • Add deferred rendering to improve performance

Core Framework 3.8.0

  • Update font itemization for color emoji
  • Fit sub-windows in main window
  • Add ColorEmoji support for font itemization
  • Optimize GPU glyph memory usage
  • Block NUL and DEL character from input
  • Add EmojiFont features
  • Replace Matrix4 with Matrix for View
  • Add TooltipPopup support for View
  • Add Font interface for layout engine, move old Font usage to StandardFont
  • Add text pre-computation
  • Replace all ascents with negative values
  • Fix TextLine context range
  • Add offset parameters to GlyphsConsumer
  • Add TextShaper.shapeText for multi-styled text
  • Fix Canvas.drawText(ShapedText) method
  • Update TextShaper and Canvas methods
  • Add TrailingMarginSpan, add LineBackgroundSpan, add TypefaceSpan
  • Enhance rich text spans, add AlignmentSpan, BulletSpan, LeadingMarginSpan, QuoteSpan
  • Optimize MeasuredText
  • Supports text layout with optional per-glyph advances and pixel bounds
  • Separate Arc Paint, Graphics Paint, TextPaint and FontPaint
  • Enhance temp TextBuffer recycling
  • Fix fast path for BoringLayout.draw()
  • Remove Canvas.drawText(CharSequence)
  • Replace old LayoutPiece usage with ShapedText.doLayout
  • Optimize text rendering
  • Fix FontFamily is not thread safe
  • Add Matrix for 2D transform (xyw), Matrix3 for 3D transform (xyz)
  • Migrate graphics package to Arc 3D
  • Add explicit camera distance
  • Add context range to LayoutCache
  • Add draw ShapedText, add register method to FontFamily
  • Add ShapedText and TextShaper for drawing text, make drawText deprecated
  • Rework LayoutPiece, optimize cluster work, now it won't do texture work
  • Add FontFamily aliases
  • Moving low-level text layout to graphics.text package
  • Fix MessageQueue parkNanos time unit
  • Don't use perspective if View has no 3D transform
  • Add WindowGroup for toasts and popups
  • Add context to Toast
  • Add MpmcArrayQueue
  • Optimize view matrix composition
  • Rework threading system
  • Add ProgressBar and SeekBar
  • Add Locale alias for FontFamily
  • Add ScaleDrawable
  • Change ScrollView default scrollbar
  • Fix bitmap getPixelARGB on BIG ENDIAN machine
  • Rework ShapeDrawable, remove old Shape classes
  • Set long press timeout to 1000ms by default
  • Add LinkMovementMethod
  • Update BinaryIO
  • Update ListView
  • Update Pool and Pools
  • Update Paint methods
  • Add ViewPager module
  • Rework drawLine method with SDF
  • Add drawPie drawMesh canvas method
  • Add GIF image decoder
  • Add more Bitmap formats and image decode methods
  • Merge Arc 3D graphics engine
  • Add framework Nullable/NonNull annotations
  • Allow Bitmap's pixels to be shared
  • Add ColorSpace implementation
  • Update Matrix and MathUtil
  • Optimize for styled text, make text style serializable
  • Add complex value and display metrics
  • Add linked structure and custom data class for DataSet
  • Add property name for Property
  • Fix distance-to-edge anti-aliasing is gamma correct
  • Adjust analytic anti-aliasing to screen-space
  • Improve font collection itemization
  • Update shaders to a modern version
  • Use indexed rendering for glyph meshes
  • Add sharpen textures for all shaders
  • Always use premultiplied alpha for builtin renderer
  • Compact font atlas generation
  • Other small updates...

Arc 3D Graphics Engine 3.8.0

  • Add experimental instanced rendering
  • Optimize text rendering
  • Always use buffer orphaning for OpenGL
  • Add backend render target wrapping
  • Add submit method for BufferPool
  • Add IndexMeshPool
  • Move some context states out of GLCommandBuffer
  • Add RingBuffer
  • Add some Vulkan backend classes
  • Fix BufferAllocPool
  • Fix OpsRenderPass buffer pointers
  • Update VaryingHandler and UniformHandler layout qualifier
  • Add compatibility for base instance support
  • Add GLUniformBuffer and buffer upload
  • Add FilterMode, MipmapMode and AnisotropicFiltering for Paint
  • Add async pipeline state cache (thread safe)
  • Add separate objects from graphics package
  • Add CustomDrawable for handling unmanaged draw
  • Fix Buffer unlock method
  • Fix BufferAlloc pointers
  • Add RoundRectGeoProc
  • Add Buffer creation method to Engine
  • Add DrawOp and MeshDrawOp
  • Add OpListTask
  • Replace GLPipeline with separate GLProgram and GLVertexArray
  • Add GLOpsRenderPass
  • Add GLUniformDataManager
  • Support base offset for GLVertexArray in OpenGL 3.3
  • Fix Surface hierarchy
  • Use MSAA resolve instead of MS texture sampler
  • Add compatibility methods for creating render target objects
  • Add close() for LazyCallback proxies
  • Add GL_RG for GrayAlpha surface usage
  • Add OpenGL 3.3 compatible shaders
  • Add mutable texture allocation methods
  • Add swizzle on texture binding
  • Use separate min/mag filter for SamplerState
  • Optimize surface canvas methods
  • Optimize font atlas generation
  • Change default font atlas size to 4 chunks (1024x1024)
  • Change number of font atlases from multiple to single
  • Add efficient rectangle packing algorithms

Markdown 3.8.0

  • Add Code and CodeBlock
  • Initial basic Markdown support

View Pager 3.8.0

  • Add linear pager indicator
  • Initial update