Blink includes code adapted from dishonored-bevy by Eamon (https://github.com/Eamo5/dishonored-bevy),
used with the author's permission:
- crates/ue3_shader/src/{sm3,shadercache,ue3prog}.rs (D3D9 SM3 bytecode to WGSL, shader cache reader, program assembly; from crates/dhcook/src)
- crates/dishonored_runtime/src/warmup.rs (shader / pipeline warm-up; from game/src/warmup.rs)
- crates/dishonored_runtime/src/ue3mat.rs and ue3_prepass.wgsl (materials rendered with their original shaders; from game/src/ue3mat.rs, game/src/ue3_prepass.wgsl)
- crates/dishonored_runtime/src/ue3_level.rs (building a level's original-shader materials, instance buffer, light-map page arrays and dynamic light passes; from game/src/level.rs, game/src/lightmap.rs)
- crates/dishonored_runtime/src/ppgraph.rs (the post-process graph: vector fields, motion blur node, node grades; from game/src/ppgraph.rs, game/src/postfx.rs uber_fields)
- crates/dishonored_assets/src/shaders.rs (loading the shader library; from crates/dhcook/src/lib.rs shader_library / cook_shader_library)
- crates/dishonored_assets/src/post_materials.rs (the post-process graph's materials, curves and grading nodes; from crates/dhcook/src/lib.rs POST_MATERIALS / mitv_curves, crates/dhcook/src/gamedata.rs post_nodes)
- crates/dishonored_assets/src/level.rs Importer::ue3_material and crates/dishonored_ir Ue3Material / PostCurve (linking a material to its shader map; from crates/dhcook/src/lib.rs ue3_material, crates/dhcook/src/format.rs)
- crates/dishonored_runtime/src/present_rules.rs dispatch_events / spawn_at / Particle::normal and the decal quad of effects.rs build_mesh (decal particles placed by generator events, lying on the struck surface; from game/src/particles.rs)
- crates/dishonored_runtime/src/gfx_hud.rs `update_task_markers` focus rule and distance text, the tutorial window triggers; crates/dishonored_runtime/src/hud_popups.rs `ASLEEP_CROSSHAIR_TEXT` / `focused_sleeper`; crates/dishonored_multiplayer/src/kismet_host.rs chapter-log tutorial window (logic and data adapted from game/src/markers.rs, interact.rs, campaign.rs, crosshair.rs; the widgets are decoded from the original movies)
- crates/dishonored_sim/src/interactables.rs, crates/dishonored_assets/src/interactables.rs, crates/dishonored_runtime/src/tripwires.rs (the hold-to-peek flow, the keyhole socket through the mesh bind pose and the drawn tripwire; adapted from game/src/keyhole.rs, game/src/traps.rs, crates/dhcook/src/lib.rs keyhole_socket; hold time, view limits and trip rules replaced by the decoded ones)
- crates/dishonored_sim/src/launchers.rs, crates/dishonored_assets/src/interactables.rs (launcher placement) (the launcher's flow: fired by the level's sequence, the shot sweeping through the characters in its way and then the world, the player disarming it for ammunition; adapted from game/src/traps.rs launch / fly_darts / disarm_focus; the ballistic aim arc, fire delay, view cone and constants replaced by the decoded rules)
- tools/mission/src/main.rs ini_missions (the campaign missions from DefaultGame.ini m_MissionsGame; from crates/dhcook/src/gamedata.rs missions_ini)
