Some code tweaks
This commit is contained in:
parent
8724cf2ea5
commit
a6297a2be1
6 changed files with 16 additions and 20 deletions
|
@ -15,7 +15,7 @@ in vec3 fragPosition;
|
|||
uniform samplerCube environmentMap;
|
||||
|
||||
// Constant values
|
||||
const float PI = 3.14159265359f;
|
||||
const float PI = 3.14159265359;
|
||||
|
||||
// Output fragment color
|
||||
out vec4 finalColor;
|
||||
|
@ -31,8 +31,8 @@ void main()
|
|||
vec3 right = cross(up, normal);
|
||||
up = cross(normal, right);
|
||||
|
||||
float sampleDelta = 0.025f;
|
||||
float nrSamples = 0.0f;
|
||||
float sampleDelta = 0.025;
|
||||
float nrSamples = 0.0;
|
||||
|
||||
for (float phi = 0.0; phi < 2.0*PI; phi += sampleDelta)
|
||||
{
|
||||
|
|
|
@ -34,7 +34,7 @@ void main()
|
|||
mat3 normalMatrix = transpose(inverse(mat3(matModel)));
|
||||
|
||||
// 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
|
||||
fragTexCoord = vertexTexCoord;
|
||||
|
|
|
@ -18,7 +18,7 @@ uniform samplerCube environmentMap;
|
|||
uniform float roughness;
|
||||
|
||||
// Constant values
|
||||
const float PI = 3.14159265359f;
|
||||
const float PI = 3.14159265359;
|
||||
|
||||
// Output fragment color
|
||||
out vec4 finalColor;
|
||||
|
|
|
@ -68,17 +68,11 @@ typedef enum {
|
|||
extern "C" { // Prevents name mangling of functions
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// Global Variables Definition
|
||||
//----------------------------------------------------------------------------------
|
||||
int lightsCount = 0; // Current amount of created lights
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// Module Functions Declaration
|
||||
//----------------------------------------------------------------------------------
|
||||
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 InitLightLocations(Shader shader, Light *light); // Init light shader locations
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -110,7 +104,7 @@ void UpdateLightValues(Shader shader, Light light); // Send light proper
|
|||
//----------------------------------------------------------------------------------
|
||||
// Global Variables Definition
|
||||
//----------------------------------------------------------------------------------
|
||||
// ...
|
||||
static int lightsCount = 0; // Current amount of created lights
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// 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 targetName[32] = "lights[x].target\0";
|
||||
char colorName[32] = "lights[x].color\0";
|
||||
|
||||
// Set location name [x] depending on lights count
|
||||
enabledName[7] = '0' + lightsCount;
|
||||
typeName[7] = '0' + lightsCount;
|
||||
posName[7] = '0' + lightsCount;
|
||||
|
|
|
@ -112,7 +112,7 @@ int main(void)
|
|||
UpdateCamera(&camera); // Update camera
|
||||
|
||||
// Make the lights do differing orbits
|
||||
angle -= 0.02;
|
||||
angle -= 0.02f;
|
||||
lights[0].position.x = cosf(angle)*4.0f;
|
||||
lights[0].position.z = sinf(angle)*4.0f;
|
||||
lights[1].position.x = cosf(-angle*0.6f)*4.0f;
|
||||
|
@ -128,8 +128,8 @@ int main(void)
|
|||
UpdateLightValues(shader, lights[3]);
|
||||
|
||||
// Rotate the torus
|
||||
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateX(-0.025));
|
||||
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateZ(0.012));
|
||||
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateX(-0.025f));
|
||||
modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateZ(0.012f));
|
||||
|
||||
// Update the light shader with the camera view position
|
||||
float cameraPos[3] = { camera.position.x, camera.position.y, camera.position.z };
|
||||
|
@ -161,7 +161,7 @@ int main(void)
|
|||
|
||||
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();
|
||||
//----------------------------------------------------------------------------------
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue