mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-16 21:44:05 +09:00
simple hack for out-of-place render of terrain and lightmap
- Just made them not have negative value
This commit is contained in:
@@ -11,6 +11,7 @@ import net.torvald.terrarum.blockproperties.Block
|
||||
import net.torvald.terrarum.blockproperties.BlockCodex
|
||||
import net.torvald.terrarum.*
|
||||
import net.torvald.terrarum.gameactors.ceilInt
|
||||
import net.torvald.terrarum.gameworld.fmod
|
||||
import net.torvald.terrarum.itemproperties.ItemCodex.ITEM_TILES
|
||||
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
|
||||
import java.io.BufferedOutputStream
|
||||
@@ -748,7 +749,7 @@ object BlocksDrawer {
|
||||
shader.setUniformi("tilemap", 2)
|
||||
shader.setUniformi("tilemapDimension", tilesBuffer.width, tilesBuffer.height)
|
||||
shader.setUniformf("tilesInAxes", tilesInHorizontal.toFloat(), tilesInVertical.toFloat())
|
||||
shader.setUniformi("cameraTranslation", WorldCamera.x % TILE_SIZE, WorldCamera.y % TILE_SIZE)
|
||||
shader.setUniformi("cameraTranslation", WorldCamera.x fmod TILE_SIZE, WorldCamera.y fmod TILE_SIZE)
|
||||
shader.setUniformi("tileSizeInPx", TILE_SIZE)
|
||||
shader.setUniformi("tilesInAtlas", tileAtlas.horizontalCount, tileAtlas.verticalCount) //depends on the tile atlas
|
||||
shader.setUniformi("atlasTexSize", tileAtlas.texture.width, tileAtlas.texture.height) //depends on the tile atlas
|
||||
|
||||
@@ -37,8 +37,7 @@ object WorldCamera {
|
||||
height = FastMath.ceil(Terrarum.HEIGHT / (Terrarum.ingame?.screenZoom ?: 1f))
|
||||
|
||||
// position - (WH / 2)
|
||||
x = (// X only: ROUNDWORLD implementation
|
||||
player.hitbox.centeredX.toFloat() - width / 2).floorInt()
|
||||
x = player.hitbox.startX.toFloat().floorInt() // X only: ROUNDWORLD implementation
|
||||
y = (FastMath.clamp(
|
||||
player.hitbox.centeredY.toFloat() - height / 2,
|
||||
TILE_SIZE.toFloat(),
|
||||
@@ -46,6 +45,7 @@ object WorldCamera {
|
||||
)).floorInt().clampCameraY(world)
|
||||
|
||||
|
||||
|
||||
gdxCamX = x + (width / 2f).floor()
|
||||
gdxCamY = y + (height / 2f).floor()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user