Some code tweaks

This commit is contained in:
Ray 2020-03-03 01:21:06 +01:00
parent 8724cf2ea5
commit a6297a2be1
6 changed files with 16 additions and 20 deletions

View file

@ -15,7 +15,7 @@ in vec3 fragPosition;
uniform samplerCube environmentMap; uniform samplerCube environmentMap;
// Constant values // Constant values
const float PI = 3.14159265359f; const float PI = 3.14159265359;
// Output fragment color // Output fragment color
out vec4 finalColor; out vec4 finalColor;
@ -31,8 +31,8 @@ void main()
vec3 right = cross(up, normal); vec3 right = cross(up, normal);
up = cross(normal, right); up = cross(normal, right);
float sampleDelta = 0.025f; float sampleDelta = 0.025;
float nrSamples = 0.0f; float nrSamples = 0.0;
for (float phi = 0.0; phi < 2.0*PI; phi += sampleDelta) for (float phi = 0.0; phi < 2.0*PI; phi += sampleDelta)
{ {

View file

@ -34,7 +34,7 @@ void main()
mat3 normalMatrix = transpose(inverse(mat3(matModel))); mat3 normalMatrix = transpose(inverse(mat3(matModel)));
// Calculate fragment position based on model transformations // Calculate fragment position based on model transformations
fragPosition = vec3(matModel*vec4(vertexPosition, 1.0f)); fragPosition = vec3(matModel*vec4(vertexPosition, 1.0));
// Send vertex attributes to fragment shader // Send vertex attributes to fragment shader
fragTexCoord = vertexTexCoord; fragTexCoord = vertexTexCoord;

View file

@ -18,7 +18,7 @@ uniform samplerCube environmentMap;
uniform float roughness; uniform float roughness;
// Constant values // Constant values
const float PI = 3.14159265359f; const float PI = 3.14159265359;
// Output fragment color // Output fragment color
out vec4 finalColor; out vec4 finalColor;

View file

@ -68,17 +68,11 @@ typedef enum {
extern "C" { // Prevents name mangling of functions extern "C" { // Prevents name mangling of functions
#endif #endif
//----------------------------------------------------------------------------------
// Global Variables Definition
//----------------------------------------------------------------------------------
int lightsCount = 0; // Current amount of created lights
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// Module Functions Declaration // Module Functions Declaration
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
Light CreateLight(int type, Vector3 position, Vector3 target, Color color, Shader shader); // Create a light and get shader locations Light CreateLight(int type, Vector3 position, Vector3 target, Color color, Shader shader); // Create a light and get shader locations
void UpdateLightValues(Shader shader, Light light); // Send light properties to shader void UpdateLightValues(Shader shader, Light light); // Send light properties to shader
//void InitLightLocations(Shader shader, Light *light); // Init light shader locations
#ifdef __cplusplus #ifdef __cplusplus
} }
@ -110,7 +104,7 @@ void UpdateLightValues(Shader shader, Light light); // Send light proper
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// Global Variables Definition // Global Variables Definition
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// ... static int lightsCount = 0; // Current amount of created lights
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
// Module specific Functions Declaration // Module specific Functions Declaration
@ -142,6 +136,8 @@ Light CreateLight(int type, Vector3 position, Vector3 target, Color color, Shade
char posName[32] = "lights[x].position\0"; char posName[32] = "lights[x].position\0";
char targetName[32] = "lights[x].target\0"; char targetName[32] = "lights[x].target\0";
char colorName[32] = "lights[x].color\0"; char colorName[32] = "lights[x].color\0";
// Set location name [x] depending on lights count
enabledName[7] = '0' + lightsCount; enabledName[7] = '0' + lightsCount;
typeName[7] = '0' + lightsCount; typeName[7] = '0' + lightsCount;
posName[7] = '0' + lightsCount; posName[7] = '0' + lightsCount;

View file

@ -112,7 +112,7 @@ int main(void)
UpdateCamera(&camera); // Update camera UpdateCamera(&camera); // Update camera
// Make the lights do differing orbits // Make the lights do differing orbits
angle -= 0.02; angle -= 0.02f;
lights[0].position.x = cosf(angle)*4.0f; lights[0].position.x = cosf(angle)*4.0f;
lights[0].position.z = sinf(angle)*4.0f; lights[0].position.z = sinf(angle)*4.0f;
lights[1].position.x = cosf(-angle*0.6f)*4.0f; lights[1].position.x = cosf(-angle*0.6f)*4.0f;
@ -128,8 +128,8 @@ int main(void)
UpdateLightValues(shader, lights[3]); UpdateLightValues(shader, lights[3]);
// Rotate the torus // Rotate the torus
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateX(-0.025)); modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateX(-0.025f));
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateZ(0.012)); modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateZ(0.012f));
// Update the light shader with the camera view position // Update the light shader with the camera view position
float cameraPos[3] = { camera.position.x, camera.position.y, camera.position.z }; float cameraPos[3] = { camera.position.x, camera.position.y, camera.position.z };
@ -161,7 +161,7 @@ int main(void)
DrawFPS(10, 10); DrawFPS(10, 10);
DrawText("Keys RGB & W toggle lights", 10, 30, 20, DARKGRAY); DrawText("Use keys RGBW to toggle lights", 10, 30, 20, DARKGRAY);
EndDrawing(); EndDrawing();
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------