52 virtual void cleanup()
override;
57 struct RtShapeInstanceData
61 return shape !=
nullptr;
69 using RtShapeInstanceDataVector = std::vector<RtShapeInstanceData>;
77 RtShapeInstanceDataVector m_rtShapeInstances;
94 virtual void synchronize(
const CallbackData& data )
override;
95 virtual void cleanup()
override;
102 struct RtShapeInstanceScale
108 using RtShapeInstanceScaleVector = std::vector<RtShapeInstanceScale>;
113 RtShapeInstanceScaleVector shapeData;
116 using LsDataVector = std::vector<LsData>;
118 using ShapeTypeShapeScaleRtShapeCache = std::array<ShapeScaleRtShapeTable, agxCollide::Shape::NUM_TYPES>;
123 LsData::RtShapeInstanceScale& shapeScale,
124 RtInstanceData* shapeInstanceData );
129 LsDataVector m_lsData;
130 ShapeTypeShapeScaleRtShapeCache m_shapeCache;
154 virtual void cleanup()
override;
159 struct DeformableData
168 using DeformableDataVector = std::vector<DeformableData>;
173 DeformableDataVector m_data;
191 virtual void synchronize(
const CallbackData& data )
override;
192 virtual void cleanup()
override;
197 struct WireSegmentData
202 using WireSegmentDataBuffer = std::vector<WireSegmentData>;
207 WireSegmentDataBuffer segmentDataBuffer;
210 size_t numSegments = 0;
213 using WireDataVector = std::vector<WireData>;
221 WireDataVector m_wireData;
237 struct ParticleTerrainId
249 return terrain !=
nullptr;
254 std::shared_ptr<RtVec3fVector> vertices;
258 static void updateHeights(RtTerrainData& terrainData);
262 const SurfaceMaterialTable& materialTable );
267 using ParticleShapeInstances = std::vector<RtShapeInstance>;
271 ParticleShapeInstances m_particleInstances;
284 virtual void synchronize(
const CallbackData& data )
override;
285 virtual void cleanup()
override;
295 using RtTerrainDataVector = std::vector<RtTerrainData>;
296 RtTerrainDataVector m_rtTerrainInstances;
309 virtual void synchronize(
const CallbackData& data )
override;
310 virtual void cleanup()
override;
317 struct RtTerrainPagerData
321 return terrainPager !=
nullptr;
326 RtTerrainDataMap terrainData;
330 bool syncronizeTiles(RtTerrainPagerData& data, SurfaceMaterialTable& materialTable);
333 using RtTerrainPagerDataVector = std::vector<RtTerrainPagerData>;
334 RtTerrainPagerDataVector m_rtTerrainPagerData;
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
Stores triangle mesh data as triangle lists, i.e.
Basic implementation of any structure where bodies are linked/constrained together in a well defined ...
Raytrace system representing agxCollide::Shape instances as mesh(es) in the raytrace environment.
Raytrace system representing agxSDK::LinkedStructure (agxCable::Cable, agxVehicle::Track agxModel::Be...
Base raytrace system handling ordinary and paged agxTerrain::Terrain instances.
Raytrace system handling agxTerrain::Terrain instances.
Raytrace system representing agxWire::Wire instances as meshes in the raytrace environment.
System node is a separate step/operation in an execution tree representing a sensor (or such) in a se...
A terrain model based a 3D grid model with overlapping height field that can be deformed by interacti...
Interface and placeholder of controllers/helpers for wires.
This class is a combined container which has the find complexity of a HashTable, deterministic iterat...
Inheritance with partial specialization due to bug with ref_ptr containers.
A basic particle system that contains all the storages and buffers required for basic operation and a...
Base class providing referencing counted objects.
#define DOXYGEN_END_INTERNAL_BLOCK()
#define DOXYGEN_START_INTERNAL_BLOCK()
The agxSensor namespace contains components to model real-time sensors connected to the physics of AG...
std::shared_ptr< RtShape > RtShapeRef
constexpr RtEntityId NullRtEntityId
Null entity id.
RtEntityId
Entity id > 0 to access user data given raytrace results including ENTITY_ID_I32.
std::shared_ptr< RtScene > RtSceneRef
Material instance in the raytrace environment, containing handle and type.
Raytrace shape instance data with a handle to the dito on the GPU, data and shape (ref-counting so th...