@@ -952,6 +952,7 @@ namespace vgfw
952
952
RenderContext& setUniform1i (const std::string& name, int32_t );
953
953
RenderContext& setUniform1ui (const std::string& name, uint32_t );
954
954
955
+ RenderContext& setUniformVec2 (const std::string& name, const glm::vec2&);
955
956
RenderContext& setUniformVec3 (const std::string& name, const glm::vec3&);
956
957
RenderContext& setUniformVec4 (const std::string& name, const glm::vec4&);
957
958
@@ -1220,7 +1221,9 @@ namespace vgfw
1220
1221
int indexInOwnerModel {-1 };
1221
1222
resource::Model* ownerModel {nullptr };
1222
1223
1223
- void build (renderer::VertexFormat::Builder& vertexFormatBuilder, const glm::vec3& scale, renderer::RenderContext& rc);
1224
+ void build (renderer::VertexFormat::Builder& vertexFormatBuilder,
1225
+ const glm::vec3& scale,
1226
+ renderer::RenderContext& rc);
1224
1227
1225
1228
private:
1226
1229
friend class renderer ::RenderContext;
@@ -2479,6 +2482,16 @@ namespace vgfw
2479
2482
return *this ;
2480
2483
}
2481
2484
2485
+ RenderContext& RenderContext::setUniformVec2 (const std::string& name, const glm::vec2& v)
2486
+ {
2487
+ const auto location = glGetUniformLocation (m_CurrentPipeline.m_Program , name.data ());
2488
+ if (location != GL_INVALID_INDEX)
2489
+ {
2490
+ glProgramUniform2fv (m_CurrentPipeline.m_Program , location, 1 , glm::value_ptr (v));
2491
+ }
2492
+ return *this ;
2493
+ }
2494
+
2482
2495
RenderContext& RenderContext::setUniformVec3 (const std::string& name, const glm::vec3& v)
2483
2496
{
2484
2497
const auto location = glGetUniformLocation (m_CurrentPipeline.m_Program , name.data ());
@@ -3500,7 +3513,9 @@ namespace vgfw
3500
3513
3501
3514
namespace resource
3502
3515
{
3503
- void MeshPrimitive::build (renderer::VertexFormat::Builder& vertexFormatBuilder, const glm::vec3& scale, renderer::RenderContext& rc)
3516
+ void MeshPrimitive::build (renderer::VertexFormat::Builder& vertexFormatBuilder,
3517
+ const glm::vec3& scale,
3518
+ renderer::RenderContext& rc)
3504
3519
{
3505
3520
vertexFormat = vertexFormatBuilder.build ();
3506
3521
indexCount = indices.size ();
@@ -3714,9 +3729,9 @@ namespace vgfw
3714
3729
{
3715
3730
std::string inputfile = modelPath.generic_string ();
3716
3731
tinyobj::ObjReaderConfig readerConfig;
3717
-
3718
- // The MTL file path was not correctly parsed when loading the OBJ model, causing the material file to fail to load.
3719
- // Comment out this line to load the MTL file from the same directory as the OBJ file.
3732
+
3733
+ // The MTL file path was not correctly parsed when loading the OBJ model, causing the material file to fail
3734
+ // to load. Comment out this line to load the MTL file from the same directory as the OBJ file.
3720
3735
// readerConfig.mtl_search_path = "./"; // Path to material files
3721
3736
3722
3737
tinyobj::ObjReader reader;
0 commit comments