Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

[Published] Spline plus- Spline mesh deform

Discussion in 'Assets and Asset Store' started by elseforty, May 21, 2018.

  1. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    hello,
    i have recently submitted a new version of spline plus and spline mesh deform for review, they will get approved this week if everything went well,
    i have made some great improvement based on users experience, i fixed all the issue reported and tried my best to improve the overall experience,

    this is a list of all what's new in spline plus:

    -Switch to 2D mode will now set spline plus followers settings automatically instead of doing that manually

    -Bug fixed for pivot editing when rotation is applied,

    -2D demo scene added
    -Speed and normals have now a scene view input field aligned with the sliders,

    -Tooltips added for the important buttons

    - New project folders rearrangement


    PS: if you already have a spline made with an old version of spline plus in your project , you will notice that all its path points speed is set 0 "Red color" , the reason is because now the speed is between 0&100 instead of 0&1 , the solution is to change the speed of each path point manually using the speed slider in your scene view "sorry for this"
     
  2. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Same thing for Spline mesh deform
    all the new additions and fixes listed above are added to the spline plus version of spline mesh deform
    and here is a list of the new additions and fixes in spline mesh deform

    -Normals handling enhancement in Mesh deform, Extrude,tube mesh
    -Weird looking mesh normals issue bug fixed in Mesh Deform,
    -Mesh deform generated mesh offset from spline bug fixed ,
    -Material issue when hiding mesh layer bug fixed in mesh deform
    -Two sided mesh turns to black bug fixed in tube mesh and extrude
    -Pivot editing causing generated mesh offset bug fixed
     
  3. littlesteve

    littlesteve

    Joined:
    Sep 1, 2013
    Posts:
    6
    Hi, sorry to ask what is probably a very basic question, but I just can't seem to see the answer in your videos. I'm trying (and failing) to make a simple game where the user flicks a switch (on the UI) and the car changes branch at the next junction. I just can't understand how to use the Unity UI to interact with the spline+ software.
     
  4. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi Steve,
    provide me some screen shots of your project so i can have a better idea about what is going on, you can post them here or send them to my email , whatever you desire ,

    email elseforty@gmail.com
     
  5. littlesteve

    littlesteve

    Joined:
    Sep 1, 2013
    Posts:
    6
    Hi,

    I've sent you an email to try and explain in more detail.

    Thanks

    Steve
     
  6. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi everyone,
    Spline plus and Spline mesh deform are growing exponentially, this push me to invest more time into this , so as requested by many users, finally i've managed to add a Spline Path Finding system ,
    this will be available in the next update,
    here is an animated gif showcasing this new feature,
    all you have to do is provide the start shared path point and goal shared path point and spline plus will give you the shortest path back if found,


    some UI screenshots


     
    Last edited: Feb 27, 2019
  7. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    146
    Any idea when you will be releasing the pathfinding update? I am interested in your asset, specifically the pathfinding feature. Also, would it be possible to pathfind to a specific spot along the spline instead of to the points? One way splines that can only be traversed in a specific direction?

    Thanks
     
    Last edited: Apr 11, 2019
  8. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @b1gry4n probably it's going to be ready next week but it depends on how much time the asset store team is going to take to process it, i'm aiming to release this in a new package dedicated only to spline path finding,
    the package will contain both spline plus and spline path finding,

    now for the features ,
    -it supports agent game objects and goal game objects instead of simple path points
    -path finding is calculated in real time, this means that if the goal game object has changed position then a new path finding calculation is going to be triggered
    -one spline plus object can have multiple path finding objects each path finding object can have one goal gameobject and multiple agent gameobjects
    -the path finding calculation is taking path tangents into consideration
    -use of unity Reorderable list

    here is a simple video for spline path finding
     
  9. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    146
    @elseforty ah great. My main use case for something like this (or at least I want to attempt) is traffic simulation + gps. Im wondering if you see this asset as something I could use for traffic lanes. I dont expect it to handle lane switching, stopping at lights, etc as thats something I can implement, but more about the pathfinding being able to distinguish one way paths rather than each path being able to go both directions. If it isnt implemented, maybe you have an idea about how I could implement it myself.
     
  10. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    I'm not really sure about what you mean by " distinguish one way path rather than each path being able to go both directions "
    Do you mean what's in this video at 00:32
    In case this is exactly what you need then you will not need any path finding package, the spline plus package can achieve that

     
  11. GrimReaperZA

    GrimReaperZA

    Joined:
    Jun 5, 2013
    Posts:
    2
    Hi @elseforty

    I am currently interested in your asset. I am currently creating a Grand Prix type game, similar to Motorsport Manager race gameplay. I have built using a basic bezier curve and achieved a somewhat feel to the race.

    I have looked at your asset for creating multiple branched racing lines, multiple track layouts and branched pit stops, etc. I have a few questions:

    1) Are you able to create offsets for each individual car, as to not create a train look while all cars follow the same path (racing line)?
    2) Is overtaking achievable, as to ensure cars do not overlap the models on top of each other ( I am able to do the logic that determines if overtaking is needed, however I need to ensure that offsets can provide the visuals I need)?

    Regards
    Grim
     
  12. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @GrimReaperZA hi ,
    yes you can offset and rotate each follower separately , this woks fine until the spline is heavily curved , then you will get some artifacts which gets more visible as you offset away from the spline vertices
    unfortunately overtaking is not a feature of spline plus , i'm afraid you have to do that by yourself in case you want to use spline plus,
    regards,
     
  13. GrimReaperZA

    GrimReaperZA

    Joined:
    Jun 5, 2013
    Posts:
    2
    Thanks for the info.

    Another question, are speeds constant throughout the splines especially on curves?
     
  14. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Each path point has it's own speed value , so you have full control over speed , you can see this on The demo of spline mesh deform i posted above
     
  15. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi everyone,
    it has been a while since i added a new spline plus update and eventually a new spline mesh deform update too
    i have been working to make it more perfect based on users feedback, here is a list of all the new features and fixes that i have added to spline plus

    -Use of Reorderable list for events and followers
    -Events can now be named
    -Spline plus object can now handle multiple trains followers
    -Branch picking algorithm enhanced
    -Follower settings can now be found in a unity window instead of the inspector, this means Inspector is now less busy,
    -"System.Type to Type" bug fixed
    -Better free path points management
    -More optimization achieved



     
  16. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    146

    That is kind of what I mean, except that same setup with the pathfinding aspect. A car anywhere on that track being able to pathfind to a point somewhere else while obeying the lane directions.
     
  17. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @b1gry4n i see now, well that is a bit complicated, the spline path finding package i have takes spline tangents into consideration , which is half of the problem solved. the issue is that the calculation to find the shortest path to a goal is conducted from both branch forks the agent is initially on , the result found can affect the follower direction,which will break your rule
    the solution is to calculate only in the forward direction of the agent, this way the result will never affect the agent direction, it will always be facing forward
    anyway Spline path finding is still not in the asset store yet, probably i'll publish it this week or the week after if everything went well,
    Regards
     
  18. b1gry4n

    b1gry4n

    Joined:
    Sep 11, 2013
    Posts:
    146
    @elseforty What about if I have the data to create the splines in place already, their connecting paths, intersections, length, as well as the lane direction? Would I be able to modify/extend your pathfinding to fit my system? Source included?
     
  19. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @b1gry4n yes all source code is included, technically you can use the spline pathfinding source code and adapt it to your spline system, but finally it's all up to your programming skills,
     
  20. NimlokDigital

    NimlokDigital

    Joined:
    Jul 9, 2017
    Posts:
    7
    @elseforty I apologise if this has been covered already, but I haven't been able to find the answer to my particular question.

    I have a special case where I need to animate the spline path points (or vertices I guess) using the unity animation system. I have tried other spline systems and the path points are not exposed to Unity's animation system and are therefore not possible to animate. Is this possible with this asset?
     
    Last edited: May 23, 2019
  21. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @NimlokDigital in Spline plus and Spline mesh deform path points are game objects hidden in scene hierarchy
    , you can unhide them easy by modifying the code,
    regarding animation I believe it is possible but you will have to be aware that you will have to call the spline plus method responsible for updating the spline shape every frame of the animation ,this is not recommended if you have a complex spline shape
     
  22. NimlokDigital

    NimlokDigital

    Joined:
    Jul 9, 2017
    Posts:
    7
    Hi @elseforty

    We have purchased the plugin, but I cannot see where to unhide these so that they appear in the in the editor, can you guide me in the right direction.

    As for updating it every frame, this is to create a rendered animation using unity so there is no need to worry about frame rate as we will be rendering every frame to the disk anyway and stitching the animation together afterwards.
     
  23. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @NimlokDigital okey I guess then it's not a problem if it's going to be rendered,
    I did a quick test and here as a preview

    I made some small changes to make animation possible, it turns out that you don't need to have the path points game objects revealed in the scene hierarchy, changing the path points while the main spline game object is selected stores the data of all children path points in the animation file,

    email me at elseforty@gmail.com so I can send you the version with the animation update
    regards,
     
  24. DAh-Right

    DAh-Right

    Joined:
    Mar 9, 2015
    Posts:
    28
    I think this just joke, but :

    Train controller is (spaces, head reversing, no input train controlling (only autimatic or keydoard input) [i wanna stop train on end point(and on defined middle point when i`m need), then by "my AI event" starting to move, but this just impossible]):


    Train breaks himself in 2-4 movement iterations.


    Train will stop on start of spline (point 0 with speed 0), but still move on end spline (point 8 with speed 0).


    Events can not work because this is not implemented in code? ("+ event" button just not do anything for me)


    I can use free solution from internet for "just spline movement" but now i`t just wasting $50 and some hours of time!
    I think you will replace asset store package on the "presented in forum" version, or send it to me directly for solving this efforts.
     
    Last edited: Jun 25, 2019
  25. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    @DAh-Right Hi sorry for the trouble, i will help you get trough this and promise if no solution found then you will be refunded,
    the reason why i didn't update the version in the asset store is because i'm making sure everything is working well before i launch the new massive update, the splines generated by older versions, 2.x and bellow will not be compatible with new version 3.x, just to give you an idea on how much change there is in the core of this new massive update, i'll submit the new version of Spline plus and Spline Mesh Deform this weekend, i assume they are going to be approved by the asset store team the week after,

    concerning your issues that you have mentioned ,for the train going into himself when there is a dead end , that is obviously a bug for followers of type train,
    for followers of type standard they usually take the same branch back when no other branch option is available, this is what followers of type trains are currently doing and it seams like this should change, followers of type train should completely stop when there is no other branch option to take, i managed to do that quickly but there is a small issue that i need to fixe which is the spacing between wagons change slightly sometimes, i'm currently looking into a solution for this,
    also the example in the Gif pic bellow is with a follower of type train controlled by a keyboard, but it is working for auto animated followers of type trains as well


    for events i don't really know what is the issue, what i can tell you is that events has completely changed in version 3.x , it is now using unity reorderable lists instead of custom GUI list , so whatever events issue you are having i expect it's gone by now in the new version


    anyway in case you need urgently the fixed new version then send me your invoice at elseforty@gmail.com ,i wil send you a download link before asset store version is approuved
     
    Last edited: Jun 25, 2019
    Mark_01 likes this.
  26. DAh-Right

    DAh-Right

    Joined:
    Mar 9, 2015
    Posts:
    28
  27. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi,
    here is a list of all the new features and fixes in the new version of Spline plus 3.0 and Spline mesh deform 2.0
    , i'll submit them today for review, they may get approved by the asset store team during this week


    for Spline plus 3.0
    -Support of multiple trains followers
    -Branch picking algorithm enhanced
    -Follower settings in a unity window editor instead of the inspector
    -Enhanced keyboard spline navigation
    -Better inspector UI,
    -Use of Reorderable list for events and followers
    -Events can now be named
    -Conversion of branches lists to dictionaries instead
    -"System.Type to Type" bug fixed
    -Train follower at branch fork that are not shared bug fixed
    -Better free nodes management
    -More optimization achieved
    -Use of gizmos instead of GUI handles for performance purpose
    -General settings window for Spline plus shared settings








    for Spline mesh deform 2.0
    -Spline shape animation support
    -Duplicate Mesh layer is now available
    -New Lock rotation logic,
    -Normals enhancement in Mesh deform, Extrude and tube mesh
    -Generated mesh normals issue bug fixed in Mesh Deform,
    -Generated mesh offset from spline issue bug fixed in mesh deform,
    -Material issue when hiding mesh layer bug fixed in mesh deform
    -Two sided mesh turns to black bug fixed in tube mesh and extrude
    -Pivot editing causing generated mesh offset bug fixed



    Please remember that all splines that were generated by versions 2.x and below are now unsupported by this version.
     
    Last edited: Jul 4, 2019
  28. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
  29. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    next week i'll launch a new Spline plus and Spline mesh deform updates,
    the main fixes are in Spline plus after some bugs were reported by our dear users, which we thank infinitely

    here is a list of the bugs fixed:
    -Follower settings window unstable
    -Build errors caused by editor script not on an editor folder
    -All events gets sometimes triggered when follower hits a shared node
    -Train follower broke into peaces in some cases
    all bugs in this list was fixed and it is going to be up this coming week after asset store team approval

    also there were some optimization done on Spline plus UI , more particularly on the Reorderable lists and Unity Window editor.
     
  30. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    new feature called "Mesh trim" was added to Spline mesh Deform after the request of some users
    it is used to define the extensions of a deformed mesh when exceeding the branch distance,
    "Mesh trim" is available only in deformation type






     
  31. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    hey everyone,
    i've been developing a new important feature that has been requested by many users, which is follower projection into ground mixed with path following, i've managed to make followers respond to obstacle by stoping as you can see in the gif bellow,


    Spline plus has now 2 path following types
    Strict path following: it is the old fashion way for followers to follow paths
    Projected path following: it is using raycasting on followers to sense it's surrounding,
    there are currently two ray sensors , one for the ground and one for obstacles in front as you can see bellow

    everything can be controlled from Follower settings window as you can see
    i have also included Unity events that get triggered based on the situation , this can help in the creation of characters behaviour as shown in the gif image above
     
    Last edited: Aug 24, 2019
  32. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi everyone ,
    i managed to ensure full support for Keyboard inputs when Projected path following is selected
    Example


    also i made few changes on the follower settings window as you can see bellow


    next update will have this new feature shipped
     
    Last edited: Aug 28, 2019
  33. GlitchInTheMatrix

    GlitchInTheMatrix

    Joined:
    Apr 12, 2010
    Posts:
    285
    Hi, great tool! there is any way to make a car run in the curve and turning the wheels before turn the car?
     
  34. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi,
    thank you,
    you mean something like this

    i have achieved this after some setup made on the spline plus inspector + a little script that i have wrote to use the spline plus data,
     
  35. GlitchInTheMatrix

    GlitchInTheMatrix

    Joined:
    Apr 12, 2010
    Posts:
    285
    Holly cow! yes, that exactly :)
    Is that script part of the Spline Plus package or can you share it ?
    Thanks
     
  36. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    It is not included in the package but I can give to you if you want
    Regards
     
  37. GlitchInTheMatrix

    GlitchInTheMatrix

    Joined:
    Apr 12, 2010
    Posts:
    285
    I just got my license :)
    is any way you share with me that script of package demo ? Thanks

    Edit: Im needing to make a car run in the path turning the wheels right/left like the gif you posted a couple of days ago.
     
    Last edited: Sep 9, 2019
  38. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    hey

    i have received your email, i have replied to you there

    Thank you,
     
  39. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    hi,
    new update has been dropped yesterday for Spline plus and Spline mesh deform,

    Spline plus version changes :
    -"F" Free node type shortcut key added
    -"S" Smooth node type shortcut key added
    -Projected path following for simple followers is now supported
    -Follower settings window rearranged
    -Local, world follower translation button control added
    -Simple and train followers progressive speeding added in auto animated mode
    -Spline wheels steering demo scene included

    Spline mesh deform version changes:
    -"Mesh Trim" Feature added to Mesh deform
    - Source code modifications has been made to ensure better readability
    - Link spacing not working bug fixed
     
  40. hassan065

    hassan065

    Joined:
    Sep 26, 2019
    Posts:
    1
    Hi, Elseforty
    I am using your plugin and i need your help. I want to assign left,right,forward and backward of node from script.
     

    Attached Files:

  41. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi Hassan,
    i have received your email and i have replied to it, please check it
    regards,
     
  42. AnthonyPaulO

    AnthonyPaulO

    Joined:
    Nov 5, 2010
    Posts:
    110
    Hello!

    Looking to add train building/simulation into my game and was wondering if Splines Plus allows me to let the user lay their own track similar to the way the developer can do so via the editor with control points. I know I'd have to handle the user inputs and calling the api, but is there anything in the api that facilitates this somewhat?
     
  43. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi @AnthonyPaulO
    since you want mesh deformation for the rails, you will need Spline mesh deform instead of Spline Plus,
    you have Spline Plus API to handle the spline part , for the mesh part you will have to check the source code and develop upon it, many developers have done that successfully already
    if you have a good developer then i say go for it,
     
    Last edited: Oct 15, 2020
  44. AnthonyPaulO

    AnthonyPaulO

    Joined:
    Nov 5, 2010
    Posts:
    110
    I have been integrating the spline functionality into my project and so far so good, and now I'm at the mesh part. As I mentioned before, I'm looking to allow the user to create their own spline at runtime and apply the track mesh to it so they can layout their tracks the way they like. I currently have implemented the ability for the user to lay out the nodes where they see fit and now I'm at the point where I'd like to apply the track mesh as they lay out the nodes. Do you have any example code that does this? You mention having to develop upon the source code, do you mean the Spline Mesh Deform package does not allow this out-of-the-box, and that I will have to modify the engine to make this possible? Could use some clarification before I head down this route. Thanks again!
     
  45. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
  46. AnthonyPaulO

    AnthonyPaulO

    Joined:
    Nov 5, 2010
    Posts:
    110
    Awesome sauce, will do!
     
  47. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi,
    new update is coming for both Spline plus and Spline mesh deform and the most interesting addition is the support of mesh deformation processing in GPU and in CPU Multi threading

    Here is a list of some of the most interesting features added





    Spline Plus
    -Projected path following simplified and improved
    -Spline Projection inspector improved
    -Shared settings window loosing changes bug fixed
    -Branch vertex distance data non accuracy bug fixed
    -enhancement on the way spline vertices normals and tangents are generated
    - "Z" keyboard shortcut to focus on Node in your Scene view
    -Broken node type added
    -Spline mesh deform modifiers can now be added from Spline Plus inspector





    Spline Mesh Deform
    -GPU and CPU Multithreading are now available for Mesh deform
    -All modifiers can now be added through Spline plus Inspector
    -More intuitive Mesh deform inspector
    -New and better mirror logic for Mesh deform
    -Memory leak fixed when using Mesh deform in an update
    -Correct normals generation for procedural meshes is now done internally for all modifiers
    -all modifiers logic has been massively improved
    -Correct normals when editing extrusion transform bug fixed
    -Correct normals when editing Plane mesh transform bug fixed
    -Correct normals when editing tube mesh transform bug fixed
    -New inspector update for Plane mesh, Extrude, Tube mesh to match Spline plus inspector
     
  48. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi Chrisk,

    GPU and CPU multi threading processing for deformed mesh will be available in the next update in few days in case you are still interested

     
  49. elseforty

    elseforty

    Joined:
    Apr 3, 2018
    Posts:
    289
    Hi asdzxcv777,

    GPU and CPU multi threading processing for deformed mesh will be available in the next update in few days in case you are still interested,
    concerning GPU processing , it is done using compute shaders

     
  50. jmjboyle

    jmjboyle

    Joined:
    Nov 22, 2016
    Posts:
    1
    Has the spline path finding package been published? I can't seem to find it on the asset store.
    And also does the Spline Mesh Deform asset include the Spline Plus asset?