|
|
|
@ -506,9 +506,10 @@ namespace AZ::AtomBridge
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> transformedVertices = ToWorldSpacePosition(vertices);
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicDrawArguments drawArgs;
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicDrawArguments drawArgs;
|
|
|
|
drawArgs.m_verts = vertices.data();
|
|
|
|
drawArgs.m_verts = transformedVertices.data();
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(vertices.size());
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(transformedVertices.size());
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
drawArgs.m_colorCount = 1;
|
|
|
|
drawArgs.m_colorCount = 1;
|
|
|
|
drawArgs.m_opacityType = m_rendState.m_opacityType;
|
|
|
|
drawArgs.m_opacityType = m_rendState.m_opacityType;
|
|
|
|
@ -526,9 +527,10 @@ namespace AZ::AtomBridge
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> transformedVertices = ToWorldSpacePosition(vertices);
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicIndexedDrawArguments drawArgs;
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicIndexedDrawArguments drawArgs;
|
|
|
|
drawArgs.m_verts = vertices.data();
|
|
|
|
drawArgs.m_verts = transformedVertices.data();
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(vertices.size());
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(transformedVertices.size());
|
|
|
|
drawArgs.m_indices = indices.data();
|
|
|
|
drawArgs.m_indices = indices.data();
|
|
|
|
drawArgs.m_indexCount = aznumeric_cast<uint32_t>(indices.size());
|
|
|
|
drawArgs.m_indexCount = aznumeric_cast<uint32_t>(indices.size());
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
@ -659,9 +661,10 @@ namespace AZ::AtomBridge
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
if (m_auxGeomPtr)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> transformedLines = ToWorldSpacePosition(lines);
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicDrawArguments drawArgs;
|
|
|
|
AZ::RPI::AuxGeomDraw::AuxGeomDynamicDrawArguments drawArgs;
|
|
|
|
drawArgs.m_verts = lines.data();
|
|
|
|
drawArgs.m_verts = transformedLines.data();
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(lines.size());
|
|
|
|
drawArgs.m_vertCount = aznumeric_cast<uint32_t>(transformedLines.size());
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
drawArgs.m_colors = &color;
|
|
|
|
drawArgs.m_colorCount = 1;
|
|
|
|
drawArgs.m_colorCount = 1;
|
|
|
|
drawArgs.m_size = m_rendState.m_lineWidth;
|
|
|
|
drawArgs.m_size = m_rendState.m_lineWidth;
|
|
|
|
@ -1513,6 +1516,22 @@ namespace AZ::AtomBridge
|
|
|
|
return m_rendState.m_transformStack[m_rendState.m_currentTransform];
|
|
|
|
return m_rendState.m_transformStack[m_rendState.m_currentTransform];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> AtomDebugDisplayViewportInterface::ToWorldSpacePosition(const AZStd::vector<AZ::Vector3>& positions) const
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> transformedPositions;
|
|
|
|
|
|
|
|
transformedPositions.resize_no_construct(positions.size());
|
|
|
|
|
|
|
|
AZStd::transform(positions.begin(), positions.end(), transformedPositions.begin(), [this](const AZ::Vector3& position){ return ToWorldSpacePosition(position); });
|
|
|
|
|
|
|
|
return transformedPositions;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> AtomDebugDisplayViewportInterface::ToWorldSpaceVector(const AZStd::vector<AZ::Vector3>& vectors) const
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
AZStd::vector<AZ::Vector3> transformedVectors;
|
|
|
|
|
|
|
|
transformedVectors.resize_no_construct(vectors.size());
|
|
|
|
|
|
|
|
AZStd::transform(vectors.begin(), vectors.end(), transformedVectors.begin(), [this](const AZ::Vector3& vector) { return ToWorldSpaceVector(vector); });
|
|
|
|
|
|
|
|
return transformedVectors;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
AZ::RPI::ViewportContextPtr AtomDebugDisplayViewportInterface::GetViewportContext() const
|
|
|
|
AZ::RPI::ViewportContextPtr AtomDebugDisplayViewportInterface::GetViewportContext() const
|
|
|
|
{
|
|
|
|
{
|
|
|
|
auto viewContextManager = AZ::Interface<AZ::RPI::ViewportContextRequestsInterface>::Get();
|
|
|
|
auto viewContextManager = AZ::Interface<AZ::RPI::ViewportContextRequestsInterface>::Get();
|
|
|
|
|