dramatic stadium

This commit is contained in:
DramaticShape
2026-08-04 10:43:35 -04:00
parent 7b1ac9b1b6
commit 74cc08f1bf
38 changed files with 9419 additions and 50 deletions
+28
View File
@@ -865,6 +865,16 @@ local function castShadows(state, terrain, nbMesh, posed, cx, cy, vw, vh,
ShadowMap.draw(BattleBillboard.mesh(), card.tex, ShadowMap.snug(card.model))
end
ShadowMap.sprites(false)
-- and the STADIUM models, outside the sprite flag and un-snugged, for
-- the reasons the flat battle pass gives (BattleScene.castShadows):
-- these are geometry, not cut-outs
pcall(function()
local stageArena, stageY = V.require("OverworldBattle").stage()
if stageArena and stageArena.discs then
V.require("StadiumStage").cast(ShadowMap, stageArena, stageY or 0)
end
V.require("Stadium").cast(ShadowMap)
end)
ShadowMap.finish(sig)
end
@@ -1072,6 +1082,24 @@ function VoxelScene.render(state, w, h, vw, vh, paletteFor, eyes)
Voxel3D.draw(BattleBillboard.mesh(), card.tex, card.model,
BattleBillboard.PULL)
end
-- and, on the STADIUM rungs, the models -- the same skinned meshes the
-- flat pass and the sun already used this frame, drawn again through
-- THIS eye. Unlike the cards there is nothing per-eye about them: a
-- model faces its opponent, not the viewer, so both eyes see the same
-- pose from their own seats, which is what makes it read as solid.
--
-- On STADIUM B the platforms come with them. In a headset the world is
-- still drawn -- the player is standing IN it, which is the whole point
-- of the headset, so the rung's "no map" does not apply here -- and the
-- discs then read as a stage set down on the ground, which is what they
-- are.
pcall(function()
local stageArena, stageY = V.require("OverworldBattle").stage()
if stageArena and stageArena.discs then
V.require("StadiumStage").draw(stageArena, stageY or 0)
end
V.require("Stadium").draw(BattleBillboard.PULL)
end)
if battleTex.flash then Voxel3D.flatten(nil) end
-- and the MOVE ANIMATIONS, standing on the same arena: the
-- engine's own effects layer on the plane through both cells