Fixed SVACE defects in Particles example. 91/247691/1
authorGyörgy Straub <g.straub@partner.samsung.com>
Fri, 13 Nov 2020 10:31:42 +0000 (10:31 +0000)
committerGyörgy Straub <g.straub@partner.samsung.com>
Fri, 13 Nov 2020 10:34:19 +0000 (10:34 +0000)
Change-Id: Ie0c14f01aee1d63e20e20fcabaf51e6274fec1c5
Signed-off-by: György Straub <g.straub@partner.samsung.com>
examples/particles/particle-field.h
examples/particles/particle-view.cpp

index a629572..eb112db 100644 (file)
@@ -93,7 +93,10 @@ struct ParticleField
     for (size_t i = 0; i < numParticles; ++i)
     {
       Vertex v;
-      v.aPosition = Vector3((i % nx) * spacing.x, (i / nx) % ny * spacing.y, (i / nxy) * spacing.z) - offset;
+      float x = float(i % nx);
+      float y = float((i / nx) % ny);
+      float z = float(i / nxy);
+      v.aPosition = Vector3(x, y, z) * spacing - offset;
 
       Vector3 disperseDir(frandDisperse() - .5, frandDisperse() - .5, frandDisperse() - .5);
       disperseDir.Normalize();
index 4af6fdb..36db679 100644 (file)
@@ -262,18 +262,18 @@ ParticleView::ParticleView(const ParticleField& field, Dali::Actor world, Dali::
 
   // scatter variables
   char nameBuffer[64];
-  char* writep = nameBuffer + sprintf(nameBuffer, "uScatter[");
+  char* writep = nameBuffer + snprintf(nameBuffer, sizeof(nameBuffer), "uScatter[");
   for (uint32_t i = 0; i < std::extent<decltype(mScatterProps)>::value; ++i)
   {
-    char* writep2 = writep + sprintf(writep, "%d].", i);
+    char* writep2 = writep + snprintf(writep, sizeof(nameBuffer) - std::distance(nameBuffer, writep), "%d].", i);
 
-    sprintf(writep2, "radiusSqr");
+    snprintf(writep2, sizeof(nameBuffer) - std::distance(nameBuffer, writep2), "radiusSqr");
     mScatterProps[i].mPropRadius = particleShader.RegisterProperty(nameBuffer, 0.f);
 
-    sprintf(writep2, "amount");
+    snprintf(writep2, sizeof(nameBuffer) - std::distance(nameBuffer, writep2), "amount");
     mScatterProps[i].mPropAmount = particleShader.RegisterProperty(nameBuffer, 0.f);
 
-    sprintf(writep2, "ray");
+    snprintf(writep2, sizeof(nameBuffer) - std::distance(nameBuffer, writep2), "ray");
     mScatterProps[i].mPropRay = particleShader.RegisterProperty(nameBuffer, Vector3::ZERO);
   }
 
@@ -285,7 +285,7 @@ ParticleView::ParticleView(const ParticleField& field, Dali::Actor world, Dali::
   const uint32_t skip = GetSkipValue(POPULATION_GRANULARITY, prime);
   uint32_t next = 0;
 
-  writep = nameBuffer + sprintf(nameBuffer, "uOrderLookUp[");
+  writep = nameBuffer + snprintf(nameBuffer, sizeof(nameBuffer), "uOrderLookUp[");
   for (uint32_t i = 0; i < POPULATION_GRANULARITY; ++i)
   {
     do {
@@ -294,7 +294,7 @@ ParticleView::ParticleView(const ParticleField& field, Dali::Actor world, Dali::
     }
     while (next == 0 || next > POPULATION_GRANULARITY);
 
-    sprintf(writep, "%d]", i);
+    snprintf(writep, sizeof(nameBuffer) - std::distance(nameBuffer, writep), "%d]", i);
     particleShader.RegisterProperty(nameBuffer, float(next - 1));
   }