Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice
  2. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  3. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

AI Planner

Discussion in 'AI & Navigation Previews' started by amirebrahimi_unity, Mar 23, 2019.

Thread Status:
Not open for further replies.
  1. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    This was just fixed in the latest release (preview.7)
     
  2. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    This is likely due to an aging entites, which the extant version of the planner depends on. This will change in the future, so that entities can be updated more frequently than releases of the planner. Also, we currently aren't developing on 2019.3 internally yet.
     
  3. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    We did a small update, which was just posted, but the update to Entities 30+ will come with our next larger release because it required a re-working of the visualizer to support the changes that came with that version.

    At the time I posted that original comment I thought our next release was "right around the corner", but that turned out to be the many months of refactoring that we have done to improve the planner overall.
     
  4. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    There is a bug in the extant version that does not create multiple worlds, so that many agents can run with the same domain definition. This has been completely refactored in our next larger release we are hoping to get out in August.
     
  5. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    @JustinLarrabee and @zephyr831125, our intention was not to create class-based polymorphism where boxing and managed allocations normally occur. What you are currently looking at has been refactored in our next larger release (i.e. ~August), but the templates remain. This allows us to prevent boxing by referencing specific interfaces with constraints like 'struct'. It also makes the planner easier to extend with custom domains (e.g. deterministic or non-trait based).
     
  6. Justin_Larrabee

    Justin_Larrabee

    Joined:
    Apr 24, 2018
    Posts:
    106
    Thanks for the update, looking forward to trying the new release.
     
  7. threedots1

    threedots1

    Joined:
    Oct 9, 2014
    Posts:
    88
    Good to know.

    Given that the planner requires compilation of a DLL before runtime, what restraints does this place on using runtime generation of a world and objects?

    Our project contains a procedurally generated world with definitions of items and 'agents' being loaded from external files. The components that everything is made up from is hardcoded though.

    Will this affect the ability to use the planner?
     
  8. mplantady_unity

    mplantady_unity

    Unity Technologies

    Joined:
    Jun 19, 2019
    Posts:
    49
    What is compiled in the assembly is a model that is used to describe your world (type of resources, state of objects...) and how it can evolve. Even if your world and objects are generated it's based on rules and predefined components, so no issue to use the Planner!
     
  9. hamokshaelzaki

    hamokshaelzaki

    Joined:
    Nov 6, 2012
    Posts:
    19
    Hello, I tried several times to import the package on 2019.3.01a11 but

    Assembly 'Unity.Properties.Codegen' is a CodeGen assembly and cannot be Auto Referenced (Packages/com.unity.properties/Unity.Properties.Codegen/Unity.Properties.Codegen.asmdef)
     
  10. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    The package does not yet support 2019.3. You'll find that even if you work around the auto reference issue, there are also errors with the versions of burst (preview.8) and entities (preview.30) we depend on, when using 2019.3. We're updating our dependencies in the next release (projected later this month), with better support for 2019.3 coming as well later this year.
     
    hamokshaelzaki likes this.
  11. hamokshaelzaki

    hamokshaelzaki

    Joined:
    Nov 6, 2012
    Posts:
    19
    Thanks for that,

    I already reverted back to 2019.2
    but I have another issue

    I have 2 simple actions with debugging lines, that's it, really simple, but I always have this

    ArgumentException: The entity does not exist
    Unity.Entities.EntityDataManager.AssertEntityHasComponent (Unity.Entities.Entity entity, Unity.Entities.ComponentType componentType) (at Library/PackageCache/com.unity.entities@0.0.12-preview.30/Unity.Entities/EntityDataManager.cs:370)
    Unity.Entities.EntityDataManager.AssertEntityHasComponent (Unity.Entities.Entity entity, System.Int32 componentType) (at Library/PackageCache/com.unity.entities@0.0.12-preview.30/Unity.Entities/EntityDataManager.cs:378)
    Unity.Entities.EntityManager.GetBuffer[T] (Unity.Entities.Entity entity) (at Library/PackageCache/com.unity.entities@0.0.12-preview.30/Unity.Entities/EntityManager.cs:1729)
    DomainDef.DomainDefUpdateSystem.StateEquals (Unity.Entities.Entity lhsStateEntity, Unity.Entities.Entity rhsStateEntity) (at Assets/AI.Planner/Generated/DomainDef/DomainDef.cs:171)
    Unity.AI.Planner.PolicyGraphUpdateSystem.LookupState (Unity.AI.Planner.HashCode stateHash, Unity.Entities.Entity stateEntity, Unity.Entities.Entity& matchedStateEntity) (at Library/PackageCache/com.unity.ai.planner@0.0.1-preview.7/Runtime/Planner/Planner.cs:764)
    Unity.AI.Planner.PolicyGraphContainer.UpdateRoot (Unity.Entities.Entity stateEntity, System.Int32 searchHorizon) (at Library/PackageCache/com.unity.ai.planner@0.0.1-preview.7/Runtime/Planner/Planner.cs:235)
    Unity.AI.Planner.PolicyGraphContainer.UpdatePlan (Unity.Entities.Entity stateEntity) (at Library/PackageCache/com.unity.ai.planner@0.0.1-preview.7/Runtime/Planner/Planner.cs:246)
    Unity.AI.Planner.Agent.Controller`1[TAgent].CompleteAction () (at Library/PackageCache/com.unity.ai.planner@0.0.1-preview.7/Runtime/Agent/Controller.cs:123)
    Unity.AI.Planner.Agent.Controller`1[TAgent].Update () (at Library/PackageCache/com.unity.ai.planner@0.0.1-preview.7/Runtime/Agent/Controller.cs:76)
    BotAgent.Update () (at Assets/AutoRoyale/AI/BotAgent.cs:18)


    I looked at the replied from page one with a similar log, but couldn't figure out a workaround.
    I did the initialization, domain and plan as following.
    And I'm running Controller.Update in the BotAgent.cs Update()
    1.JPG 2.JPG
     
  12. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    So looking at your error trace, what stands out to me is

    DomainDef.DomainDefUpdateSystem.StateEquals (Unity.Entities.Entity lhsStateEntity, Unity.Entities.Entity rhsStateEntity) (at Assets/AI.Planner/Generated/DomainDef/DomainDef.cs:171)


    Is this line (171 in DomainDef.cs) accessing a buffer of type DomainObjectReference through the EntityManager? If so, did you set up your initial state on your agent script? The buffer is added to the state entity on the initial state creation.
     
  13. hamokshaelzaki

    hamokshaelzaki

    Joined:
    Nov 6, 2012
    Posts:
    19
    I did set it up in the inspector, is there anything else should be done in the code too? Referencing to Otto.cs there was no addition of a buffer to the agent. only reading from m_EntityManager.
    Am I missing something else?
     
  14. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    Can you post a screenshot of your agent inspector with the initial state?
     
  15. Rhyusaky

    Rhyusaky

    Joined:
    Jan 22, 2016
    Posts:
    25
    It is not working on Unity 2019.2.1f1
    When I install, it give-me some errors related to namespaces like 'Generation'
     
  16. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    The current version only supports 2019.1. Our next release will be compatible with 2019.2. We're planning to release the next version by the end of the month.
     
  17. vx4

    vx4

    Joined:
    Dec 11, 2012
    Posts:
    181
    Are Unity AI and Machine Learning Tools for Behavior Generation at SIGGRAPH 2019 tech talk going to be available online?
     
    Last edited: Aug 26, 2019
  18. alexchesser

    alexchesser

    Joined:
    Sep 15, 2017
    Posts:
    147
    Hi there,

    I've just discovered the AI planner package today and think it is really exciting. In looking at a fresh checkout of `0.0.1-preview-7` it appears to throw a series of errors.

    Rather than paste them all I'll pick out a selection to see if there's something obvious (like an additional dependent package needed)

    Code (Boo):
    1. Library\PackageCache\com.unity.ai.planner@0.0.1-preview.7\Runtime\Data\DomainDefinition.cs(13,24): error CS0234: The type or namespace name 'Codegen' does not exist in the namespace 'Unity.Properties' (are you missing an assembly reference?)
    2.  
    Code (CSharp):
    1. Library\PackageCache\com.unity.ai.planner@0.0.1-preview.7\Runtime\Data\DomainDefinition.cs(15,24): error CS0234: The type or namespace name 'Serialization' does not exist in the namespace 'Unity.Properties' (are you missing an assembly reference?)
    2.  
    Code (CSharp):
    1. Library\PackageCache\com.unity.ai.planner@0.0.1-preview.7\Runtime\Utility\ToStringPropertyVisitor.cs(122,14): error CS0246: The type or namespace name 'ICustomVisit<>' could not be found (are you missing a using directive or an assembly reference?)
    2.  
    Code (CSharp):
    1. Library\PackageCache\com.unity.ai.planner@0.0.1-preview.7\Runtime\Utility\ToStringPropertyVisitor.cs(16,25): error CS0246: The type or namespace name 'StringBuffer' could not be found (are you missing a using directive or an assembly reference?)
    2.  
    I've watched the first couple of videos on youtube and am sortof poking around and experimenting to try and see what working with this feels like.

    Perhaps there is missing information in the manual https://docs.unity3d.com/Packages/com.unity.ai.planner@0.0/manual/index.html ?

    I am using unity 2019.2.2f1


    EDIT: apologies... I just saw the comment two posts above this one. You don't support 2019.2 yet :)
     
  19. sordidlist

    sordidlist

    Joined:
    Sep 2, 2012
    Posts:
    86
    Agreed, I think I need some sort of support group to help with my excitement for not-quite-yet available game dev tools.

    None of my friends are into game development but Otto haunts my waking dreams...
     
    amirebrahimi_unity likes this.
  20. threedots1

    threedots1

    Joined:
    Oct 9, 2014
    Posts:
    88
    Yeah I'm hanging to get my hands on this as well. Hopefully not too long now.
     
  21. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    I'm told that this should be available towards the end of next week. Most likely this will come on Unity's YouTube channel, so check there.
     
    alexchesser, vx4 and sordidlist like this.
  22. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
  23. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    I created a very small project after the otto demo. There are only 2 actions Build and Navigate and related Traits. Also set the domain object providers and agent in Scene. upload_2019-9-29_20-52-57.png

    The problem is when start running, there are only 2 entities in ECSWorld, and nothing planning happens. Almost nothing in Plan Visualizer.
    upload_2019-9-29_20-51-11.png
    Don't know what I missed.

    the project is at https://github.com/zephyr1125/ZAIPlanner
     
    createtheimaginable likes this.
  24. sordidlist

    sordidlist

    Joined:
    Sep 2, 2012
    Posts:
    86
  25. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    Yes, I've written both operational actions for the actions and assigned them to the actions. BuildOperation is only an empty one, and NavigationOperation moves agents towards its target in it.
     
  26. mplantady_unity

    mplantady_unity

    Unity Technologies

    Joined:
    Jun 19, 2019
    Posts:
    49
    I cloned your project and the Navigate action was missing, maybe you forgot to commit the file?
    Otherwise it seems correctly configured, I added a Navigate action to test your domain and it worked. I sent you a PR if you want to take a look.
     
  27. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    Thank you! And I truly did forget to commit the NavigateAction, I am so sorry. I'm gonna approve the PR and compare it with my local NavigateAction. Thank you!
     
    mplantady_unity likes this.
  28. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    Hi, I have cloned your PR to a new project, and compare it to my original code to try to find out what's wrong in my code. Finally, I found the problem is the Operational Actions cannot be in any namespaces. The AI planner doesn't run unless all the Operational Actions are in the global namespace.
     
    vincismurf likes this.
  29. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    Thanks. We have a bug logged for that already and will address it in a future release.
     
  30. dorinc

    dorinc

    Joined:
    Oct 29, 2015
    Posts:
    4
    I'm getting these type of errors when opening the Otto project.
    upload_2019-10-8_14-12-11.png

    Any ideas why this is?
    I cloned the repository and I'm using Unity 2019.2.3f1.
     
  31. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    Found another problem today, if multiple Domain Objects have the same name, one's traits will be set to zero.
    upload_2019-10-8_20-24-24.png
     
  32. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    And what might caused the max depth and optimal action values to keep increasing? Lack of terminations?
    upload_2019-10-8_20-51-24.png
     
  33. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    This is usually due to a compile error. Try removing PLANNER_DOMAINS_GENERATED and PLANNER_ACTIONS_GENERATED from your build settings defines and then re-run Build Assemblies from the AI menu.
     
  34. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    Yes. The planner will continue to plan until the plan is complete. State terminations can close off nodes from further expansion. We'll be introducing an option soon to limit plan depth or possible plan nodes.
     
  35. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    We're aware of this issue and will need to provide better validation towards these sorts of issues prior to a full release.
     
  36. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    But I removed the termination from Otto, it still running properly with max depth at about 9. Is there some other thing determined how a plan "complete"? Do I have to define what means complete for plan somewhere?
     
  37. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    Otto will still run, but likely die at some point because the state termination of death means that no reward will continue to be accrued on that branch of the plan. Without that state termination the plan may think that Otto can continue to consume, work, and sleep even after death.

    A plan is complete when all nodes are either terminal or "complete" in the sense that there are no further actions that can be taken. In the case of Otto the plan is never complete because there is no "goal state". Otto simply plans and replans in order to stay alive.

    So, state terminations can either be seen as goal states where a reward could be given or penalty states where there should likely be a large cost to reaching it (e.g. death). Currently, the heuristic is what would dole out that reward or cost depending on the state.
     
  38. zephyr831125

    zephyr831125

    Joined:
    Mar 4, 2017
    Posts:
    54
    Thank you for your reply, it's very detailed. But my point is my max plan depth increased to hundreds in less than 10 seconds, it seems the plan is keeping repeat navigating A->B and then B->A and causes running slow. At first, I thought it might because there are no terminations. So I removed the termination from Otto, but Otto's max plan depth never goes more than 10. I think there's maybe other factors that caused the rapid expansion of max plan depth.
     
  39. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    What changes have you made to the demo?
     
  40. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    Otto runs correctly, the problem is in my project, something similar to Otto. I upload it to Github, if you want to take a look. https://github.com/eterlan/Mu
     
    Last edited: Oct 11, 2019
  41. amirebrahimi_unity

    amirebrahimi_unity

    Joined:
    Aug 12, 2015
    Posts:
    400
    There are quite a few things going on here:

    1. There is a missing action reference in the Mu plan that seems to have gotten deleted.
    2. The actions you have are missing references to a trait that no longer seems to exist.
    3. All the custom code has been deleted, but the Custom directory still exists, which means it is an empty DLL and won't actually compile
    4. With the remaining actions, the preconditions are still referring to traits that either no longer exist or no longer are listed for the parameters you have.

    My suggestion is to fork and tweak the existing Otto project or to try building something from the ground up. At the very least, I'd say reduce your actions to a single action in the Mu plan definition and get that working. Start with something simple that you can verify and then expand.

    What you've uncovered with your exploration is that there are quite a lot of ways to break the planner and not much validation of the data in definition files at the UI layer. There also isn't much in the way of good error messages to help you diagnose what is wrong. We'll get better on this over time as we stabilize the workflow.
     
    laurentlavigne and eterlan like this.
  42. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    Didn't expect this elaborate explanation, thank you so much! Your suggestion is practical and helpful, I would follow this rule next time, thanks!
    BTW, may I ask sth about the AI Planner design? I know it might be rude, after you guys develop this long, but I'm just curious. What make you not choose Goal-oriented or HTN but this algorithm, which mostly used in go or other board game?
     
  43. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118

    It's not rude at all! Your question is actually very insightful and shows that we have not yet communicated the benefits of our chosen direction. Hopefully, I can shine some light on that topic today.

    The short answer to your question is that our system handles a broader class of decision problems (with or without goals; deterministic or nondeterministic) while the algorithm we use scales better to larger problems (similar to MCTS than to GOAP/HTNs).

    Now for the long answer:

    As a motivation for our chosen direction, consider the comparison to goal-oriented action planning (GOAP). In GOAP, a user provides one or more goal criteria to fulfill, from which a finite-length plan is returned. For many games/problems, this is enough. But what about games where an agent must make decisions indefinitely (Sims/Otto) or has a less concrete goal (maximize score)? It's not particularly intuitive how a user could extend a GOAP framework to handle these cases. Luckily, finite, goal-driven decision-making problems are simply a subset of a larger class of decision-making problems our package can solve. If your particular application uses goals, you can support them as a detail of modeling your decision-problem by adding state termination criteria (i.e. when has a goal been achieved or failed), adjusting the costs/rewards (add rewards for achieving a goal state, for example), and implementing a custom heuristic (which, in a way, estimates how close to a goal a given state is). But if your application does not have concrete goals, you don't have to specify any. It's flexible.

    Another advantage to our approach is the ability to support non-deterministic domains. In many planning frameworks---including GOAP---the results of taking an action are deterministic, i.e. there is only one outcome. We support probabilistic outcomes, which allow the decision-making process to consider the risks and rewards of an uncertain outcome. Perhaps an agent can only attack an opponent with only a 30% chance of success. Should it commit to the attack or flee? Our tool can make that judgment, which we believe will make for smarter, more believable AI.

    As a final point on the problem representation, our system solves exactly the same class of problems as deep reinforcement learning (see: ML-Agents), which means we have a common foundation for mixing the two in various ways. We have nothing to share publicly on this front, but stay tuned!

    Now, from an algorithmic standpoint, our approach is an anytime algorithm, meaning it iteratively improves the solution to the decision-making problem given more time. This is a very handy quality for a planner to possess, particularly in very large domains, where a complete, optimal solution to a problem may be intractable to compute at runtime. Instead, we can focus on returning high-quality approximate solutions on demand, while also developing better support for scheduling runtime computation distributed over multiple frames in background worker threads.

    Lastly, on the point of hierarchical methods (e.g. HTNs), we've been thinking quite a bit on how to best support decision-making at various levels of abstraction. In HTNs, high-level tasks are decomposed into lower-level tasks and actions, for example. Such a hierarchy is incredibly useful, as it can constrain the problems to be solved at lower levels, making them more tractable to solve. But this isn't the only hierarchy of decision-making you'll find in games. It's quite common to see two or more distinct approaches layered together, be it a rule-based system sitting over a finite-state machine or a high-level activity planner that triggers pathfinding and/or animation systems. In fact, with a little work, you could use our planner to trigger operational actions that set up, solve, and execute plans for a sub-task. We don't yet have a demo that uses our planner at multiple levels of decision-making, but in both Otto and our Overcooked demos, the operational actions use the NavMeshAgent, which is simply a planner/agent controller for pathfinding (a different problem with a different representation, but constrained by high-level decisions).

    So, what are our thoughts on this front? It would be myopic to support hierarchical planning only with our planning system and our trait-based representation. Our larger group at Unity is creating a suite of decision-making tools. Our goal is to make such tools interoperable where possible, as we anticipate users wanting to mix and layer them. We also want these tools to work with a variety of problem representations (trait-based, pathfinding, user-specified, etc). As a consequence, mixing these tools may require bridging problems with very different representations, such as in moving from high-level trait-based decision-making to low-level pathfinding. At the very least, we want these considerations to be made explicit, which will help guide the users on how to implement successful hierarchical decision-making systems. More practically, we might add supporting scaffolding for using these tools and representations together. We've already been discussing how to better support navigation decisions in our trait-based language; we may also consider tools that automatically set up calls to, say, the NavMeshAgent as a convenience to the user. This is likely a direction a year or two out in our overall vision, but with enough user demand, it could be moved up in priority.

    I hope that answers your question!
     
    filod, GoliathAT, optimise and 5 others like this.
  44. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    Absolutely! Great answer which beyond my expectation! Yes, the problem scope it can solve certainly greater than GOAP. I guess The learning nature might gave it some interesting feature to play with.

    Talking about hierarchy, I would like to share my little AI implementation, which is pretty much like Utility system. The idea is inspired by machine learning and well-known maslow's hierarchy of needs theory. The concept is very simple, each behavior is driven by impulses, and 2 is quite normal, one positive & one negative. For example, the requirement of food depends on reserves of food & hungry level. Then I normalize these two data with it's influence scope( I don't care about amount of food after I have more than 10 of it, so the scope is [0,10] ), and multiply it with an impactor. Lastly I compare these data from all behaviours in same level and choose the most desirable one.

    The hierarchy works like that, as you know, human begin won't think of self actualization all days but at night mostly. Also people just won't think of that when he is starving. So the comparison happens more in Lv1, physiological need, than Lv5, Actualization need, and, only when all the needs is satisfied basically in low level, then it would trigger comparison in next level.

    I think the ai Planner is more focus on profit, while mine more about stimulus.
    After exploring your guys planner, I thought adding something like probability of success to optimize the behavior selection might be an interesting idea. Thanks for your reply! Hope mine give you some inspiration too!
     
  45. Kaen_SG

    Kaen_SG

    Joined:
    Apr 7, 2017
    Posts:
    206
    Found a Memory Leak (not sure if it's AI Planner or just the Otto Project).

    Running Latest 2019.2.9f1, AI Planner preview v0.1.1 and latest cloned Otto project. (Untouched demo scene).
    No Errors or Warning at runtime. Attached a video to help visualize.

    https://drive.google.com/file/d/1Et_u-gmtEy-llgq0Mn1nuEU_B3vAhqSm/view?usp=sharing

    Ever increasing memory usage at runtime on an unchanged otto demo scene.
    Also, 20%+ CPU usage on a Ryzen 2700x seems a bit much for 1 planner and 1 agent no?
     
  46. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    Yes, there was a known memory leak at release (see the release thread). The issue turned out to be on the DOTS side, and has since been fixed.
     
    Kaen_SG likes this.
  47. Kaen_SG

    Kaen_SG

    Joined:
    Apr 7, 2017
    Posts:
    206
    Looking forward to your next release! Is that coming with the new multi agent demo scene?
     
  48. TrevorUnity

    TrevorUnity

    Unity Technologies

    Joined:
    Jun 28, 2017
    Posts:
    118
    No, that will come with a future release.
     
  49. Gooren

    Gooren

    Joined:
    Nov 20, 2015
    Posts:
    331
    Hi, I stumbled upon AI Planner just randomly while seeking best AI solution for our game. It will be a survival first-person stealthy horror game.
    I want our NPCs to be able to crouch, jump over obstacles, grab a weapon in the process if possible etc. Not incredibly complex but not simple at the same time.
    Now... my AI experience are quite limited still and I would appreciate an advice.
    Do you think we should use AI Planner? Or is it an overkill and we should use GOAP or something else?

    Thanks :)
     
  50. PaulUsul

    PaulUsul

    Joined:
    Nov 20, 2012
    Posts:
    29
    Do you have a timeline for when you'll be compatible with 2019.3?
     
Thread Status:
Not open for further replies.