yuka ·
Yuka is a library for developing Game AI (based on yuka).
Features
This is a dart conversion of yuka, originally created by @Mugen87.
- Autonomous Agent Design: Yuka provides a basic game entity concept and classes for state-driven and goal-driven agent design.
- Steering: Use the build-in vehicle model and steering behaviors in order to develop moving game entities.
- Navigation: Graph classes, search algorithms and a navigation mesh implementation enables advanced path finding.
- Perception: Create game entities with a short-term memory and a vision component.
- Trigger: Use triggers to generate dynamic actions in your game.
- Fuzzy Logic: Make your game entities smarter with Yuka's fuzzy inference system.
Yuka is a standalone library and independent of a particular 3D engine.
Documentation
You can find the origional Yuka documentation on the website and the dart documentation on pub.flutter-io.cn.
Examples
Find the example for this API here, and for a preview go here.
Contributing
Contributions are welcome. In case of any problems look at existing issues, if you cannot find anything related to your problem then open an issue. Create an issue before opening a pull request for non trivial fixes. In case of trivial fixes open a pull request directly.
Libraries
- constants
- core/console
- core/console_logger/console_platform
- core/console_logger/console_web
- core/entity_manager
- core/event_dispatcher
- core/game_entity
- core/mesh_geometry
- core/message_dispatcher
- core/moving_entity
- core/regulator
- core/telegram
- core/time
- fsm/state
- fsm/state_machine
- fuzzy/fuzzy_composite_term
- fuzzy/fuzzy_module
- fuzzy/fuzzy_rule
- fuzzy/fuzzy_set
- fuzzy/fuzzy_term
- fuzzy/fuzzy_variable
- fuzzy/operators/fuzzy_and
- fuzzy/operators/fuzzy_fairly
- fuzzy/operators/fuzzy_or
- fuzzy/operators/fuzzy_very
- fuzzy/sets/left_scurve_fuzzy_set
- fuzzy/sets/left_shoulder_fuzzy_set
- fuzzy/sets/normal_dist_fuzzy_set
- fuzzy/sets/right_scurve_fuzzy_set
- fuzzy/sets/right_shoulder_fuzzy_set
- fuzzy/sets/singleton_fuzzy_set
- fuzzy/sets/triangular_fuzzy_set
- goal/composite_goal
- goal/goal
- goal/goal_evaluator
- goal/think
- graph/core/edge
- graph/core/graph
- graph/core/node
- graph/extra/heuristic_policy
- graph/extra/priority_queue
- graph/search/a_star
- graph/search/bfs
- graph/search/dfs
- graph/search/dijkstra
- math/aabb
- math/bounding_sphere
- math/bvh
- math/convex_hull
- math/half_edge
- math/line_segment
- math/math_utils
- math/matrix3
- math/matrix4
- math/obb
- math/plane
- math/polygon
- math/polyhedron
- math/quaternion
- math/ray
- math/sat
- math/vector3
- navigation/extra/graph_utils
- navigation/navmesh/corridor
- navigation/navmesh/cost_table
- navigation/navmesh/file_loader
- partitioning/cell
- partitioning/cell_space_partitioning
- perception/memory/memory_record
- perception/memory/memory_system
- perception/vision/vision
- steering/behaviors/alignment_behavior
- steering/behaviors/arrive_behavior
- steering/behaviors/cohesion_behavior
- steering/behaviors/evade_behavior
- steering/behaviors/flee_behavior
- steering/behaviors/follow_path_behavior
- steering/behaviors/interpose_behavior
- steering/behaviors/obstacle_avoidance_behavior
- steering/behaviors/offset_pursuit_behavior
- steering/behaviors/on_path_behavior
- steering/behaviors/pursuit_behavior
- steering/behaviors/seek_behavior
- steering/behaviors/separation_behavior
- steering/behaviors/wander_behavior
- steering/path
- steering/smoother
- steering/steering_behavior
- steering/steering_manager
- steering/vehicle
- task/task
- task/task_queue
- trigger/regions/rectangular_trigger_region
- trigger/regions/spherical_trigger_region
- trigger/trigger
- trigger/trigger_region
- yuka