Search Unity

Games [Early Access] LOCO — Model Railway Simulator

Discussion in 'Works In Progress - Archive' started by dog_funtom, Apr 8, 2020.

  1. dog_funtom

    dog_funtom

    Joined:
    Nov 16, 2013
    Posts:
    9
    Early access on steam.



    How it was/is developed:
    • Architecture maintainability owing to Extenject and UniRx.
    • Mesh bending loosely based on SplineMesh.
    • Custom train physics built from scratch.
    • Blender 2.8 and GIMP 2.10 for technical artistry (tweaking visible assets to make them more technically compatible with Unity and the game).
    • UI logic is orchestrated by Real-Serious-Games' Fluent-State-Machine.
    • Persistence (aka saving/loading) is through MessagePack and ULID.
    Early access on Steam.
     
  2. dog_funtom

    dog_funtom

    Joined:
    Nov 16, 2013
    Posts:
    9
    Trouble: Player crashes (almost) immediately with these errors in crash log:

    WARNING: Shader Unsupported: 'Hidden/Nature/Terrain/Utilities' - All passes removed
    WARNING: Shader Did you use #pragma only_renderers and omit this platform?
    ERROR: Shader Hidden/Nature/Terrain/Utilities shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
    d3d11: failed to create buffer (target 0x1 mode 0 size 28595960) [0x8007000E]

    Shooting: Delete the build and build again.
     
  3. dog_funtom

    dog_funtom

    Joined:
    Nov 16, 2013
    Posts:
    9
    Trouble: ScrollRect returns to zero position in Elastic but works as expected in Unclamped.
    Shooting: Add Content Size Fitter to your Content (the single child that contains many items). If you have Layout on it, there will be warning, ignore it.
     
  4. dog_funtom

    dog_funtom

    Joined:
    Nov 16, 2013
    Posts:
    9
    Didn't write for almost a year, and sorta still have nothing to write about. Instead, I'll tell you why exactly there's not much to write about.
    There are multiple things we tried to some success but didn't have time to develop them further. Thus, I don't want to write about them. (Because the internet is already too full of writing about stuff prematurely.)

    Input System
    Converted some input to the new Input System. I would like to use it more before writing about it much but for now my conclusion is:
    Input System has multiple layers of abstraction open for use. If you want to gradually swap old Inputs for the new Input System, use the least abstraction feasible because it's less opinionated and thus easier to integrate into already existing project.

    Runtime terrain editing
    Again, I want to use it more first before writing about it much, but for now:
    Some Terrain API resides in the
    UnityEngine
    namespace rather than in the
    UnityEditor
    . It means you're free to use in runtime. For example, you can take 2D array of heights and modify it as you wish.
    Furthermore, for a more polished editing, you can use TerrainPainUtility for editing terrain on GPU.

    UIElements
    Tried them for internal utilities, didn't like them.

    Vectrocity
    Quite useful for drawing debug lines in runtime. Also, used it to draw a line from a Throttle slider to the current locomotive, and from the Next button to the next locomotive. Probably will use it more in the future... maybe for previews during layout editing (laying the railroad).