Ruth2 v4 HUD Assembly Instructions - RuthAndRoth/Ruth2 GitHub Wiki

  1. Gather the resources needed

    • Collada (.dae) files from Ruth2/Mesh/Ruth2_v4/HUD
    • Textures from Ruth2/Textures/HUD
  2. Upload each mesh with the following settings in the mesh uploader:

    • For Second Life use Firestorm 6.3.9 (or later) for Second Life only which includes the Havok physics libraries to get reliable mesh upload. Firestorm 6.3.9 includes an updated mesh uploader by Beq Janus.
    • For OpenSimulator use Firestorm 6.3.9 (or later) for OpenSimulator. Firestorm 6.3.9 includes an updated mesh uploader by Beq Janus.
    • Make sure the object name of the uploaded mesh name is appropriate. It usually is set by default in the mesh uploader to the name for the part that is used in Blender. But, for example, the two eyes when uploaded may be named for one eye. Rename such an uploaded object appropriately.
    • Options: Scale 1.0, Do not include textures, include skin weight, do not include joint positions, leave Z offset at zero.
    • Do NOT use generate Normals, Analyze or any of the other mesh uploader tools.
    • Hit "Calculate Weights and Fee" and when that finishes "Upload".
  3. After upload immediately use the object description to set each mesh part's upload date using the format yyyy-mm-dd (e.g. 2020-08-03 for 3rd August 2020) to be non-ambiguous internationally.

  4. Prepare the HUD maker script.

    • Create a new script and add the contents of https://github.com/RuthAndRoth/Ruth2/blob/master/Scripts/r2_hud_maker.lsl. Around line 140 are a series of texture UUIDs that need to be set. A small number of worlds are pre-populated (Second Life, OSGrid), near the bottom is a section currently set to TEXTURE_BLANK. If you are building in a world where the textures are not already uploaded set the UUIDs for the textures here.
    • Also there is a function call to osGetGridName() around line 113 that may need to be commented out if your world does not support OpenSim functions (like Second Life).
  5. Prepare the HUD base

    • Create a new empty box prim named 'Object'
    • Take a copy of the new box into inventory and leave the original on the ground
    • Rename the box on the ground "HUD maker"
    • Copy the following objects into the inventory of the HUD maker:
      • the new Object created above from inventory
      • the button meshes: '4x1_outline_button', '5x1-s_button' and '6x1_button'
      • the copy of r2_hud_maker.lsl script prepared above
    • Take a copy of the HUD maker box into inventory because trying again is much simpler from a fresh copy than un-doing what the script is about to do
  6. Light fuse and get away (touch the HUD maker prim), the new HUD will be assembled around it and it will become the root prim of the HUD.

  7. Remove this script and the other objects from the HUD root prim

  8. Copy in the HUD scripts r2_applier.lsl and ru2_hud_control.lsl (from https://github.com/RuthAndRoth/Ruth2/tree/master/Scripts ], and a HUD !CONFIG notecard (from https://github.com/RuthAndRoth/Ruth2/tree/master/Documentation/Config ].

  9. Take the completed HUD into inventory.

  10. Attach the HUD to one of the HUD attach points, upper left is the usual location.