Testing Font shader setup for arrays
This commit is contained in:
		@@ -14,12 +14,32 @@ UILabelNew::UILabelNew(SceneItem *item) : UIComponentRenderable(item) {
 | 
			
		||||
 | 
			
		||||
void UILabelNew::onStart() {
 | 
			
		||||
  std::cout << "Hello new Label" << std::endl;
 | 
			
		||||
  QuadMesh::initQuadMesh(&this->mesh,
 | 
			
		||||
    glm::vec2(0, 0), glm::vec2(0, 0),
 | 
			
		||||
    glm::vec2(32, 32), glm::vec2(1, 1),
 | 
			
		||||
    0.0f
 | 
			
		||||
  );
 | 
			
		||||
 | 
			
		||||
  this->shaderBuffer.init();
 | 
			
		||||
 | 
			
		||||
  struct FontShaderBufferData fontData;
 | 
			
		||||
 | 
			
		||||
  int32_t n = 4 * 4;
 | 
			
		||||
  this->mesh.createBuffers(n * QUAD_VERTICE_COUNT, n * QUAD_INDICE_COUNT);
 | 
			
		||||
  for(int32_t i = 0; i < n; i++) {
 | 
			
		||||
    glm::vec2 size = glm::vec2(32, 32);
 | 
			
		||||
    glm::vec2 pos = glm::vec2(size.x * i, 0) + glm::vec2(2 * i, 0);
 | 
			
		||||
    QuadMesh::bufferQuadMeshWithZ(&this->mesh,
 | 
			
		||||
      pos, glm::vec2(0, 0),
 | 
			
		||||
      pos + size, glm::vec2(1, 1),
 | 
			
		||||
      0.0f, i * QUAD_VERTICE_COUNT, i * QUAD_INDICE_COUNT
 | 
			
		||||
    );
 | 
			
		||||
    fontData.fontQuadParts[i] = i / 4;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fontData.fontParts[0].color = COLOR_RED;
 | 
			
		||||
  fontData.fontParts[1].color = COLOR_GREEN;
 | 
			
		||||
  fontData.fontParts[2].color = COLOR_BLUE;
 | 
			
		||||
  fontData.fontParts[3].color = COLOR_MAGENTA;
 | 
			
		||||
  fontData.fontParts[4].color = COLOR_BLACK;
 | 
			
		||||
  fontData.fontParts[5].color = COLOR_WHITE;
 | 
			
		||||
 | 
			
		||||
  shaderBuffer.buffer(&fontData);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::vector<struct ShaderPassItem> UILabelNew::getUIRenderPasses() {
 | 
			
		||||
@@ -33,10 +53,6 @@ std::vector<struct ShaderPassItem> UILabelNew::getUIRenderPasses() {
 | 
			
		||||
  item.parameterBuffers[shader->bufferUiCanvas] = &canvas->shaderBuffer;
 | 
			
		||||
  item.parameterBuffers[shader->bufferFont] = &this->shaderBuffer;
 | 
			
		||||
 | 
			
		||||
  struct FontShaderBufferData fontData;
 | 
			
		||||
  fontData.fontParts[9].color = COLOR_BLUE;
 | 
			
		||||
  shaderBuffer.buffer(&fontData);
 | 
			
		||||
 | 
			
		||||
  return { item };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user