mirror of
https://github.com/DramaticShape/DramaticShapeVoxelMod.git
synced 2026-08-12 08:01:09 +02:00
64 lines
7.7 KiB
Plaintext
64 lines
7.7 KiB
Plaintext
-- Sharing metadata (25-community-and-ecosystem.md 3.2). Read by tooling
|
|
-- and the manager detail pane; never by the loader's merge.
|
|
return {
|
|
summary = "The overworld as a 3D diorama, and battles fought on it: real occlusion, tilt-shift, over-the-shoulder fights.",
|
|
author = "DramaticShape",
|
|
contact = "https://github.com/DramaticShape/DRAMATIC_SHAPE",
|
|
tags = { "graphics", "3d", "voxel", "render-pipeline", "presentation",
|
|
"battle" },
|
|
differences = {
|
|
changed = {
|
|
"with VOXEL on, the overworld draws as 3D geometry instead of flat tiles",
|
|
"occlusion comes from a depth buffer rather than a y-sort, so buildings really hide what is behind them",
|
|
"with 3D-BTL on, a battle draws over the map's nearest clear ground instead of over a white field",
|
|
"the battle's text box and menu are frosted glass over that ground rather than an opaque white slab, on the same panels the HUDs sit on",
|
|
"the map's NPCs are culled for the length of a battle, so the wipe plays over an empty map",
|
|
"a battle's letterbox voids go black rather than white, because the battle canvas is no longer white",
|
|
"the engine's TILT and GBC FX rows are taken OFF the OPTIONS menu and held at off for as long as this mod is installed -- TILT is the flat fake of what this mode does for real, GBC FX is a full-screen pass over the top of it; uninstalling puts both rows back",
|
|
"hotkeys 3 and 5 are taken over from those two, which have no key and no row while this is loaded",
|
|
"SELECT in free roam steps the VOXEL ladder exactly as hotkey 3 does -- the button has no overworld job in Gen 1, and phones and pads have no number row; menus keep it untouched",
|
|
"on the 1ST rung ONLY, the grid walk is replaced by free camera-relative movement: collision, warps, ledges, encounters and scripts still run through the engine's own machinery, and every other rung leaves movement untouched",
|
|
"on the 1ST rung the mouse cursor is captured for free look; left click is A, right click is B, and any touch off the overlay's controls drags the view",
|
|
},
|
|
added = {
|
|
"VOXEL options row and hotkey 3 (OFF / 15 / 35 / 50 / 75 degrees / 1ST, a first-person camera with free look and free movement)",
|
|
"T-SHIFT options row and hotkey 6 (OFF / 1 / 2 / 3), the miniature blur",
|
|
"V-GRID on hotkey 5 and V-CURVE on hotkey 7",
|
|
"WATER on hotkey 9 (FULL / SKY / OFF, FULL by default): the water surface becomes a field of pixel-tall voxel columns rising and falling as waves, reflecting the sky, the sun, the moon and the cast standing beside it -- and, on FULL, the shoreline, trees and buildings behind it, by a screen-space ray march",
|
|
"3D-BTL on hotkey 8 (ON / OFF, on by default), battles fought on the world map",
|
|
"BACK SPRITES options row (OFF / ON, off by default), which keeps your own Pokemon on the battle menu in its classic slot while the foe stands out on the map",
|
|
"VR options row (OFF / ON, off by default): PCVR through OpenXR on Windows -- the diorama as a head-tracked tabletop model presented at the rung's own angle and framing on the orbit rungs, life-size first person on 1ST, a staged battle snapping the headset (through a fade to black) into the flat game's own over-the-shoulder seat at life scale, a voxel Pokedex flush along the left controller in first person and in battles (menus, dialogs and the 2D battle screen on its screen; the diorama does without it), the sky and its sun and moon anchored in space, the floating panel wearing the GB frame near-square rather than the whole monitor-wide window, the window as mirror; needs a runtime (SteamVR/Oculus/WMR) and the mod on a real folder",
|
|
"VR controllers (Touch/Index/WMR, rebindable in the runtime): left stick moves, A/B are A/B, either trigger is START, left stick click toggles first/third person; in 1ST the right stick snap-turns 45 degrees a flick; in the diorama the right stick zooms and a squeezed grip drags the table's height; no controller button leaves VR -- that is the VR row's job",
|
|
"a day/night clock that reaches the flat 2D overworld as well as the diorama -- outdoor maps only, and only when the hour is not midday",
|
|
"an over-the-shoulder battle camera on a slow parallax orbit, with a depth-of-field pass that holds both mons sharp",
|
|
"a sky behind the diorama at the 75-degree rung, outdoor maps only, coloured by the active palette mode",
|
|
"a hand-authored tile shape profile (data/voxel_heights.lua) a mod can extend",
|
|
},
|
|
known = {
|
|
"needs shader and depth-canvas support; without them the rows still cycle but the world stays 2D and battles draw plainly",
|
|
"water reflections additionally need a READABLE depth canvas; a driver without one draws the flat animated water this mode always drew",
|
|
"WATER on FULL ray-marches the depth buffer per water pixel, so a map that is mostly sea costs real fill rate on a weak GPU -- SKY is the same look minus the ray march, and OFF is the flat water",
|
|
"a screen-space reflection can only reflect what is in the frame: a tree just off the top edge is not in the water below it, and a ray that runs off the side fades into the sky rather than ending on a line",
|
|
"a map with no 3x6 clearing falls back to a 1x4 one, and a map with neither draws the plain battle screen",
|
|
"the arena is where the CAMERA goes -- nobody is moved, so a fight staged across the map is a shot of that ground, not a trip to it",
|
|
"the battle backdrop renders at the GB's 160x144 to match the pics composited over it, so it is chunkier than the free-roam pass",
|
|
"menus and cutscenes are unaffected -- outside a battle the mode only draws the free-roam overworld",
|
|
"terrain meshes are cached per map, so the first frame after entering a large map costs a build",
|
|
"1ST needs the 3D pass like every rung; without it the level still persists but the world stays 2D and the grid walk stays in charge",
|
|
"in 1ST, scripted walks, ledge hops and spinner slides play out as the grid moves they are, with the camera riding along; free control resumes when they land",
|
|
"rooms have no ceilings, so a first-person look over an interior wall shows the void the diorama always had behind it",
|
|
"VR is Windows x64 only (the shipped loader and the Win32 GL binding): on any other platform -- mobile above all -- the VR row is absent from the OPTIONS menu and the manager's page both, and a stored vr=true carried over in a save is ignored. On Windows it renders the scene once per eye (heavy with WATER FULL or AA up) and cannot start from a mounted .love archive -- the FFI needs the loader DLL on a real disk path; pad/keyboard/mouse keep working alongside the XR controllers",
|
|
"VR on and off are both the VR row's job (options menu or manager); no controller button does either",
|
|
"the Pokedex needs a TRACKED left controller; without one there is no device in hand and the floating panel carries the UI as before",
|
|
"while the VR row is ON, 3D-BTL is held ON and BACK SPRITES held OFF (the headset's battle staging assumes both), and both rows leave the OPTIONS menu until VR goes off -- their stored values come back with them",
|
|
"while a headset is live the battle HUDs keep their classic in-frame slots instead of snapping to the window's edges, on the flat mirror too -- both VR screens crop to the GB frame, and a block at the window's edge would be cropped away with it",
|
|
"VR swapchains prefer plain RGBA8; a runtime that only offers sRGB shows slightly lifted colours",
|
|
},
|
|
},
|
|
credits = {
|
|
{ who = "pret/pokered", for_ = "the tile and sprite data the geometry is derived from" },
|
|
{ who = "The Khronos Group", for_ = "the OpenXR loader shipped unmodified in assets/vr (Apache-2.0; full license text alongside the DLL)" },
|
|
},
|
|
compat = { engine = ">=0.1.37 <2.0.0", modApi = 2 },
|
|
}
|