Better ANTLR error handling for GLSL transformations by @Cleptomania in #715
更好的 GLSL 转换的 ANTLR 错误处理。
New Compat System for ASM Transformations + Immersive Engineering patches by @Cleptomania in #719
用于 ASM 转换 + Immersive Engineering 的新兼容系统补丁。
Fix inverted config by @ah-OOG-ah in #710
修复倒置的配置。
Cursor based positioning for shader setting tooltips by @Cleptomania in #711
更改光影设置的提示以跟随光标。
Fix entity render by @kurrycat2004 in #707
修复实体渲染。
Replace BlockError mixin with event handler by @RecursivePineapple in #671
移除 BlockError 的 Mixin 转而使用 forge 公开的事件。fix entities being rendered completely black by @kurrycat2004 in #676
修复实体完全渲染为黑色的问题。fix in-world text rendering + GL immediate mode rendering by @kurrycat2004 in #677
修复世界内文本渲染 + OpenGL 立即渲染模式。fix horizon rendering before camera transform by @kurrycat2004 in #669
使 Horizon 在相机变换完成后渲染。
use GTNHLib ASMUtil to dump the class files by @Alexdoru in #644
使用 GTNH Lib 的 ASMUtil 转储 class 文件。fix strikethrough line being off by one by @Alexdoru in #647
修复删除线偏移一行的问题。Revert back to old behavior by @mitchej123 in #649
恢复原来的行为。Add an error block, and render it in case of NPE in ISBRH by @Cleptomania in #658
在 ISBRH 中添加错误块,并在 NPE 的情况下呈现它。Remove compat with original release of BG2 by @Caedis in #652
删除与 BG2 原始版本的兼容性。Replace chunk tracker by @embeddedt in #661
替换 chunk tracker。Dynamically modify the render distance for dropped items entities to preserve performance by @Alexdoru in #653
动态修改掉落物的渲染距离以保持性能。Handle FMLRenderAccessLibrary obfuscation properly by @Cleptomania in #663
妥善处理 FMLRenderAccessLibrary 混淆问题。Update README.MD by @czerwonogrodzki in #589
更新README
Make shaders work with modded leaves by @unicornbloods in #594
使光影可以渲染模组树叶[Dynamic Lights] Add Baubles Support by @Caedis in #595
[动态光源]添加Baubles支持Update zh_CN.lang by @NealDeal34 in #565
更新中文翻译Remove model loading from Angelica by @ah-OOG-ah in #610
移除model loadingAdd GLSM to transformer exclusions by @mitchej123 in #612
将GLSM添加到transformer排除项中Archaicfix branding fix by @mist475 in #621
修复了游戏启动期间和 archaicfix 文本冲突的问题Fix culling state leaking and giving graphical issues by @Safixoo in #614
修复 culling state 泄漏和给出图形问题Update pl_PL.lang by @Radk6 in #564
更新波兰语翻译
Options for forced Sodium Lighting and smooth lighting optimizations by @Cleptomania in #575
添加强制使用钠的光照和平滑光照优化的选项
Fix sodium smooth dynamic lights by @Caedis in #577
修复钠的平滑动态光源
More AO Fixes by @Cleptomania in #578
更多环境光遮蔽的修复
Moves CapturingTesselator, JSON Models, and misc utility classes to GTNHlib by @mitchej123 in #587
将 CapturingTesselator、JSON Models 和一些通用工具类移动到了 GTNH Lib 模组中
Create ru_RU.lang by @cutiegin in #552
创建俄语翻译
Also disable Better FPS by @mitchej123 in #558
禁用Better FPS模组(如果同时安装)
Fix Thaumcraft foci rendering by @Caedis in #559
修复神秘时代焦点渲染
Fix Thaumic Horizons Lens Selector by @Caedis in #561
修复神秘视界透镜选择界面
Create pl_PL.lang + minor README improvements by @Radk6 in #560
创建波兰语翻译
HUD Caching Early Return by @Caedis in #562
HUD缓存尽早返回,避免不必要的渲染操作
Merge beta JSON loading API by @ah-OOG-ah in #567
合并JSON加载API
Support for glColorMaterial and glLightModel in GLSM by @Cleptomania in #556
增加对 glColorMaterial 和 glLightModel 的支持
More GLSM Lighting and Material work by @Cleptomania in #569
进行更多 GLSM 照明和材质方面的工作
Beta by @mitchej123 in #461
发布测试版本
Beta Release - Shaders sneak preview (Don't submit issues yet) by @mitchej123 in #557
测试版本 - 着色器预览(目前不要提交着色器相关的issue)
Fixed crash with EndlessIDs when joining a multiplayer server by @FalsePattern in #520
Fix NPE from MineFactory Reloaded during lag spikes by @JL2210 in #522
Use gtnhlib for coordinate packing/unpacking by @mitchej123 in #550
GLSM Lighting by @Cleptomania in #553
More GLSM Lighting Fixes by @Cleptomania in #554
Mark chunk graph as dirty when FOV changes by @embeddedt in #506
Cloud scaling, distance, and some fixes by @jss2a98aj in #507
Add null check to FluidRenderer by @ah-OOG-ah in #513
THIS ADDS FEATURE REQUEST ISSUE TO GITHUB by @unicornbloods in #514
Disable Dynamic Lights video option when module is disabled by @Caedis in #491
Sync NotFine 0.2.4-0.2.5 changes by @jss2a98aj in #502
Patches vanilla getFlowDirection to not crash with a
ClassCastException if another mod implements their own fluid renderer
and calls getFlowDirection when COFH ASM is loaded by @mitchej123 in #505
Only set/access texture info cache from the main thread by @mitchej123 in #484
More null checks by @mitchej123 in #485
Fix RenderBlockFluid reading the block type from the world access multiple times by @eigenraven in #482
Make TextureInfoCache safer by @mitchej123 in #477
Neuter FML optifine detection/reporting by @mitchej123 in #475
Small NotFine style settings menu fix by @jss2a98aj in #457
NotFine 0.2.2 sync by @jss2a98aj in #462
Leaf render mode support for Natura and Tinker's Construct bushes by @jss2a98aj in #464
Fix FontRenderer intel issue by @eigenraven in #456
Update Mixins.java by @mitchej123 in #447
Attempt at BetterCrashes Compat by @mitchej123 in #453
Fix glMultMatrix using the wrong variable for multiplication by @eigenraven in #444
Fix NotFine Twilight Forest compat mixins builder by @jss2a98aj in #430
Fix flickering of HoloInventory and Xaero's Map Waypoints by @Caedis in #418
Check if hudcaching is enabled before removing xaeros ASM by @Caedis in #419
Add more methods present in modern MatrixStack by @wahfl2 in #420
Fix render distance being capped at 20 by @MellowArpeggiation in #428
Sync NotFine by @jss2a98aj in #42
Stop blacklisting bartworks by @mitchej123 in #369
Use ByteBuffer overload when indirect buffer is in client memory by @makamys in #375
Use vanilla field to count number of chunk updates by @makamys in #372
Fix AIOBE in debug screen and NPE on world join by @ah-OOG-ah in #385
Check before casting. by @mitchej123 in #389
Only track rendered sprites on specific RenderBlocks instances by @embeddedt in #355
Try an Int2ObjectMap instead of an ObjectList by @mitchej123 in #348
Add JSON models and a dynamic model API by @ah-OOG-ah in #338
Maybe fix memory leak by @mitchej123 in #354
Ignore the iris/mcpf configs, hardcode angelica-modules.cfg filename by @mitchej123 in #333
Apparently some mods rely on ForgeHooksClient.getWorldRenderPass() by @mitchej123 in #347
Switch up the signature to take ints instead of a blockpos and stop allocating one by @mitchej123 in #324
Use a RFB plugin for GLSM transforms when available by @eigenraven in #329
Gate some advanced/beta features behind java properties by @mitchej123 in #332
Don't crash wit invalid lightquality/particalmode options by @mitchej123 in #306
scheduleRebuildOffThread by @mitchej123 in #316
Switcharoo on detecting ThreadSafeISBRHFactory... by @mitchej123 in #318
Test Basic Matrix operations by @mitchej123 in #295
Sync with NotFine by @jss2a98aj in #296
Move JOML dependency to GTNHLib 0.2.4 by @Cleptomania in #301
Fix glLoadMatrix and add a test for it by @mitchej123 in #305
Make getBlockType and getBlockMetadata atomic by @mitchej123 in #288
GLSM Tests & AMD Driver Workaround by @mitchej123 in #290
Blacklist bartworks from the worker thread by @mitchej123 in #286
Log more information in the no-result task exception by @eigenraven in #283
Do not return null results in translucency sort task if not cancelled by @mitchej123 in #284
Glsm tests by @mitchej123 in #275
Fix typo in issue template by @ah-OOG-ah in #280
A few buildscript and test tweaks by @eigenraven in #281
More GLSM Tests by @mitchej123 in #282
Bump GTNH gradle plugin version by @ah-OOG-ah in #268
Compat with NotEnoughIDs 16-bit Metadata by @Cleptomania in #271
GLSM Improvements by @mitchej123 in #272
Initial QuadProvider API by @ah-OOG-ah in #256
Fix some missing state for push/pop attrib by @mitchej123 in #260
Add a Vector3dStack - Fix nested translations being stored by @mitchej123 in #258
Bypass cache longer by @mitchej123 in #259
null check by @mitchej123 in #255
This wasn't supposed to be private 🤦 by @mitchej123 in #246
Fix leaf rendering issue by @jss2a98aj in #247
Only return null if job is explicitly cancelled by @embeddedt in #251
Make RedirectorTransformer handle block subclasses correctly (fixes TFC+) by @makamys in #249
Opt in thread saftey by @mitchej123 in #254
More aggressive caching by @mitchej123 in #239
Fix texture state leak in BatchedFontRenderer by @Pistonight in #240
More Caching by @mitchej123 in #242
Fewer Allocations by @mitchej123 in #243
VBO related Tweaks by @mitchej123 in #227
Fix hud caching alpha handling and boss health by @Pistonight in #232
OpenGL Debugging by @mitchej123 in #233
Handle depth buffer properly in HUD Caching by @Pistonight in #235
Fix hud caching vignette and crosshair color issues by @Pistonight in #212
Redirect negative display list calls to VBOs globally (fixes Smart Moving) by @makamys in #217
ArchaicFix compat by @mitchej123 in #220
Config updates by @mitchej123 in #225
Add Reese's Sodium Options by @mitchej123 in #219
Don't activate item textures if there is no client world by @embeddedt in #189
Render all Wavefront objects as VBO by @mitchej123 in #192
Enable NotFine leaf modes when enableNotFineFeatures is true by @jss2a98aj in #194
disable sodium weather quality redirect if dynamic surroundings is pr… by @mist475 in #200
Remove silly early initial implementation and fix star VBO by @mitchej123 in #206
Reset the offset on cleanup/clearQuads instead of after every draw/reset call by @mitchej123 in #159
Clear event phase before reusing object by @embeddedt in #170
Handle state changes for display lists correctly in GLSM by @Cleptomania in #168
Only use BatchedFontRenderer when not in a display list compilation by @Cleptomania in #174
Respect animation speedup config by @mitchej123 in #180
Off thread safe blocks by @mitchej123 in #177
Remove tessellator to buffer by @mitchej123 in #123
meh - fix silly by @mitchej123 in #126
Fix chunk update stutter by unparking main thread when a chunk render job completes by @embeddedt in #127
Performance & allocation rate optimizations by @embeddedt in #128
DisplayList -> VBO for stars, skies, and ModelRenderer by @mitchej123 in #129
VBO Manager by @mitchej123 in #133
Fix drawString returning wrong value by @ZakBerkelaar in #132
VBO Clouds by @mitchej123 in #135
Add archaicfix version requirement, if present by @mitchej123 in #136
Fix Camera#blockPos rounding and apply third person offset by @makamys in #137
Use ConcurrentHashMap to store tile entity renderers by @embeddedt in #138
Set the hasXXX flags so quads get generated properly by @mitchej123 in #139
Make sure the correct discard/reset is being called by @mitchej123 in #144
So binding a texture in a display list compile won't change it, but it'll capture the change..... by @mitchej123 in #146
Integrate Sodium animation system with Angelica's by @embeddedt in #147
Store state changes generated while creating a display list, and apply them after calling the display list by @mitchej123 in #150
Backport relevant changes from Embeddium versions since the fork by @embeddedt in #149
Fix for GUI lighting states by @Cleptomania in #148
Fix VBO crash by @mitchej123 in #151
Don't remap, and throw early by @mitchej123 in #153
turn sortAndRender redirect into WrapOperation by @mist475 in #158
Only enable threaded block transformations when sodium is enabled by @mitchej123 in #107
Normalize Rotation vector by @mitchej123 in #109
Re-enable lighting after rendering Thaumcraft aspects by @Cleptomania in #111
Defer chunk updates by default by @mitchej123 in #112
fix sodium fluid renderer not using biome colors by @mist475 in #122
VBO support by @mitchej123 in #120
Handle bad matrix modes by @mitchej123 in #93
Preliminary ChunkAPI/EndlessIDs compatibility by @FalsePattern in #94
replace lotr blockrendering hashmap with concurrent version by @mist475 in #98
Move mod checks to their own static class by @Caedis in #103
Texture coordinate precision issues by @Cleptomania in #105
Update the tesselator checks to allow for non main instance tesselators while still on the main thread by @mitchej123 in #106
Fix constant pool parser early-exiting instead of checking all strings by @embeddedt in #90
Do not include transformed mods in runtime classpath by default by @embeddedt in #91
Fix Block bounds fields redirects not applying to subclasses by @embeddedt in #79
Add missed IC2 mixin by @mitchej123 in #85
Fully track GL State changes by @mitchej123 in #83
Catch the specific error, rather than generic Exception (which the error doesn't seem to subclass anyway) by @mitchej123 in #88
Dynamic cstPoolParser by @mitchej123 in #89
Handle GL_COMPILE separately from GL_COMPILE_AND_EXECUTE by @mitchej123 in #68
Use client world for main thread renders by @embeddedt in #62
Opt in debug by @mitchej123 in #67
Make glPushAttrib match native behavior if bypassing state manager cache by @embeddedt in #55
Track the model view and projection matrix by @mitchej123 in #56
Avoid restoring GL buffers we didn't modify by @embeddedt in #60
Because of course someone uses DoubleBuffer by @mitchej123 in #61
Switch up how we're grabbing the projection & model view matrix to avoid needing to call glGetFloat() again by @mitchej123 in #53
ThreadedTessellator -> RenderBlocks instance Tessellator
Plus a CME workaround until I can figure out why it's happening
One inject with multiple methods instead of two injects
Add AF's Tessellator#reset mixin Fixes screen flashing when chunks are being built
Thread Saftey
Make each tesselator use its own ByteBuffer
Don't make RecyclingList a static variable 🤦
Add some additions via ITessellatorInstance
Stop using builtin updateRenderers
Remove a few unused things in MixinTessellator
Remove useless casting due to implementing the interface
Overwrite some more rendering methods to ensure they're not used
Implement IBlockAccess on WorldSlice
Currently just proxies to the World... need to get it to use the local cache
Make WorldSlice use its copied values instead of using the world
block, meta, and light. Still need TODO biome
Finish making WorldSlice thread safe
Remove last unsafe this.world accesses
Copy biomeData
Implement getTileEntity(), and getBiomeGenForCoords()
Remove unused 1.16+ classes - Biome, Colorizer, and ColorBlender related
Cache worldHeight instead of asking the provider every time
Debug Screen updates
Disable Culling for now (until it works)
Tessellator Updates
Use one instance on the main thread, and individual instances on every other thread
Prevent draw() and buffer.reset() on non singleton instance
Misc cleanup, maybe better growBuffer?
Fixing splash screen and GUI issues by excluding SplashProgress from GLStateManager transformer
Update docs
Fixing a one line in SodiumWorldRenderer that allows the game setting for the distance at which entities will render. Hope it's not too bad mitch :)
TileEntites now render
Less silly transparency
Removing clamp implementation because I missed the one in mathhelper
Initial sodium entity smooth lighting
Fix entity smooth lighting
Fix lerp uses and use render layers properly (#17)
Remove some uses of blockstate + patch FluidState
Fix lerp
Enable Sodium fluid rendering
Update FluidRenderer.java
Rewind buffers when copying
Fix multidraw
Force cutout on all non-translucent blocks
Let vanilla handle render pass state
Rewrite render layer check to use Forge 1.7 hook
Fix skylight handling
Fix flickering
Clone TEs correctly
Fixing entityDistMulti (I think)
Fix TEs rendering on the wrong pass
Buff max render distance to 32 Pretty useless since the integrated server stalls instantly, but our renderer supports it
Fix fog
Fix render distance changes being ignored
Implement entity culling
Block face culling
Re-enable occlusion culling
Fix x/z coordinate mixup when indexing biome arrays Partially fixes wrong biome colors, but at chunk edges it's still wrong because neighboring chunks aren't accessed
Make a copy of biome data
The old code seemed to work fine but this should be safer
Make CompatMemoryUtil#memReallocDirect preserve buffer position
LWJGL3's MemoryUtil#memRealloc does this, see its javadoc.
Fixes screen flashing and this error getting printed when indirect buffer grows:
GL_INVALID_OPERATION error generated. Bound draw indirect buffer is not large enough.
Use biome data of neighboring chunk sections
Fixes wrong colors at chunk edges
Re-enable fog culling
Tile entity culling
Remove some unneeded Sodium code
Massive code cleanup
Avoids errors when usin lwjglxdebug
Bump hodgepodge dep
Add AngelicaConfig
Add Mixin to disable MC's builtin checkGLError
Add configs for iris/sodium
Iris work
Move some StateNotifiers to GLStateManager
Remove some redundant mixins based on sodium/angelica work and rendering state captures
Add Iris DebugScreenHandler
rm archaicfix's occlusion renderer and threaded updates
Implemented Sodium's GUI and a couple of setting fixes (#20)
Ported Sodium's GUI
Correct AO
Fixed Vignette
Re-enable DirectMemoryAccess
Adds some code from lwjgl3 in CompatMemoryUtil.java
Re-add *Unsafe classes
Remove MixinWorldRenderer
Add NEID (mixin pr) support
Only shadow runtime module of antlr4
Reduces jar size by 11 mb
Update NotFine
Make LongHashMap actually perform like a hash map
Options GUI Fixes and some option implementations (#22)
Correct useNoErrorGLContext option
Added translucency sorting option
Implemented Particle Culling gives real fps boost, however, it's not as big as i thought
Begin implementing animateOnlyVisibleTextures
Correct Donation page opening
Fixed Shift + P - Now it uses NotFine's GUI, but it think that NotFine's GUI should be rewrited for using other config options
Correct URL's for Linux
second code cleanup in particle culling
Fix incorrect TE map population
Add optional assertMainThread behind -Dangelica.assertMainThread=true
Add back air optimization, but only apply to vanilla air
Implement more options (#23)
Combine free regions in GlBufferArena
Clear global block entity list when initializing renderer
AF, CompileStubs, and SplashProgress
Remove most of ArchaicFix
Move a few mixins over to angelica
Disable if org.lwjgl.util.Debug is set
Only enable Iris/lwjgl debug callbacks if org.lwjgl.util.Debug is set
Rewrite Tessellator hacks - now using a ThreadLocal instead of only patching RenderBlocks
Reenable AF mixins, switch to cached debug var, disable incompatible mixins
Remove AF deps and a late mixin that was missed
Add Iris Sodium Compat impl
Fix Sodium GLProgram to use ResourceLocation instead of Identifier
Start applying Iris -> Sodium Mixins
Make NotFine menu open if holding shift
Fixed Tessellators in production env
Finish Sodium Fluid Renderer (#24)
Init and pass Sodium LightPipelines
Remove registry lookup and refactor WorldUtil
Hook up lighting pipeline
Patch fluid velocity
It's alive! Sodium Fluid Renderer is alive!
Fix face culling not taking third person camera offset into account
rewrite ACTEntityRenderer to stop transforming ALL the classes
use ClassConstantPoolParser in TessellatorTransformer to speed up search for Tessellator references
use ClassConstantPoolParser in GLStateManagerTransformer to speed up search for class references
rewrite GLStateManagerTransformer and TessellatorTransformer
merge GLStateManagerTransfor and TessellatorTransformer into one Transformer
Fixed smooth lighting rendering
Iris block_id Mixins & BlockStateIdMap initial impl for 1.7.10
Fix running with lwjgl debug flag & Cleanup old ShadersMod transformers
Initialize GLStateManager via Mixins instead of all in the static block
Clean up chunk load/unload tracking, fix chunks rendering without neighbors sometimes
Fix occlusion culler not re-running after important uploads
Backport of CaffeineMC/sodium-fabric#755
Add chunks to queues without going through occlusion culler
Partially reverts the previous chunk tracking commit, because that logic will reintroduce CaffeineMC/sodium-fabric#605
As long as we only rebuild with neighbors present, we shouldn't see the visual seams
Extremely primitive synchronization approach for ISBRH
Use factory for Spdium menu createElement outputs This will allow NotFine to use Sodium menu elements and vice versa in a future commit.
Splash Screen Compat
Separate remaining NamedState enums
NotFine but it loads Sodium pages
Hook up NotFine optimizations
Hook up some NotFine features
copy over hud caching code from hodgepodge
backport glstatemanager mixin
Track thread that currently owns the GL Context in addition to the main thread.
First pass over FontRenderer, 1300->1400 FPS on my GPU when showing F3
Done:
A batching vertex buffer builder for font output
Reduction in drawcalls from 1-3 per character to 1 per font atlas switch
Mixin to draw the entire F3 screen in one batch, instead of separate batches per line
TODO:
Switch drawing to a VBO
Cache string meshes across frames
Cache string width calculations used for layouts
Multidraw to reduce draw calls even further
Add JVM flag to bypass GL state caching
Push/Pop Attrib Hacks -- to be evolved later
Fix FontRenderer+SplashScreen combo
HUDCaching tweaks
Add license
Jabba Compat, and reset tesselator state even if the chunk render thread blows up
Initial Xaero's World Map + Minimap Support
Disable Fastcraft & Optifine if present
Iris Progress
Wire up more Iris mixins, informing pipeline stages. Still not rendering anything visible.
Don't try to transform the server
Avoid running biome generator on client in singleplayer
Call world biome retrieval methods instead of copying array directly (#25)
Shaders now do something!
Shadow Pass work
First shadow pass renders; however it moves all around when moving the camera...
Second shadow pass not running because it makes everything very very dark instead of just rendering translucents
Actually use the ShadowRenderer Model View when running the shadow pass...
Enable Sodium SmoothLightPipeline & Iris useSeparateAo
Avoid repeatedly copying biome data on each Y level (#27)
Celestial Rotation fixes
Water progress
Uniforms audit
Lightmap workaround
PBR compiling, stuck on Normal and Specular textures being added in
Shaderpack selection "works"; ShaderOptions TODO
Hud caching angelica (#28)
Potential hud-caching fix
Shader Options almost working
** Clicking on everything...