How to add navigation screen to mesh?

Discussion in 'Content Creation' started by Jaysonp1pro, Sep 14, 2021.

  1. Jaysonp1pro

    Jaysonp1pro
    Expand Collapse

    Joined:
    Sep 15, 2019
    Messages:
    9
    I want to add a navigation screen to a custom dashboard that I made, like the ETK 800 Or Vivace. I've already made the dashboard, but I need help for applying the nav screen texture. I don't really know what I'm doing as I'm fairly new to modding. Any help is highly appreciated
     
  2. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,062
    You need several things I think:
    1. A reference to an ETK 800 gauges controller in your car's body Jbeam:
      Code:
      "controller": [
              ["fileName"],
              ["etkGauges", {"materialName": "@etk800_gauges_screen", "htmlPath": "local://local/vehicles/etk800/gauges_screen/gauges_screen.html"}],
          ],
    2. A flexbody with a material named etk800_screen where the GPS would be, with a deformgroup, like this:
      Code:
      {"deformGroup":"display_break", "deformMaterialBase":"etk800_screen", "deformMaterialDamaged":"etk800_gauges_break"},
              ["etk800_screen", ["etk800_dash"]],
              {"deformGroup":""},
    3. A definition in main.materials.json:
      Code:
      "etk800_screen" : {
          "name" : "etk800_screen",
          "class" : "Material",
          "persistentId" : "ed4c0c35-2305-4f49-9813-b2f4e088359b",
          "Stages" : [
            {
              "colorMap" : "@etk800_screen",
              "emissive" : true,
              "specularMap" : "vehicles/common/null.dds",
              "specularPower" : 32,
              "useAnisotropic" : true
            },
            {},
            {},
            {}
          ],
          "alphaRef" : 0,
          "mapTo" : "etk800_screen",
          "materialTag0" : "beamng",
          "materialTag1" : "vehicle",
          "translucentBlendOp" : "None"
        },
      
    4. If you want the screen to break on crash, add this deformgroup to the interior beams:
      Code:
      {"deformGroup":"display_break","deformationTriggerRatio":0.05},
      And then you also need a new material:
      Code:
      "etk800_gauges_break" : {
          "name" : "etk800_gauges_break",
          "mapTo" : "etk800_gauges_break",
          "class" : "material",
          "Stages" : [
            {
              "diffuseColor" : [ 0, 0, 0, 1 ],
              "specular" : [ 0.5, 0.5, 0.5, 1 ],
              "specularPower" : 128
            },
            {},
            {},
            {}
          ],
          "translucentBlendOp" : "None"
        },
      
    That's probably all unless I missed something. Do not change the name etk800 in these to anything else because that's defined in the LUA controller. It's a common controller so you don't have to copy any LUA from the ETK 800 files.
     
    #2 Agent_Y, Sep 14, 2021
    Last edited: Sep 14, 2021
    • Like Like x 1
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice