aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/util/LightingHelper.java
AgeCommit message (Collapse)Author
2023-04-23Forge direction (#1895)Jason Mitchell
* ForgeDirection Also refactor the clusterfuck that was `getCoordinateScan` Co-authored by: Jason Mitchell <mitchej@gmail.com> * Fix rendering of Frame Boxes Frame boxes needed their own implementation of getTexture with int connexion mask, which is returning an error texture for the MetaTileEntity, because pipes (FrameBox **is** a pipe) do use this method to return different textures based on connexion status. --------- Co-authored-by: Léa Gris <lea.gris@noiraude.net>
2023-04-10Update spotless config to 0.2.2Raven Szewczyk
2023-04-01Jabel, Generic injection and mostly automatic code cleanup (#1829)Raven Szewczyk
* Enable Jabel&Generic injection, fix type error caused by this * add missing <> * Infer generic types automatically * Parametrize cast types * Use enhanced for loops * Unnecessary boxing * Unnecessary unboxing * Use Objects.equals * Explicit type can be replaced with `<>` * Collapse identical catch blocks * Add SafeVarargs where applicable * Anonymous type can be replaced with lambda * Use List.sort directly * Lambda can be a method reference * Statement lambda can be an expression lambda * Use string switches * Instanceof pattern matching * Text block can be used * Migrate to enhanced switch * Java style array declarations * Unnecessary toString() * More unnecessary String conversions * Unnecessary modifiers * Unnecessary semicolons * Fix duplicate conditions * Extract common code from if branches * Replace switches with ifs for 1-2 cases * Inner class may be static * Minor performance issues * Replace string appending in loops with string builders * Fix IntelliJ using the wrong empty list method * Use Long.compare * Generic arguments: getSubItems * Generic arguments: getSubBlocks * Raw types warnings * Fix remaining missing generics * Too weak variable type leads to unnecessary cast * Redundant type casts * Redundant array length check * Redundant vararg arrays * Manual min/max implementations * A couple missed inspections * Goodbye explosion power ternary ladder * Apply spotless * Get rid of the other two big ternary ladders * Binary search explosion power * Don't overcomplicate things
2023-04-01update spotless formatting (#1827)boubou19
2023-01-30[ci skip] spotlessApply with the new settingsJason Mitchell
2023-01-30add back turbine wallsharing (#1699)Glease
* add back turbine wallsharing Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * use new texture from @Jimbno Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * remove unnecessary structure checks it turns out you cannot build 2 functional large turbine at these locations anyway, so why not? Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * spotless Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * update bs * use the original grey for empty texture these are slightly darker, and looks better Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> --------- Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: Martin Robertz <dream-master@gmx.net>
2022-08-27Update buildscript & apply spotless (#1306)Raven Szewczyk
* Update dependencies * Update buildscript, apply spotless
2021-07-30feat(texture API): integrate ExtendedFacing rotationLéa Gris
Add ExtendedFacing rotation to the texture API. Rotatable ExtendedFacing textures can be created with: ```java TextureFactory.builder().addIcon(IICon).extFacing().build(); ``` Improve and unify internal implementation of standard oriented and glow textures.
2021-04-21fix(rendering): itemblocks inventory brightness and orientationLéa Gris
- Fix itemblock brightness and orientation to be exactly same as vanilla blocks in inventory. - Revert machine front facing to the brighter left side as it eases differentiating them. - Optimise inventory itemblock rendering to issue a draw quads only once for the entire block, rather than for each side.
2021-04-04fix(rendering): multiple rendering fixes and refactor (#494)Léa Gris
* fix(rendering): multiple rendering fixes and refactor - Fix rendering gregtech machines in inventory with correct orientation and lighting. - Fix rendering of pipes connected through covers, no longer z-fight at a distance. - Fix updating of textures when un/holding a soldering-iron. - Refactor of the GT_Renderer_Block class with properly named constants replacing raw literals.
2021-03-23fix(rendering): brightness of no-z-fighting offset facesLéa Gris
Ignore the z-fighting offset when detecting if a face uses the block's brightness or the brightness from the block above.
2021-03-03impr(rendering): Machine block casts an ambient occlusion shadowLéa Gris
- Implement the missing ambient occlusion shadow from machine block over neighbour blocks. - Fix the LightingHelper to properly shade pipes/cables/wires against an opaque block. - Refactor and cleanup the GT_Block_Machines class of all bad practices and code smell, checked and validated with Sonarlint.
2021-02-16feat(render): tile ambient occlusionLéa Gris
Render smooth lighting ambient occlusion on all Gregtech tiles: - Ores - Machines - Pipes, Cables, Wires, Frames Add new Client-side configuration entry in Gregtech.cfg. If false, the flat lighting rendering of older versions is used. ```yml render { B:TileAmbientOcclusion_true=true } ```