This interface is used for build specific mesh pack data.
564 {
566
568
569 for (uint32_t i = 0; i <
m_Rows; i++)
570 {
571 const float rowRamp = i /
static_cast<float>(
m_Rows - 1) * 180.0f;
572
574 {
575 const uint32_t vtIndex = i *
m_Columns + j;
576 const float colRamp = j * 360.0f /
static_cast<float>(
m_Columns - 1);
577
578 glm::vec3 position{ glm::sin(glm::radians(rowRamp)) * glm::sin(glm::radians(colRamp)), glm::cos(glm::radians(rowRamp)), glm::sin(glm::radians(rowRamp)) * glm::cos(glm::radians(colRamp)) };
579
584
586 }
587 }
588
589 for (uint32_t i = 0; i <
m_Rows - 1; i++)
590 {
591 for (uint32_t j = 0; j <
m_Columns - 1; j++)
592 {
593 const uint32_t vtIndex = i *
m_Columns + j;
594
597 }
598 }
599
600 if (isCreateBuffer)
601 {
604 }
605
606 return true;
607 }
#define SPICES_PROFILE_ZONE
virtual bool OnCreatePack(bool isCreateBuffer=true)
This interface is used for build specific mesh pack data.
MeshResource m_MeshResource
Mesh Resources.
void CreateBuffer()
Create Vertices buffer anf Indices buffer.
static void GenerateMeshLodClusterHierarchy(MeshPack *meshPack)
Generate Mesh Lod Resources.
uint32_t m_Rows
How much rows number we use.
uint32_t m_Columns
How much cols number we use.
std::shared_ptr< std::vector< T > > attributes
Attribute Data Array.
Positions positions
Declare value.
PrimitiveVertices primitiveVertices