Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6b5222dd authored by Alex Sakhartchouk's avatar Alex Sakhartchouk
Browse files

Perf test

Change-Id: I5cfc1b6dd438b13091993d4669e10fb2e49aaa06
parent 14b0a6bc
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -20,5 +20,14 @@
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity android:name="RsBench"
                  android:label="RsBenchmark"                  
                  android:theme="@android:style/Theme.Black.NoTitleBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>
+1 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ void main() {
   lowp vec4 col2 = texture2D(UNI_Tex2, t0).rgba;
   col0.xyz = col0.xyz*col1.xyz*1.5;
   col0.xyz = mix(col0.xyz, col2.xyz, col2.w);
   col0.w = 0.5;
   gl_FragColor = col0;
}
+29 −0
Original line number Diff line number Diff line
varying vec3 varWorldPos;
varying vec3 varWorldNormal;
varying vec2 varTex0;

void main() {

   vec3 V = normalize(-varWorldPos.xyz);
   vec3 worldNorm = normalize(varWorldNormal);

   vec3 light0Vec = normalize(UNI_light0_Posision.xyz - varWorldPos);
   vec3 light0R = -reflect(light0Vec, worldNorm);
   float light0_Diffuse = clamp(dot(worldNorm, light0Vec), 0.0, 1.0) * UNI_light0_Diffuse;
   float light0Spec = clamp(dot(light0R, V), 0.001, 1.0);
   float light0_Specular = pow(light0Spec, UNI_light0_CosinePower) * UNI_light0_Specular;

   vec3 light1Vec = normalize(UNI_light1_Posision.xyz - varWorldPos);
   vec3 light1R = reflect(light1Vec, worldNorm);
   float light1_Diffuse = clamp(dot(worldNorm, light1Vec), 0.0, 1.0) * UNI_light1_Diffuse;
   float light1Spec = clamp(dot(light1R, V), 0.001, 1.0);
   float light1_Specular = pow(light1Spec, UNI_light1_CosinePower) * UNI_light1_Specular;

   vec2 t0 = varTex0.xy;
   lowp vec4 col = texture2D(UNI_Tex0, t0).rgba;
   col.xyz = col.xyz * (light0_Diffuse * UNI_light0_DiffuseColor.xyz + light1_Diffuse * UNI_light1_DiffuseColor.xyz);
   col.xyz += light0_Specular * UNI_light0_SpecularColor.xyz;
   col.xyz += light1_Specular * UNI_light1_SpecularColor.xyz;
   gl_FragColor = col;
}
+22 −0
Original line number Diff line number Diff line
varying vec3 varWorldPos;
varying vec3 varWorldNormal;
varying vec2 varTex0;

// This is where actual shader code begins
void main() {
   vec4 objPos = ATTRIB_position;
   vec3 oldPos = objPos.xyz;
   objPos.xyz += 0.1*sin(objPos.xyz*2.0 + UNI_time);
   objPos.xyz += 0.05*sin(objPos.xyz*4.0 + UNI_time*0.5);
   objPos.xyz += 0.02*sin(objPos.xyz*7.0 + UNI_time*0.75);
   vec4 worldPos = UNI_model * objPos;
   gl_Position = UNI_proj * worldPos;

   mat3 model3 = mat3(UNI_model[0].xyz, UNI_model[1].xyz, UNI_model[2].xyz);
   vec3 worldNorm = model3 * (ATTRIB_normal + oldPos - objPos.xyz);
   //vec3 worldNorm = model3 * ATTRIB_normal;

   varWorldPos = worldPos.xyz;
   varWorldNormal = worldNorm;
   varTex0 = ATTRIB_texture0;
}
+17 −0
Original line number Diff line number Diff line
varying vec3 varWorldPos;
varying vec3 varWorldNormal;
varying vec2 varTex0;

// This is where actual shader code begins
void main() {
   vec4 objPos = ATTRIB_position;
   vec4 worldPos = UNI_model * objPos;
   gl_Position = UNI_proj * worldPos;

   mat3 model3 = mat3(UNI_model[0].xyz, UNI_model[1].xyz, UNI_model[2].xyz);
   vec3 worldNorm = model3 * ATTRIB_normal;

   varWorldPos = worldPos.xyz;
   varWorldNormal = worldNorm;
   varTex0 = ATTRIB_texture0;
}
Loading