edyn/1.2.1

Edyn is a real-time physics engine organized as an ECS
Recipe info
2023-02-12

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
edyn/1.2.1

Using edyn

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
edyn/1.2.1
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("edyn/1.2.1")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): Edyn
  • CMake target name(s): Edyn::Edyn
  • pkg-config file name(s): edyn.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(Edyn REQUIRED)
# ...
target_link_libraries(YOUR_TARGET Edyn::Edyn)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the edyn homepage listed above:

#include "edyn/build_settings.h"
#include "edyn/collision/broadphase.hpp"
#include "edyn/collision/collide.hpp"
#include "edyn/collision/collision_feature.hpp"
#include "edyn/collision/collision_result.hpp"
#include "edyn/collision/contact_event_emitter.hpp"
#include "edyn/collision/contact_manifold.hpp"
#include "edyn/collision/contact_manifold_events.hpp"
#include "edyn/collision/contact_manifold_map.hpp"
#include "edyn/collision/contact_normal_attachment.hpp"
#include "edyn/collision/contact_point.hpp"
#include "edyn/collision/contact_signal.hpp"
#include "edyn/collision/dynamic_tree.hpp"
#include "edyn/collision/narrowphase.hpp"
#include "edyn/collision/query_aabb.hpp"
#include "edyn/collision/query_tree.hpp"
#include "edyn/collision/raycast.hpp"
#include "edyn/collision/raycast_service.hpp"
#include "edyn/collision/should_collide.hpp"
#include "edyn/collision/static_tree.hpp"
#include "edyn/collision/tree_node.hpp"
#include "edyn/comp/aabb.hpp"
#include "edyn/comp/action_list.hpp"
#include "edyn/comp/angvel.hpp"
#include "edyn/comp/center_of_mass.hpp"
#include "edyn/comp/collision_exclusion.hpp"
#include "edyn/comp/collision_filter.hpp"
#include "edyn/comp/delta_angvel.hpp"
#include "edyn/comp/delta_linvel.hpp"
#include "edyn/comp/graph_edge.hpp"
#include "edyn/comp/graph_node.hpp"
#include "edyn/comp/gravity.hpp"
#include "edyn/comp/inertia.hpp"
#include "edyn/comp/island.hpp"
#include "edyn/comp/linvel.hpp"
#include "edyn/comp/mass.hpp"
#include "edyn/comp/material.hpp"
#include "edyn/comp/merge_component.hpp"
#include "edyn/comp/orientation.hpp"
#include "edyn/comp/origin.hpp"
#include "edyn/comp/position.hpp"
#include "edyn/comp/present_orientation.hpp"
#include "edyn/comp/present_position.hpp"
#include "edyn/comp/roll_direction.hpp"
#include "edyn/comp/rotated_mesh_list.hpp"
#include "edyn/comp/scalar_comp.hpp"
#include "edyn/comp/shape_index.hpp"
#include "edyn/comp/shared_comp.hpp"
#include "edyn/comp/tag.hpp"
#include "edyn/comp/tree_resident.hpp"
#include "edyn/config/config.h"
#include "edyn/config/constants.hpp"
#include "edyn/config/execution_mode.hpp"
#include "edyn/config/solver_iteration_config.hpp"
#include "edyn/constraints/cone_constraint.hpp"
#include "edyn/constraints/constraint.hpp"
#include "edyn/constraints/constraint_base.hpp"
#include "edyn/constraints/constraint_body.hpp"
#include "edyn/constraints/constraint_row.hpp"
#include "edyn/constraints/constraint_row_friction.hpp"
#include "edyn/constraints/constraint_row_options.hpp"
#include "edyn/constraints/constraint_row_spin_friction.hpp"
#include "edyn/constraints/contact_constraint.hpp"
#include "edyn/constraints/cvjoint_constraint.hpp"
#include "edyn/constraints/distance_constraint.hpp"
#include "edyn/constraints/generic_constraint.hpp"
#include "edyn/constraints/gravity_constraint.hpp"
#include "edyn/constraints/hinge_constraint.hpp"
#include "edyn/constraints/null_constraint.hpp"
#include "edyn/constraints/point_constraint.hpp"
#include "edyn/constraints/soft_distance_constraint.hpp"
#include "edyn/context/registry_operation_context.hpp"
#include "edyn/context/settings.hpp"
#include "edyn/context/step_callback.hpp"
#include "edyn/core/entity_graph.hpp"
#include "edyn/core/entity_pair.hpp"
#include "edyn/core/flat_nested_array.hpp"
#include "edyn/core/unordered_pair.hpp"
#include "edyn/dynamics/island_constraint_entities.hpp"
#include "edyn/dynamics/island_solver.hpp"
#include "edyn/dynamics/material_mixing.hpp"
#include "edyn/dynamics/moment_of_inertia.hpp"
#include "edyn/dynamics/position_solver.hpp"
#include "edyn/dynamics/restitution_solver.hpp"
#include "edyn/dynamics/row_cache.hpp"
#include "edyn/dynamics/solver.hpp"
#include "edyn/edyn.hpp"
#include "edyn/math/constants.hpp"
#include "edyn/math/coordinate_axis.hpp"
#include "edyn/math/geom.hpp"
#include "edyn/math/math.hpp"
#include "edyn/math/matrix3x3.hpp"
#include "edyn/math/quaternion.hpp"
#include "edyn/math/scalar.hpp"
#include "edyn/math/shape_volume.hpp"
#include "edyn/math/transform.hpp"
#include "edyn/math/triangle.hpp"
#include "edyn/math/vector2.hpp"
#include "edyn/math/vector2_3_util.hpp"
#include "edyn/math/vector3.hpp"
#include "edyn/networking/comp/aabb_of_interest.hpp"
#include "edyn/networking/comp/aabb_oi_follow.hpp"
#include "edyn/networking/comp/action_history.hpp"
#include "edyn/networking/comp/discontinuity.hpp"
#include "edyn/networking/comp/entity_owner.hpp"
#include "edyn/networking/comp/network_input.hpp"
#include "edyn/networking/comp/networked_comp.hpp"
#include "edyn/networking/comp/remote_client.hpp"
#include "edyn/networking/context/client_network_context.hpp"
#include "edyn/networking/context/server_network_context.hpp"
#include "edyn/networking/extrapolation/extrapolation_modified_comp.hpp"
#include "edyn/networking/extrapolation/extrapolation_request.hpp"
#include "edyn/networking/extrapolation/extrapolation_result.hpp"
#include "edyn/networking/extrapolation/extrapolation_worker.hpp"
#include "edyn/networking/networking.hpp"
#include "edyn/networking/networking_external.hpp"
#include "edyn/networking/packet/client_created.hpp"
#include "edyn/networking/packet/create_entity.hpp"
#include "edyn/networking/packet/destroy_entity.hpp"
#include "edyn/networking/packet/edyn_packet.hpp"
#include "edyn/networking/packet/registry_snapshot.hpp"
#include "edyn/networking/packet/server_settings.hpp"
#include "edyn/networking/packet/set_aabb_of_interest.hpp"
#include "edyn/networking/packet/set_playout_delay.hpp"
#include "edyn/networking/packet/time_request.hpp"
#include "edyn/networking/packet/time_response.hpp"
#include "edyn/networking/packet/update_entity_map.hpp"
#include "edyn/networking/settings/client_network_settings.hpp"
#include "edyn/networking/settings/server_network_settings.hpp"
#include "edyn/networking/sys/accumulate_discontinuities.hpp"
#include "edyn/networking/sys/assign_previous_transforms.hpp"
#include "edyn/networking/sys/client_side.hpp"
#include "edyn/networking/sys/decay_discontinuities.hpp"
#include "edyn/networking/sys/server_side.hpp"
#include "edyn/networking/sys/update_aabbs_of_interest.hpp"
#include "edyn/networking/util/client_snapshot_exporter.hpp"
#include "edyn/networking/util/client_snapshot_importer.hpp"
#include "edyn/networking/util/clock_sync.hpp"
#include "edyn/networking/util/import_contact_manifolds.hpp"
#include "edyn/networking/util/input_state_history.hpp"
#include "edyn/networking/util/pool_snapshot.hpp"
#include "edyn/networking/util/pool_snapshot_data.hpp"
#include "edyn/networking/util/process_extrapolation_result.hpp"
#include "edyn/networking/util/process_update_entity_map_packet.hpp"
#include "edyn/networking/util/server_snapshot_exporter.hpp"
#include "edyn/networking/util/server_snapshot_importer.hpp"
#include "edyn/networking/util/snap_to_pool_snapshot.hpp"
#include "edyn/parallel/atomic_counter.hpp"
#include "edyn/parallel/atomic_counter_sync.hpp"
#include "edyn/parallel/job.hpp"
#include "edyn/parallel/job_dispatcher.hpp"
#include "edyn/parallel/job_queue.hpp"
#include "edyn/parallel/job_queue_scheduler.hpp"
#include "edyn/parallel/message.hpp"
#include "edyn/parallel/message_dispatcher.hpp"
#include "edyn/parallel/parallel_for.hpp"
#include "edyn/parallel/parallel_for_async.hpp"
#include "edyn/parallel/worker.hpp"
#include "edyn/replication/entity_map.hpp"
#include "edyn/replication/make_reg_op_builder.hpp"
#include "edyn/replication/map_child_entity.hpp"
#include "edyn/replication/register_external.hpp"
#include "edyn/replication/registry_operation.hpp"
#include "edyn/replication/registry_operation_builder.hpp"
#include "edyn/replication/registry_operation_observer.hpp"
#include "edyn/serialization/entt_s11n.hpp"
#include "edyn/serialization/file_archive.hpp"
#include "edyn/serialization/math_s11n.hpp"
#include "edyn/serialization/memory_archive.hpp"
#include "edyn/serialization/paged_triangle_mesh_s11n.hpp"
#include "edyn/serialization/s11n.hpp"
#include "edyn/serialization/s11n_util.hpp"
#include "edyn/serialization/static_tree_s11n.hpp"
#include "edyn/serialization/std_s11n.hpp"
#include "edyn/serialization/triangle_mesh_s11n.hpp"
#include "edyn/shapes/box_shape.hpp"
#include "edyn/shapes/capsule_shape.hpp"
#include "edyn/shapes/compound_shape.hpp"
#include "edyn/shapes/convex_mesh.hpp"
#include "edyn/shapes/create_paged_triangle_mesh.hpp"
#include "edyn/shapes/cylinder_shape.hpp"
#include "edyn/shapes/mesh_shape.hpp"
#include "edyn/shapes/paged_mesh_shape.hpp"
#include "edyn/shapes/paged_triangle_mesh.hpp"
#include "edyn/shapes/plane_shape.hpp"
#include "edyn/shapes/polyhedron_shape.hpp"
#include "edyn/shapes/shapes.hpp"
#include "edyn/shapes/sphere_shape.hpp"
#include "edyn/shapes/triangle_mesh.hpp"
#include "edyn/shapes/triangle_mesh_page_loader.hpp"
#include "edyn/simulation/island_manager.hpp"
#include "edyn/simulation/simulation_worker.hpp"
#include "edyn/simulation/stepper_async.hpp"
#include "edyn/simulation/stepper_sequential.hpp"
#include "edyn/sys/apply_gravity.hpp"
#include "edyn/sys/update_aabbs.hpp"
#include "edyn/sys/update_inertias.hpp"
#include "edyn/sys/update_origins.hpp"
#include "edyn/sys/update_presentation.hpp"
#include "edyn/sys/update_rotated_meshes.hpp"
#include "edyn/time/simulation_time.hpp"
#include "edyn/time/time.hpp"
#include "edyn/util/aabb_util.hpp"
#include "edyn/util/array_util.hpp"
#include "edyn/util/collision_util.hpp"
#include "edyn/util/constraint_util.hpp"
#include "edyn/util/contact_manifold_util.hpp"
#include "edyn/util/entt_util.hpp"
#include "edyn/util/exclude_collision.hpp"
#include "edyn/util/gravity_util.hpp"
#include "edyn/util/insert_material_mixing.hpp"
#include "edyn/util/island_util.hpp"
#include "edyn/util/polyhedron_shape_initializer.hpp"
#include "edyn/util/ragdoll.hpp"
#include "edyn/util/rigidbody.hpp"
#include "edyn/util/shape_util.hpp"
#include "edyn/util/tuple_util.hpp"
#include "edyn/util/vector_util.hpp"
#include "edyn/util/visit_component.hpp"