summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRay <[email protected]>2018-12-18 17:22:13 +0100
committerRay <[email protected]>2018-12-18 17:22:13 +0100
commit8f95518858545ffb9c9ddc49bbb638385cb37503 (patch)
treea036fb3e20ce9dd994e46f6cb4bf1a2b2460eac1
parentdb96cf4a8ba87f10c3f0bb1043f846f2233dba03 (diff)
downloadraylib-8f95518858545ffb9c9ddc49bbb638385cb37503.tar.gz
raylib-8f95518858545ffb9c9ddc49bbb638385cb37503.zip
Reviewed some examples to work on RPI
-rw-r--r--examples/models/models_mesh_picking.c12
-rw-r--r--examples/shaders/shaders_custom_uniform.c13
-rw-r--r--examples/shaders/shaders_model_shader.c12
-rw-r--r--examples/shaders/shaders_shapes_textures.c13
4 files changed, 37 insertions, 13 deletions
diff --git a/examples/models/models_mesh_picking.c b/examples/models/models_mesh_picking.c
index c5521373..9b12e98c 100644
--- a/examples/models/models_mesh_picking.c
+++ b/examples/models/models_mesh_picking.c
@@ -25,14 +25,14 @@ int main()
InitWindow(screenWidth, screenHeight, "raylib [models] example - mesh picking");
// Define the camera to look into our 3d world
- Camera camera;
+ Camera camera = { 0 };
camera.position = (Vector3){ 20.0f, 20.0f, 20.0f }; // Camera position
camera.target = (Vector3){ 0.0f, 8.0f, 0.0f }; // Camera looking at point
camera.up = (Vector3){ 0.0f, 1.6f, 0.0f }; // Camera up vector (rotation towards target)
camera.fovy = 45.0f; // Camera field-of-view Y
camera.type = CAMERA_PERSPECTIVE; // Camera mode type
- Ray ray; // Picking ray
+ Ray ray = { 0 }; // Picking ray
Model tower = LoadModel("resources/models/turret.obj"); // Load OBJ model
Texture2D texture = LoadTexture("resources/models/turret_diffuse.png"); // Load model texture
@@ -62,7 +62,7 @@ int main()
UpdateCamera(&camera); // Update camera
// Display information about closest hit
- RayHitInfo nearestHit;
+ RayHitInfo nearestHit = { 0 };
char *hitObjectName = "None";
nearestHit.distance = FLT_MAX;
nearestHit.hit = false;
@@ -95,7 +95,7 @@ int main()
}
else hitTriangle = false;
- RayHitInfo meshHitInfo;
+ RayHitInfo meshHitInfo = { 0 };
// Check ray collision against bounding box first, before trying the full ray-mesh test
if (CheckCollisionRayBox(ray, towerBBox))
@@ -113,7 +113,9 @@ int main()
hitObjectName = "Mesh";
}
- } hitMeshBBox = false;
+ }
+
+ hitMeshBBox = false;
//----------------------------------------------------------------------------------
// Draw
diff --git a/examples/shaders/shaders_custom_uniform.c b/examples/shaders/shaders_custom_uniform.c
index f898ac78..de76a376 100644
--- a/examples/shaders/shaders_custom_uniform.c
+++ b/examples/shaders/shaders_custom_uniform.c
@@ -18,6 +18,12 @@
#include "raylib.h"
+#if defined(PLATFORM_DESKTOP)
+ #define GLSL_VERSION 330
+#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB
+ #define GLSL_VERSION 100
+#endif
+
int main()
{
// Initialization
@@ -41,10 +47,11 @@ int main()
Texture2D texture = LoadTexture("resources/models/barracks_diffuse.png"); // Load model texture (diffuse map)
model.material.maps[MAP_DIFFUSE].texture = texture; // Set model diffuse texture
- Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position
+ Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position
- Shader shader = LoadShader("resources/shaders/glsl330/base.vs",
- "resources/shaders/glsl330/swirl.fs"); // Load postpro shader
+ // Load postprocessing shader
+ // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader
+ Shader shader = LoadShader(0, FormatText("resources/shaders/glsl%i/swirl.fs", GLSL_VERSION));
// Get variable (uniform) location on the shader to connect with the program
// NOTE: If uniform variable could not be found in the shader, function returns -1
diff --git a/examples/shaders/shaders_model_shader.c b/examples/shaders/shaders_model_shader.c
index e80d1fdc..6c64f0ef 100644
--- a/examples/shaders/shaders_model_shader.c
+++ b/examples/shaders/shaders_model_shader.c
@@ -18,6 +18,12 @@
#include "raylib.h"
+#if defined(PLATFORM_DESKTOP)
+ #define GLSL_VERSION 330
+#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB
+ #define GLSL_VERSION 100
+#endif
+
int main()
{
// Initialization
@@ -39,8 +45,10 @@ int main()
Model model = LoadModel("resources/models/watermill.obj"); // Load OBJ model
Texture2D texture = LoadTexture("resources/models/watermill_diffuse.png"); // Load model texture
- Shader shader = LoadShader("resources/shaders/glsl330/base.vs",
- "resources/shaders/glsl330/grayscale.fs"); // Load model shader
+
+ // Load shader for model
+ // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader
+ Shader shader = LoadShader(0, FormatText("resources/shaders/glsl%i/grayscale.fs", GLSL_VERSION));
model.material.shader = shader; // Set shader effect to 3d model
model.material.maps[MAP_DIFFUSE].texture = texture; // Bind texture to model
diff --git a/examples/shaders/shaders_shapes_textures.c b/examples/shaders/shaders_shapes_textures.c
index e8c36a19..5ee5d560 100644
--- a/examples/shaders/shaders_shapes_textures.c
+++ b/examples/shaders/shaders_shapes_textures.c
@@ -18,6 +18,12 @@
#include "raylib.h"
+#if defined(PLATFORM_DESKTOP)
+ #define GLSL_VERSION 330
+#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB
+ #define GLSL_VERSION 100
+#endif
+
int main()
{
// Initialization
@@ -29,9 +35,10 @@ int main()
Texture2D fudesumi = LoadTexture("resources/fudesumi.png");
- // NOTE: Using GLSL 330 shader version, on OpenGL ES 2.0 use GLSL 100 shader version
- Shader shader = LoadShader("resources/shaders/glsl330/base.vs",
- "resources/shaders/glsl330/grayscale.fs");
+ // Load shader to be used on some parts drawing
+ // NOTE 1: Using GLSL 330 shader version, on OpenGL ES 2.0 use GLSL 100 shader version
+ // NOTE 2: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader
+ Shader shader = LoadShader(0, FormatText("resources/shaders/glsl%i/grayscale.fs", GLSL_VERSION));
SetTargetFPS(60);
//--------------------------------------------------------------------------------------