Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
70 lines
3.9 KiB
Markdown
70 lines
3.9 KiB
Markdown
# Solid atlas asset
|
|
|
|
`ERR_Atlas.blend` is the editable, locally authored model, generated by
|
|
`tools/build_atlas_model.py`. No third-party geometry is copied. Runtime/import
|
|
files and four materials live in `addons/core/Assets/Items/ERR_Atlas/`.
|
|
|
|
The replacement has a 10 mm page block, separate covers, visible page-edge seams
|
|
and a continuous 14-turn wire helix. These are mesh surfaces with real depth and
|
|
silhouettes, not UI circles. The stock character map grip is retained; the rigid
|
|
mesh is offset 15 mm right and 18 mm forward to fit that grip. The runtime map
|
|
texture is assigned only to the front printable sheet. Its UVs account for the
|
|
render target's vertical orientation and retain the existing layout gutter.
|
|
|
|
Rebuild from the repository root:
|
|
|
|
```sh
|
|
/home/jakub/devel/gabreta/build/toolchain/blender-4.5.3-linux-x64/blender \
|
|
--background --threads 2 --python tools/build_atlas_model.py
|
|
```
|
|
|
|
Then run the Workbench **Build atlas model** plugin, or rebuild
|
|
`Assets/Items/ERR_Atlas/ERR_Atlas.fbx` in Resource Manager. The existing XOB meta
|
|
file holds material assignments and collision settings. The `.blend` is outside
|
|
the addon; the source bundle includes the authored FBX/TXO and imported XOB.
|
|
The procedural model rebuild does not overwrite material or import settings.
|
|
|
|
## Page-turn animation
|
|
|
|
`AtlasTurn.agr`/`.agf` wrap the stock map holding graph. The attachment must
|
|
explicitly start at `ERRAtlasControl`; merely setting the AGR default does not
|
|
change the attachment's entry point. The right arm uses the engine's two-bone IK
|
|
solver with a target relative to `LeftHandProp`, preserving the existing left
|
|
hand grip, aiming, stance and idle poses. The target reaches, sweeps across the
|
|
paper and returns through native state-machine blends. Forward turns use command
|
|
argument 1; backward turns use 2 and reverse the hand path and sheet rotation.
|
|
Direction compares the previous and new printed page numbers, including cover,
|
|
index and numpad jumps. It does not depend on the delayed rendered page.
|
|
|
|
The native item-use command `CMD_HealSelf` is reinterpreted only inside this
|
|
atlas attachment. The atlas has no consumable component or healing effect.
|
|
`TryUseItemOverrideParams` manages the character action instead of writing
|
|
character bones or moving the whole held item. An item use rejected by the
|
|
engine falls back to changing the selected page without a forced character pose.
|
|
|
|
`ERR_AtlasLeaf.blend` is a separate, lightly curved sheet. Its local visual entity
|
|
has no replication, physics or collision component. A page update creates one
|
|
near the viewer, turns it about the binding, commits the new page after crossing,
|
|
and removes the sheet and timer. The shallow sweep avoids the first-person near
|
|
plane. No turn ticks run when idle or on a dedicated server. Stowing, opening the
|
|
interactive map, death and deletion clean up the temporary sheet. Late joiners
|
|
see the current page without replaying old turns.
|
|
|
|
Rebuild both `ERR_Atlas.fbx` and `ERR_AtlasLeaf.fbx` after changing their generator.
|
|
The native imported meshes and exact graph assets are admitted by the source
|
|
bundle validator; editable Blender files remain outside the addon.
|
|
|
|
Bohemia references: [attachment setup](https://community.bistudio.com/wiki/Arma_Reforger:Weapon_Components),
|
|
[state-machine timing](https://community.bistudio.com/wiki/Arma_Reforger:Animation_Editor:_State_Machine).
|
|
|
|
## Validation limits
|
|
|
|
Hidden, muted native Everon fixture: model import, standing held grip, correct
|
|
print orientation, page controls, capture ownership and ordinary-map coexistence.
|
|
The fixture also captures an oblique view to inspect binding and thickness.
|
|
The native hand-turn run verifies five repeated actions, actual hand positions,
|
|
return to idle and leaf cleanup; see
|
|
`docs/evidence/held-atlas-hand-turn-20261011/`.
|
|
This is not a dedicated-server/remote-holder or all-stance visual acceptance.
|
|
Nothing is deployed or published by the model builder.
|