merge vertexbuffer and indexbuffer to buffer.cpp/h file

This commit is contained in:
2025-11-22 15:19:48 +08:00
parent d24ca28e74
commit 104b08ef24
23 changed files with 337 additions and 230 deletions

View File

@ -9,4 +9,4 @@ file(COPY ${ASSETS} DESTINATION ${CMAKE_BINARY_DIR}/bin)
add_executable(${PROJECT_NAME} ${SRC_SOURCE})
target_link_libraries(${PROJECT_NAME} PRIVATE Prism)
target_compile_definitions(${PROJECT_NAME} PRIVATE ENABLE_DOCKSPACE)
#target_compile_definitions(${PROJECT_NAME} PRIVATE ENABLE_DOCKSPACE)

View File

@ -57,6 +57,11 @@ void DemoLayer::OnDetach()
void DemoLayer::OnUpdate()
{
Prism::Renderer::Clear(m_ClearColor[0], m_ClearColor[1], m_ClearColor[2], m_ClearColor[3]);
Prism::UniformBufferDeclaration<sizeof(glm::vec4), 1> buffer;
buffer.Push("u_Color", m_TriangleColor);
m_Shader->UploadUniformBuffer(buffer);
m_Shader->Bind();
m_VertexBuffer->Bind();
m_IndexBuffer->Bind();
@ -71,6 +76,7 @@ void DemoLayer::OnImGuiRender()
ImGui::Begin("GameLayer");
ImGui::ColorEdit4("Clear Color", m_ClearColor);
ImGui::ColorEdit4("Triangle Color", glm::value_ptr(m_TriangleColor));
ImGui::End();
#if ENABLE_DOCKSPACE

View File

@ -21,6 +21,7 @@ public:
private:
float m_ClearColor[4] = { 0.2f, 0.2f, 0.2f, 1.0f };
glm::vec4 m_TriangleColor = { 0.4f, 0.5f, 0.6f, 1.0f };
std::unique_ptr<Prism::VertexBuffer> m_VertexBuffer;
std::unique_ptr<Prism::IndexBuffer> m_IndexBuffer;

View File

@ -13,7 +13,9 @@ void main()
layout(location = 0) out vec4 o_Color;
uniform vec4 u_Color;
void main()
{
o_Color = vec4(1.0, 0.0, 1.0, 1.0);
o_Color = u_Color;
}