Search Unity

World Building EasyRoads3D v3 - the upcoming new road system

Discussion in 'Tools In Progress' started by raoul, Feb 19, 2014.

  1. gibmation

    gibmation

    Joined:
    Dec 1, 2014
    Posts:
    311
    Hi Raoul
    Could you also include Calculate Road Tangents in T connectors etc.

    Thanks
    G.
     
  2. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Gus,

    Tangents and lightmap UVs calculation for roads, dynamic crossings and side objects will be available in the upcoming next beta.

    Thanks,
    Raoul
     
  3. gray_wolf1

    gray_wolf1

    Joined:
    Feb 5, 2014
    Posts:
    1
    HI, does ER v3 (6.5 beta) have a naming convention of model parts for custom crossing ? im unable to increase road size.
    Im also unable to properly set what types of roads should extend from crossing. In this example oll roads should be road_material but i get one 2x2 lane road.
     

    Attached Files:

  4. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,080
    In easy road v2 I could use unity standard shader but in v3 it doesn't work!! why? please help I need to use unity standard shader.
     
  5. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi gray_wolf1,

    Custom crossings are crossings based on models imported in Unity. You can assign connections by selecting vertices. Currently you cannot assign road types to connections (like you can with dynamic crossings) and have the connection auto update to the selected road type, the connection width etc. Is that what you meant?

    One thing to add here is the option to create a new road type from the selected vertices and the selected material. Once this is done, the created road type is actually assigned to that crossing and you can customize these road types by auto activating specific side objects etc. In General Settings > Road Types. After creating a new connection by selecting vertices those road types that match the geometry structure of the selected vertices will be listed in a dropdown so you can actually assign a matching road type to the new connection.

    Currently you can assign the material to the new connection from the materials dropdown. Is that what you are doing and what is not working for you for that specific connection? You can update custom crossings (the material) by dragging the specific prefab from the assets folder (/Assets/EasyRoads3D/Resources/custom prefabs/) on the stage of the Custom Prefab Editor window.

    Thanks,
    Raoul
     
  6. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi ksam2,

    The final road network objects are ordinary game objects with a mesh renderer attached. Shaders are assigned to materials which are assigned to the Mesh Renderer. You can use any shader you want on the generated objects. What exactly doesn't work? What type of shader are you using?

    Thanks,
    Raoul
     
    ksam2 likes this.
  7. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,080
    When I use standard shader with a normal map on it road become black.
     
  8. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi ksam2,

    The same will happen when you use one of the EasyRoads3D bumped shaders in your current setup.

    Contrary to Unity 4, in Unity 5 objects are rendered in black when using a bumped shader while the mesh does not include tangent info. Please make sure to toggle on "Calculate Tangents" in the Build Settings before clicking the "Build Terrain" button.

    Thanks,
    Raoul
     
    hopeful and ksam2 like this.
  9. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,080
    Yes. you right... thank you...
     
  10. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Hi Raoul

    Time to time I get this error:

    Since this is not a common error and I get it only time to time, I can't get
    it debugged. Is this coming from two sequential vectors, which have a same position,
    or is it something, what could came from point heights? I remember, that I got this
    once, when the building wasn't at "zero level/ground -> start y vector was something
    about +2 - +3 over the terrain level... I have to find reason for that, that I can filter
    out situations what generates this error.

    There is the routine. I don't get this cathed even...

    Code (CSharp):
    1.  
    2. if (points.Length > 1)
    3. {
    4.      Vector3 pplast = Vector3.zero;
    5.      foreach (Vector3 pp in points)
    6.      {
    7.          if (pp != Vector3.zero)
    8.          {
    9.               if (pp != pplast)
    10.               {
    11.                    try
    12.                    {
    13.                         newroad.AddMarker(pp);
    14.                    }
    15.                    catch (System.Exception err)
    16.                    {
    17.                         Debug.Log("Exception catched: " + err);
    18.                         return;
    19.                    }
    20.                    pplast = pp;
    21.                }
    22.           }
    23.      }
    24. }
    25.  

    EDIT! More information and workaround!

    This error can be generated ONLY, when I dont set SetMarkerControlType to
    StraightXZ/XZY for _first_ marker. So, it is MUST for API roaders.

    Code (CSharp):
    1.        
    2. int counter = 0;
    3.         if (points.Length > 1)
    4.         {
    5.             Vector3 pplast = Vector3.zero;
    6.             foreach (Vector3 pp in points)
    7.             {
    8.                 if (pp != Vector3.zero)
    9.                 {
    10.                     if (pp != pplast)
    11.                     {
    12.                         try
    13.                         {
    14.                             newroad.AddMarker(pp);
    15.                         }
    16.                         catch (System.Exception err)
    17.                         {
    18.                             Debug.Log("Exception catched: " + err);
    19.                             return;
    20.                         }
    21.                         pplast = pp;
    22.                         if (counter==0) newroad.SetMarkerControlType(counter, ERMarkerControlType.StraightXZY); // enum types: Spline, StraightXZ, StraightXZY, Circular
    23.                         ++counter;
    24.                     }
    25.                 }
    26.             }
    27.         }
     
    Last edited: Jun 21, 2015
  11. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Jari,

    The "1" in the error message refers to the number of extracted spline points. When only one marker is added the spline function doesn't run. So it is likely this error is related to a road with markers all at the same position or at least within the Resolution distance set for the specific road. This will result in only one spline point. I will make sure to make this error/warning more descriptive.

    I doubt that you have to set the control type for the first marker to StraightXZ/XZY. I have done may API roads using the default Spline for the controller type on the first marker.

    Thanks,
    Raoul
     
  12. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi guys,

    Beta 6.6 is available and can be downloaded from the same link as before.

    Apart from miscellaneous small bug fixes and improvements, this beta includes:

    - terrain backup / restore options,

    - tangent calculation (for bumped shaders) and lightmap UV calculation for roads, dynamic crossings and side objects

    - the option to bend T Crossings which makes the shape more fluent/natural, see the below screenshots where the actual crossing mesh is rendered darker to clearly show the difference. This option is not entirely optimized yet, be careful with strong bends especially when using sidewalks. You can still use the previous static non bending T crossing type if you want.



    Please check the release notes for additional info.

    Thanks,
    Raoul
     
    hopeful likes this.
  13. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    roaderror1.png
    I have to disagree about that.

    When I get my new computer ready (have to install psp9 etc...), I will get a few screen captures
    from the editor. It seems, when first<->second markers distance is small enough and spline
    method selected, it generates an error. But wait a moment. I'm installing those softwares
    first.... (Had to buy a new computer for Kinect v1 + Kinect v2 animation purposes)

    EDIT: Picture added (Observe Give Path script's "Posses")
     
    Last edited: Jun 21, 2015
  14. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Disagree on what?

    If there is only one spline point there is nothing to draw. As long as the marker distance is bigger then the road Resolution setting there are two or more spline points.

    The message is not an error, it is just a console warning, it is not necessary to use StraightXZ/XZY as the controller type instead of the default Spline option unless perhaps you use a reasonably high road resolution settings and you want some sort of fluent visual auto generation of roads starting at a distance smaller then the road resolution setting (distance between two vertices) . Otherwise, If you want to generate roads through the API similar as the editor scene view functionality or if you want to create roads from code, using Spline on the first marker as the controller type will work just fine unless you use a bigger road resolution value then the marker distances. In that case the road shape defined by the markers is more detailed than the road resolution allows, you probably don't want that and therefor use a lower road resolution value which will solve the problem of perhaps only 1 spline point being available.

    Thanks,
    Raoul
     
    Last edited: Jun 21, 2015
  15. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Ok. THAT explains it! Thank you Raoul!

    Could you put a switch for "warnings" (in this case defined as errors for debugger/console).

    Those Debug.LogErrors are annoying when creating debug versions of game. ;)
    Also it fills a console time to time, while running in editor. It helps a lott to find other
    possible errors from console.
     
  16. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    If the number would not be 1 and this message is printed than it would be an error. I changed this so it is thrown as a warning with a more descriptive message when the number is 1.

    Unless you are doing some run time visual road generation and you use a bigger road resolution value, I just don't think this is likely to be raised given what I already wrote in previous comments.

    Thanks,
    Raoul
     
  17. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    That's ok.

    Hovewer. Since I can use straightxzy for the FIRST point, I don't get warnings
    anymore. And I don't lose nice spline curve either. (Other ones are splines).
    So, this is solved on my point of view.
     
  18. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Yes, that is what I meant. If I remember well you generate the roads visually at runtime with the road geometry updating depending on the mouse position. So when you just start building the road and the mouse is close to the first marker (within the road resolution distance, default 2m), this specific "error" is raised and the road becomes visual as soon as you reach your specific road resolution value. Is that right?

    So it depends on how you are using the API. Alternatively I can extend the spline point generation code to always add a second point regardless, the used spline controller, when there are two markers and the second marker is within the road resolution distance. But that will only be required for your specific scenario as in general marker distances will be bigger then the road resolution value.

    Thanks,
    Raoul
     
  19. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    works.png

    Just leave it as it is right now.

    One picture tells more than a thousand words...

    "PrevPositions" are player created waypoints with mouse. Posses shows ALL waypoints. Including path finder's points.

    If I wan't, I can filter out starting positions (made by path finder anyway) which are too close each other,
    that I can use spline definition from start, but naah.... it works now :)

    Could you recommend easy, free, working screen video capture software.
    I will need it soon, when creating example videos about waypointer. (And
    videos about my own game aswell)..
     
  20. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Yep. I confirm that.

    Another question. It seems, that there is not "calculate tangent"
    option for runtime roads yet? Quite blackish roads.

    And with this kind of roading system, create/delete at runtime,
    these roads aren't baked ever to terrain, if that counts something?
     
    Last edited: Jun 21, 2015
  21. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Jari

    The prevPositions in the picture indeed all seem to be near to each other. But that perhaps also has to do with your scaling because the road shape seems bigger?

    Once more than two markers have been added, the first two markers being closed to each other should not matter because spline points are always inserted at exactly the new marker position when going to the next marker segment. When there are two markers only, there is no next segment that’s why only one spline point exists when these two markers are very close.

    Anyway, glad to hear you got that working.

    I can't really suggest any free recorder sofwtare, here are some links that may be useful
    http://forum.unity3d.com/threads/best-free-screen-recorder-for-unity-games.101808/
    http://answers.unity3d.com/questions/14612/creating-a-video-from-unity.html
     
  22. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    There is no difference regarding this with the editor functionality, tangents are calculated when building the final road network and deforming the terrain. However, I will add functions to the API to set "Calculate Tangents" when building the final road network and I can also add a function to update the tangents info.

    I am not sure what you mean with this, roads are never baked to the terrain not at runtime through the API neither in the editor. the road network elements are separate mesh objects. Do you mean the terrain is not deformed according the road network? ERoadNetwork.BuildRoadNetwork() vs ERoadNetwork.RestoreRoadNetwork()

    Thanks,
    Raoul
     
  23. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Yes. Runtime roads are, since player have ability to delete buildings -> roads, when he doesn't need them anymore.
    Like in Settlers. (didn't I mention about settlers before :rolleyes:). That why I can't bake them totally to terrain. Yes, they are
    separate mesh objects and they should stay that way.

    I deform terrain only for static roads. I'm going to test deforming runtime roads also, BUT I have
    to come back with RestoreRN after terrain is deformed, since if I stay "Builded" mode, I can't
    build more roads on game.

    BUT. I found a solution for Dark roads. Since I don't need DX11, I just use DX9, when all
    colors/lightnings stays originals.

    EDIT: Picture added when ERoadNetwork.BuildRoadNetwork().... The left road is
    premade road. And the right one is runtimed.

    NODOWN_.png

    Damn! It deforms terrain to negative (from original) too. That is bad in this kind of
    situation, where the ocean level is near enough... (An extra boolean + minimum Y level setting for deformation to avoid that?)

    Yep. It deforms terrain, but when I'm coming back, I haven't a way to keep deformed terrain (like in Editor).

    Using BuildRoadNetwork twice without restoring, the terrain stays, but I think, it will generate
    some other problems, what I didn't tested now.

    EDIT2: Tested. Seems to work! :) Now only that "negative" behaviour should be selectable with limit value. We are sooooooooooo close :)
     
    Last edited: Jun 22, 2015
  24. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    A new problem.

    When I build a new road system with editor, I get a new RoadNetwork. Ok.

    IF I create on runtime more roads to that scene, the existing RoadNetwork must be
    selected from gameobjects list, that runtime uses that same RoadNetwork, EVEN, it
    creates a new one internally by ERRoadNetwork for_runtime = new ERRoadNetwork();

    So. The system will work as long as I'm on the editor and existing RoadNetwork object is
    selected (on runtime).

    However, and you will understand this at once. I need to get the existing and runtime
    networks married together, that runtime works. How to do it? Cant find object from:

    ERRoadNetwork for_runtime = GameObject.Find("RoadNetwork").GetComponent<ERModularBase>().xxxxxxxxx;
     
    Last edited: Jun 22, 2015
  25. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    The system currently only accepts one road network object in the hierarchy. When you already have a road network game object in the hierarchy, ERRoadNetwork for_runtime = new ERRoadNetwork(); should reference that exisiting road network.

    Simply try adding a road, it should be listed as a child in the already existing road network, not in a new road network game object.

    Thanks,
    Raoul
     
    Marco-Sperling likes this.
  26. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Yes. It goes to there. But the road itself is invisible, if the game object isn't selected from folder.
    IF I select road network gameobject and start a road again, then it is visible.

    Hedeache....

    believe.png or_not.png
    believe.png or_not.png

    Odd... Materials ok, initializings ok. Runtime road work as it should be immediatelly, if I remove roadnetwork made by editor...

    AND!

    If I first select roadnetwork object -> making a runtime road -> deleting it -> deselecting roadnetwork object -> Creating a new runtime roads. -> Now everything works just fine, as it should be.


    EDIT:

    If I don't click roadnetwork object first: Road mesh 0 vertices / 0 tris, road material seems to be default road from editor. As well as texture. (2-line road with plain ERD3/diffuse).
     
    Last edited: Jun 22, 2015
  27. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    This is not related to your initial "problem" of merging Road Networks. I feel that bringing this up as a reason makes everything unnecessary confusing.

    The reason why the road is not build is because you are creating the road through code through the API inside the unity editor which currently requires the beta protection to be activated. By selecting the Road Network first all is initialized correctly. You currently have to do this after each code change or after playing the scene when you use the scripting API inside the editor (not at runtime/play mode).

    As you mentioned, this should work just fine at runtime (or play mode) whether the road network is selected or not because the API is primarily intended for runtime road creation.

    Thanks,
    Raoul
     
  28. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    .................................................... conclusion.

    Easiest way.

    -> Creating roads by editor.
    -> Exporting them to file (to my own road structure, what I use when loading/saving games)
    ....
    ....
    -> Starting game (visible loading counter starts to run....)
    -> Loading roads, which includes those editor maded too
    -> Terrain deformation, if needed.
    -> Loading other things.
    -> back to the initialized game...

    Yep. I have to write a few lines a code for saving purposes....
    I don't find another way, but I can live with this :)
     
  29. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hello Jari,

    The way you write this comes across as if there is a limitation in the current scripting API functionality. Regarding the conclusion, what exactly do you want to achieve (sorry but what is above in previous posts seems to be all possible or I misunderstood something) and what is the limitation?

    I am only asking this to make things work better, and to clearify what is being discussed in the last 10 posts or so with regard to the conclusion.

    Thanks,
    Raoul
     
    Last edited: Jun 22, 2015
  30. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    This is a note regarding beta 6.6, there is an issue with custom crossings, most connections will not work well.

    This will be fixed an update will follow soon. If you have not updated yet, please skip the current 6.6 beta.

    Thanks,
    Raoul
     
    Last edited: Jun 22, 2015
  31. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    The limitation is that you can not use editor made road and runtime road together on game. Example:

    1) You made a game scene, where you put a "main roads" with ER3-Editor.
    2) The player starts to fill game scene with buildings, and those buildings needs "side-roads".

    This is not possible with current version with Stand Alone/Web/Whatever compiled game.
    Just can't add a roads to scene outside of editor (without focusing to ER3 editor made roadnetwork).

    You did take this too personally! Yep, when I'm middle on code jungle (where I'm was with this almost 30 hours continuously. I just woke, after 2 hour sleep and continuing with this.) I wrote my thoughts quite usually as public. Not to judgeing anyone more than usually :D. Please, don't take this so seriously :rolleyes:

    As I wrote. I have a workaround for this. I can create my game scenes one by one and extract those roads to my own format (with waypoints etc.) and use them directly when game starts to load levels. Then I can keep them all inside my runtime created roadnetwork object and I can edit (...player can edit) roads as I want, when playing the game.
     
    Last edited: Jun 22, 2015
  32. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Jari,

    I am not taking this personal at all, but I am taking EasyRoads3D seriously and it seemed something was not working well for you :)

    Above there is a lot of comments but until your last post the problem was not entirely clear to me, my apologies for that. When rereading everything it now does make sense.

    I just tested standalone builds, whereas building a road network from scratch at runtime works just fine this beta activation check is not entirely working on an already created road network in the Unity editor that is why roads created through the API and added to that exisiting road network at runtime are not visible. I will fix that!

    Thanks,
    Raoul
     
    hopeful and JOKaija like this.
  33. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Thank's. It helps A LOTT!
     
  34. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Started to draw main roads, since I need them at this point urgently.

    I hope, the coming fix will work with these 6.6ß premade ones?
     
  35. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    While roading this first level, an one thing came my mind.

    How about cable bridges. I have one of them on level2 and
    more later on. Right now it is made with spring joints, so it "lives",
    when NPC walks over it.

    Now, when I started to use roads for soldiers & carriers, I would
    like to use ER3 road for rope/cable-bridges too to get full
    dynamic path over the gulleys.

    But. This need a little more for runtime API. Right now I can
    move markers up/down, but I think it requires:

    SetSplinePointLeftPos(id, posvec);
    SetSplinePointRightPos(id, posvec);

    id = SplinePoint number;
    posvec = Vector3;

    If I understood correctly, those points are also triangles corners on
    road mesh. So, I can get fully waving effect with these, when I "clue"
    those triangle corners to bridge elements. With this system, the road
    can also work as a rubber, when bridge stretches under weight.
     
  36. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735

    I am not sure what you mean with that, especially the last part?

    Do you mean you hope the runtime fix will be part of the fix I mentioned a couple of posts further above?

    The fix I mentioned has the highest priority, an update will follow when that is done. After that I will check the runtime API error with already created road networks and send a fix directly to you.

    Thanks,
    Raoul
     
  37. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Do you mean you want to create your own additional side object type?

    In that case, GetSplinePointsRightSide() and GetSplinePointsLeftSide returns the relevant poinst at both sides of the road. All you need is to find the matching spline point index for the start and end of the bridge? Is that right?

    The returned spline points are not triangle corners, changing them will not update the road if that is what you meant. So the strectching affect is a bit more complicated.

    Thanks,
    Raoul
     
  38. JOKaija

    JOKaija

    Joined:
    Feb 8, 2015
    Posts:
    161
    Nonononono.... SET not GET. But if that mesh are not modifiable by moving triangle corners, then
    I have to forget it.

    Idea was:

    You have a rope bridge. It waves, stretches (by physics) when NPC walks, or CAR drives over it.

    If the road could be glued to that bridge, then it still works as waypointpath, if using my waypointer.
     
  39. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Maybe this could work through the custom connections system with some adjustments from your end?

    Probably not at this moment but as soon as some changes are implemented which will extend the options. I am about to start on those changes anyway.

    Thanks,
    Raoul
     
  40. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735

    Beta Update 6.6.1:


    The problem with connecting roads to Custom Crossings, mentioned earlier today, in the recent 6.6 beta update should be fixed now.

    It is recommended to download beta 6.6.1 using the same download link as before.

    Thanks,
    Raoul
     
  41. Besus

    Besus

    Joined:
    Mar 9, 2014
    Posts:
    226
    Got a minor bug here to report in 6.6.1 when linking roads to a T-intersection (the standard one). Upon hooking up a side (it seems random), you get the following:

    upload_2015-6-23_9-48-44.png

    It can be resolved just by unhooked any of the sides and then reattaching it but just wanted to make you aware of this. :)
     
    gibmation likes this.
  42. woyehua

    woyehua

    Joined:
    Jun 10, 2013
    Posts:
    7
    I have already set up raise road network value, why terrain will cover the road?

    question.png
     
  43. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Besus,

    I tried to reproduce this:

    1. added a T crossing, toggle of the sidewalks like in your screenshot
    2. pull out road from connections and also connect exisiting roads to the connections

    It seems to work fine, also attaching a T crossing directly to the selected marker works fine.

    I know you mention that this happens randomly, but could you please let me know if you have more info on how to reproduce this?

    Thanks,
    Raoul
     
  44. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi woyehua,

    The parts that seem to be below the terrain are not clearly visibly but the road is reasonably curved at that point. What are your terrain specs, terrain size and heightmap resolution?

    Also, it is not clearly visible but is the area at the lowest point also the lowest point of the terrain matching the terrains Y position? In that case, it is impossible to apply negative height values to the terrain, you cannot push it downwards below the corresponding game objects Y position. So if the road at that point is actually lower, the terrain will be rendered on top of the road. In general always make sure the road is above the terrains Y value, when this is not the case you will see red spheres in Scene View highlighting these critical areas.

    And which beta are you using? In previous betas the raise option didn't fully work, this should work just fine in the latest 6.6.1 beta.

    And are you using the default EasyRoads3D shaders? Especially further away from the cam when the Terrains LOD system kicks in, the road can disappear below the terrain in areas with height differences that are more affected by the LOD levels. Is the road still below the terrain when you zoom in to that area? The EasyRoads3D shaders use an offset to deal better with this. The offset values can be raised.

    But first it is a matter of knowing what exactly causes this!

    Thanks,
    Raoul
     
  45. gibmation

    gibmation

    Joined:
    Dec 1, 2014
    Posts:
    311
    Raoul, I can confirm I also had this happen.

    I added 3 new T connectors to my scene.

    I then moved markers (from existing roads) to connect to this one and on all 3 occasions I got the same problem reported. So it is not that random.

    As Besus says, disconnecting and reconnecting markers resolves the issue.

    G.
     
  46. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Gus,

    It sounds like you were able to reproduce this.

    I tried several things, adding X crossings to the scene, connect roads then add 3 T crossings and connected the road to the T crossings. But no luck so far, I tested this both by pulling out new roads from the X crossing connections and by adding roads directly to the scene. And also tested this with sidewalks enabled and sidewalks diabled.

    It must be a specific combination of actions that results in this.

    What type of crossings are these roads connected to? Does this always happen when sidewalks are disabled like in the screenshot Besus posted? Does this happen after connecting the first, the second or 3rd road? Or after connecting the roads to the 3 available connections in a specific order? Or is this related to a specific sequence of connections? For example X Crossing > t Crossing > T crossing? And does this indeed happen on the specific T Crossing a road was connected or another T crossing that previously did look good?

    Thanks,
    Raoul
     
  47. Meceka

    Meceka

    Joined:
    Dec 23, 2013
    Posts:
    423
    Hello Raoul, it happens to me when I change a "road material" of an already connected dynamic crossroad that has Uniform-Opposite connections.
     
  48. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    Hi Meceka,

    Do you mean after selecting the crossing (on the other side of a road connected to the specific T Crossing) in the hierarchy and in the Inspector: Connection Settings > Road Material?

    This option is particularly useful when preparing new dynamic crossings specific to your project. You can assign road types and/ or road materials to the specific connection. This info will be assigned to roads attached to this connection in a later stage.

    But once a road is connected, changing the road material should have no affect unless you disconnect and reconnect the road and this road is not already connected to a crossing on the other end.

    For me indeed changing the road material has no affect, the connected road is not updated and the T crossing still looks as it should.

    Is this what you meant?

    Also, in general for those who have seen this happen, could you double check the most right tab in the Inspector, does it indeed display 6.6.1 as the currently imported beta?

    Thanks,
    Raoul
     
  49. Meceka

    Meceka

    Joined:
    Dec 23, 2013
    Posts:
    423
    It says 6.6.1 to me. It was 6.5 and I imported new package on top without deleting anything, is it normal update procedure?

    You can test if it's glitched caused by update. Import 6.5, import 6.6.1 afterwards, see if you can reproduce it then. If so we may need to delete some files before reimport.

    After upgrading to unity 5, I am having lot's of issues after package imports, I think there are lot's of bugs about upgrading files to new verison on package import. It may be the cause.
     
  50. raoul

    raoul

    Joined:
    Jul 14, 2007
    Posts:
    6,735
    I was asking this more to cancel out possible import issues. In the past I have seen for example dll's actually not being deleted (after deleting a folder containing these dll's) when monodevelop is open. Perhaps something similar can happen with package updates?

    If it says 6.6.1 then it is unlikely an issue related to a package upgrade, especially when this happens with crossings added to the scene after the package update.

    The Unity 5 update does work slightly different compared to previous Unity updates, certainly when dll's are involved. Regarding EasyRoads3D, when you upgrade a Unity 4 project to Unity 5 always make sure to reimport the Unity 5 package also regarding v2, even if you are using the latest version.

    So far I have not been able to reproduce this T crossing issue. If anyone does find a way to reproduce it, detailed steps or ideally an example project would be very much appreciated. Meanwhile I will continue looking into this.

    Thanks,
    Raoul