Advertisement
Guest User

Untitled

a guest
Oct 16th, 2012
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 91.59 KB | None | 0 0
  1. Debug: EGL chosen config ID: 0x9 Native Visual ID: 0x44
  2. Debug: Buffer: 32 bits
  3. Debug: Red: 8 bits
  4. Debug: Green: 8 bits
  5. Debug: Blue: 8 bits
  6. Debug: Alpha: 8 bits
  7. Debug: Depth: 24 bits
  8. Debug: Creating XWindow W: 800 H: 600 VisualID: 0x44
  9. Info: =======================================================
  10. Info: glmark2 2012.08
  11. Info: =======================================================
  12. Info: OpenGL Information
  13. Info: GL_VENDOR: ARM
  14. Info: GL_RENDERER: Mali-400 MP
  15. Info: GL_VERSION: OpenGL ES 2.0
  16. Info: =======================================================
  17. Debug: Loading vertex shader from file None:
  18. Debug: const vec4 MaterialDiffuse = vec4(1.000000, 1.000000, 1.000000, 1.000000);
  19. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  20. Debug: attribute vec3 position;
  21. Debug: attribute vec3 normal;
  22. Debug: attribute vec2 texcoord;
  23. Debug:
  24. Debug: uniform mat4 ModelViewProjectionMatrix;
  25. Debug: uniform mat4 NormalMatrix;
  26. Debug:
  27. Debug: varying vec4 Color;
  28. Debug: varying vec2 TextureCoord;
  29. Debug:
  30. Debug: void main(void)
  31. Debug: {
  32. Debug: // Transform the normal to eye coordinates
  33. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  34. Debug:
  35. Debug: // The LightSourcePosition is actually its direction for directional light
  36. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  37. Debug:
  38. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  39. Debug: // to get the actual color that we will use to draw this vertex with
  40. Debug: float diffuse = max(dot(N, L), 0.0);
  41. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  42. Debug:
  43. Debug: // Set the texture coordinates as a varying
  44. Debug: TextureCoord = texcoord;
  45. Debug:
  46. Debug: // Transform the position to clip coordinates
  47. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  48. Debug: }
  49. Debug: Loading fragment shader from file None:
  50. Debug: #ifdef GL_ES
  51. Debug: precision mediump float;
  52. Debug: #endif
  53. Debug: varying vec4 Color;
  54. Debug: varying vec2 TextureCoord;
  55. Debug:
  56. Debug: void main(void)
  57. Debug: {
  58. Debug: gl_FragColor = Color;
  59. Debug: }
  60. Debug: Loading model from 3ds file '/usr/share/glmark2/models/horse.3ds'
  61. Debug: Object name: HORSE_L_Mate Vertex count: 3582 Face count: 7172
  62. Info: [build] use-vbo=false:Debug: Validation failed! Expected: 0xffa7a7a7 Actual: 0x0 Distance: 289.252485
  63. Validation: Failure
  64. Debug: Loading vertex shader from file None:
  65. Debug: const vec4 MaterialDiffuse = vec4(1.000000, 1.000000, 1.000000, 1.000000);
  66. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  67. Debug: attribute vec3 position;
  68. Debug: attribute vec3 normal;
  69. Debug: attribute vec2 texcoord;
  70. Debug:
  71. Debug: uniform mat4 ModelViewProjectionMatrix;
  72. Debug: uniform mat4 NormalMatrix;
  73. Debug:
  74. Debug: varying vec4 Color;
  75. Debug: varying vec2 TextureCoord;
  76. Debug:
  77. Debug: void main(void)
  78. Debug: {
  79. Debug: // Transform the normal to eye coordinates
  80. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  81. Debug:
  82. Debug: // The LightSourcePosition is actually its direction for directional light
  83. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  84. Debug:
  85. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  86. Debug: // to get the actual color that we will use to draw this vertex with
  87. Debug: float diffuse = max(dot(N, L), 0.0);
  88. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  89. Debug:
  90. Debug: // Set the texture coordinates as a varying
  91. Debug: TextureCoord = texcoord;
  92. Debug:
  93. Debug: // Transform the position to clip coordinates
  94. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  95. Debug: }
  96. Debug: Loading fragment shader from file None:
  97. Debug: #ifdef GL_ES
  98. Debug: precision mediump float;
  99. Debug: #endif
  100. Debug: varying vec4 Color;
  101. Debug: varying vec2 TextureCoord;
  102. Debug:
  103. Debug: void main(void)
  104. Debug: {
  105. Debug: gl_FragColor = Color;
  106. Debug: }
  107. Debug: Loading model from 3ds file '/usr/share/glmark2/models/horse.3ds'
  108. Debug: Object name: HORSE_L_Mate Vertex count: 3582 Face count: 7172
  109. Info: [build] use-vbo=true: Validation: Success
  110. Debug: Reading PNG file /usr/share/glmark2/textures/crate-base.png
  111. Debug: Height: 512 Width: 512 Bpp: 3
  112. Debug: Loading vertex shader from file None:
  113. Debug: const vec4 MaterialDiffuse = vec4(1.000000, 1.000000, 1.000000, 1.000000);
  114. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  115. Debug: attribute vec3 position;
  116. Debug: attribute vec3 normal;
  117. Debug: attribute vec2 texcoord;
  118. Debug:
  119. Debug: uniform mat4 ModelViewProjectionMatrix;
  120. Debug: uniform mat4 NormalMatrix;
  121. Debug:
  122. Debug: varying vec4 Color;
  123. Debug: varying vec2 TextureCoord;
  124. Debug:
  125. Debug: void main(void)
  126. Debug: {
  127. Debug: // Transform the normal to eye coordinates
  128. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  129. Debug:
  130. Debug: // The LightSourcePosition is actually its direction for directional light
  131. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  132. Debug:
  133. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  134. Debug: // to get the actual color that we will use to draw this vertex with
  135. Debug: float diffuse = max(dot(N, L), 0.0);
  136. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  137. Debug:
  138. Debug: // Set the texture coordinates as a varying
  139. Debug: TextureCoord = texcoord;
  140. Debug:
  141. Debug: // Transform the position to clip coordinates
  142. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  143. Debug: }
  144. Debug: Loading fragment shader from file None:
  145. Debug: #ifdef GL_ES
  146. Debug: precision mediump float;
  147. Debug: #endif
  148. Debug: uniform sampler2D MaterialTexture0;
  149. Debug:
  150. Debug: varying vec4 Color;
  151. Debug: varying vec2 TextureCoord;
  152. Debug:
  153. Debug: void main(void)
  154. Debug: {
  155. Debug: vec4 texel = texture2D(MaterialTexture0, TextureCoord);
  156. Debug: gl_FragColor = texel * Color;
  157. Debug: }
  158. Debug:
  159. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cube.3ds'
  160. Debug: Object name: Cube Vertex count: 20 Face count: 12
  161. Info: [texture] texture-filter=nearest:Debug: Validation failed! Expected: 0xff282a2b Actual: 0xffaeaeae Distance: 229.218237
  162. Validation: Failure
  163. Debug: Reading PNG file /usr/share/glmark2/textures/crate-base.png
  164. Debug: Height: 512 Width: 512 Bpp: 3
  165. Debug: Loading vertex shader from file None:
  166. Debug: const vec4 MaterialDiffuse = vec4(1.000000, 1.000000, 1.000000, 1.000000);
  167. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  168. Debug: attribute vec3 position;
  169. Debug: attribute vec3 normal;
  170. Debug: attribute vec2 texcoord;
  171. Debug:
  172. Debug: uniform mat4 ModelViewProjectionMatrix;
  173. Debug: uniform mat4 NormalMatrix;
  174. Debug:
  175. Debug: varying vec4 Color;
  176. Debug: varying vec2 TextureCoord;
  177. Debug:
  178. Debug: void main(void)
  179. Debug: {
  180. Debug: // Transform the normal to eye coordinates
  181. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  182. Debug:
  183. Debug: // The LightSourcePosition is actually its direction for directional light
  184. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  185. Debug:
  186. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  187. Debug: // to get the actual color that we will use to draw this vertex with
  188. Debug: float diffuse = max(dot(N, L), 0.0);
  189. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  190. Debug:
  191. Debug: // Set the texture coordinates as a varying
  192. Debug: TextureCoord = texcoord;
  193. Debug:
  194. Debug: // Transform the position to clip coordinates
  195. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  196. Debug: }
  197. Debug: Loading fragment shader from file None:
  198. Debug: #ifdef GL_ES
  199. Debug: precision mediump float;
  200. Debug: #endif
  201. Debug: uniform sampler2D MaterialTexture0;
  202. Debug:
  203. Debug: varying vec4 Color;
  204. Debug: varying vec2 TextureCoord;
  205. Debug:
  206. Debug: void main(void)
  207. Debug: {
  208. Debug: vec4 texel = texture2D(MaterialTexture0, TextureCoord);
  209. Debug: gl_FragColor = texel * Color;
  210. Debug: }
  211. Debug:
  212. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cube.3ds'
  213. Debug: Object name: Cube Vertex count: 20 Face count: 12
  214. Info: [texture] texture-filter=linear: Validation: Success
  215. Debug: Reading PNG file /usr/share/glmark2/textures/crate-base.png
  216. Debug: Height: 512 Width: 512 Bpp: 3
  217. Debug: Loading vertex shader from file None:
  218. Debug: const vec4 MaterialDiffuse = vec4(1.000000, 1.000000, 1.000000, 1.000000);
  219. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  220. Debug: attribute vec3 position;
  221. Debug: attribute vec3 normal;
  222. Debug: attribute vec2 texcoord;
  223. Debug:
  224. Debug: uniform mat4 ModelViewProjectionMatrix;
  225. Debug: uniform mat4 NormalMatrix;
  226. Debug:
  227. Debug: varying vec4 Color;
  228. Debug: varying vec2 TextureCoord;
  229. Debug:
  230. Debug: void main(void)
  231. Debug: {
  232. Debug: // Transform the normal to eye coordinates
  233. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  234. Debug:
  235. Debug: // The LightSourcePosition is actually its direction for directional light
  236. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  237. Debug:
  238. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  239. Debug: // to get the actual color that we will use to draw this vertex with
  240. Debug: float diffuse = max(dot(N, L), 0.0);
  241. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  242. Debug:
  243. Debug: // Set the texture coordinates as a varying
  244. Debug: TextureCoord = texcoord;
  245. Debug:
  246. Debug: // Transform the position to clip coordinates
  247. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  248. Debug: }
  249. Debug: Loading fragment shader from file None:
  250. Debug: #ifdef GL_ES
  251. Debug: precision mediump float;
  252. Debug: #endif
  253. Debug: uniform sampler2D MaterialTexture0;
  254. Debug:
  255. Debug: varying vec4 Color;
  256. Debug: varying vec2 TextureCoord;
  257. Debug:
  258. Debug: void main(void)
  259. Debug: {
  260. Debug: vec4 texel = texture2D(MaterialTexture0, TextureCoord);
  261. Debug: gl_FragColor = texel * Color;
  262. Debug: }
  263. Debug:
  264. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cube.3ds'
  265. Debug: Object name: Cube Vertex count: 20 Face count: 12
  266. Info: [texture] texture-filter=mipmap: Validation: Success
  267. Debug: Loading vertex shader from file None:
  268. Debug: const vec4 MaterialDiffuse = vec4(0.000000, 0.000000, 1.000000, 1.000000);
  269. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  270. Debug: attribute vec3 position;
  271. Debug: attribute vec3 normal;
  272. Debug: attribute vec2 texcoord;
  273. Debug:
  274. Debug: uniform mat4 ModelViewProjectionMatrix;
  275. Debug: uniform mat4 NormalMatrix;
  276. Debug:
  277. Debug: varying vec4 Color;
  278. Debug: varying vec2 TextureCoord;
  279. Debug:
  280. Debug: void main(void)
  281. Debug: {
  282. Debug: // Transform the normal to eye coordinates
  283. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  284. Debug:
  285. Debug: // The LightSourcePosition is actually its direction for directional light
  286. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  287. Debug:
  288. Debug: // Multiply the diffuse value by the vertex color (which is fixed in this case)
  289. Debug: // to get the actual color that we will use to draw this vertex with
  290. Debug: float diffuse = max(dot(N, L), 0.0);
  291. Debug: Color = vec4(diffuse * MaterialDiffuse.rgb, MaterialDiffuse.a);
  292. Debug:
  293. Debug: // Set the texture coordinates as a varying
  294. Debug: TextureCoord = texcoord;
  295. Debug:
  296. Debug: // Transform the position to clip coordinates
  297. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  298. Debug: }
  299. Debug: Loading fragment shader from file None:
  300. Debug: #ifdef GL_ES
  301. Debug: precision mediump float;
  302. Debug: #endif
  303. Debug: varying vec4 Color;
  304. Debug: varying vec2 TextureCoord;
  305. Debug:
  306. Debug: void main(void)
  307. Debug: {
  308. Debug: gl_FragColor = Color;
  309. Debug: }
  310. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cat.3ds'
  311. Debug: Object name: Mesh1_Materi Vertex count: 7340 Face count: 14348
  312. Info: [shading] shading=gouraud:Debug: Validation failed! Expected: 0xff2d0000 Actual: 0xff111212 Distance: 37.841776
  313. Validation: Failure
  314. Debug: Loading vertex shader from file None:
  315. Debug: attribute vec3 position;
  316. Debug: attribute vec3 normal;
  317. Debug:
  318. Debug: uniform mat4 ModelViewProjectionMatrix;
  319. Debug: uniform mat4 NormalMatrix;
  320. Debug:
  321. Debug: varying vec3 Normal;
  322. Debug:
  323. Debug: void main(void)
  324. Debug: {
  325. Debug: // Transform the normal to eye coordinates
  326. Debug: Normal = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  327. Debug:
  328. Debug: // Transform the position to clip coordinates
  329. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  330. Debug: }
  331. Debug: Loading fragment shader from file None:
  332. Debug: #ifdef GL_ES
  333. Debug: precision mediump float;
  334. Debug: #endif
  335. Debug: const vec3 LightSourceHalfVector = vec3(0.408248, 0.408248, 0.816497);
  336. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  337. Debug: varying vec3 Normal;
  338. Debug:
  339. Debug: void main(void)
  340. Debug: {
  341. Debug: const vec4 LightSourceAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  342. Debug: const vec4 LightSourceDiffuse = vec4(0.8, 0.8, 0.8, 1.0);
  343. Debug: const vec4 LightSourceSpecular = vec4(0.8, 0.8, 0.8, 1.0);
  344. Debug: const vec4 MaterialAmbient = vec4(1.0, 1.0, 1.0, 1.0);
  345. Debug: const vec4 MaterialDiffuse = vec4(0.0, 0.0, 1.0, 1.0);
  346. Debug: const vec4 MaterialSpecular = vec4(1.0, 1.0, 1.0, 1.0);
  347. Debug: const float MaterialShininess = 100.0;
  348. Debug:
  349. Debug: vec3 N = normalize(Normal);
  350. Debug:
  351. Debug: // In the lighting model we are using here (Blinn-Phong with light at
  352. Debug: // infinity, viewer at infinity), the light position/direction and the
  353. Debug: // half vector is constant for the all the fragments.
  354. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  355. Debug: vec3 H = normalize(LightSourceHalfVector);
  356. Debug:
  357. Debug: // Calculate the diffuse color according to Lambertian reflectance
  358. Debug: vec4 diffuse = MaterialDiffuse * LightSourceDiffuse * max(dot(N, L), 0.0);
  359. Debug:
  360. Debug: // Calculate the ambient color
  361. Debug: vec4 ambient = MaterialAmbient * LightSourceAmbient;
  362. Debug:
  363. Debug: // Calculate the specular color according to the Blinn-Phong model
  364. Debug: vec4 specular = MaterialSpecular * LightSourceSpecular *
  365. Debug: pow(max(dot(N,H), 0.0), MaterialShininess);
  366. Debug:
  367. Debug: // Calculate the final color
  368. Debug: gl_FragColor = vec4((ambient + specular + diffuse).xyz, 1.0);
  369. Debug: }
  370. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cat.3ds'
  371. Debug: Object name: Mesh1_Materi Vertex count: 7340 Face count: 14348
  372. Info: [shading] shading=blinn-phong-inf:Debug: Validation failed! Expected: 0xff3e1a1a Actual: 0xff2e0000 Distance: 40.099875
  373. Validation: Failure
  374. Debug: Loading vertex shader from file None:
  375. Debug: attribute vec3 position;
  376. Debug: attribute vec3 normal;
  377. Debug:
  378. Debug: uniform mat4 ModelViewProjectionMatrix;
  379. Debug: uniform mat4 NormalMatrix;
  380. Debug: uniform mat4 ModelViewMatrix;
  381. Debug:
  382. Debug: varying vec3 vertex_normal;
  383. Debug: varying vec4 vertex_position;
  384. Debug:
  385. Debug: void main(void)
  386. Debug: {
  387. Debug: vec4 current_position = vec4(position, 1.0);
  388. Debug:
  389. Debug: // Transform the normal to eye coordinates
  390. Debug: vertex_normal = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  391. Debug:
  392. Debug: // Transform the current position to eye coordinates
  393. Debug: vertex_position = ModelViewMatrix * current_position;
  394. Debug:
  395. Debug: // Transform the current position to clip coordinates
  396. Debug: gl_Position = ModelViewProjectionMatrix * current_position;
  397. Debug: }
  398. Debug: Loading fragment shader from file None:
  399. Debug: #ifdef GL_ES
  400. Debug: precision mediump float;
  401. Debug: #endif
  402. Debug: #ifdef GL_ES
  403. Debug: precision mediump float;
  404. Debug: #endif
  405. Debug: const vec4 MaterialDiffuse = vec4(0.000000, 0.000000, 1.000000, 1.000000);
  406. Debug: const vec4 LightColor0 = vec4(0.800000, 0.800000, 0.800000, 1.000000);
  407. Debug: const vec4 LightSourcePosition0 = vec4(0.000000, 1.000000, 0.000000, 1.000000);
  408. Debug: varying vec3 vertex_normal;
  409. Debug: varying vec4 vertex_position;
  410. Debug:
  411. Debug: vec4
  412. Debug: compute_color(vec4 light_position, vec4 diffuse_light_color)
  413. Debug: {
  414. Debug: const vec4 lightAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  415. Debug: const vec4 lightSpecular = vec4(0.8, 0.8, 0.8, 1.0);
  416. Debug: const vec4 matAmbient = vec4(0.2, 0.2, 0.2, 1.0);
  417. Debug: const vec4 matSpecular = vec4(1.0, 1.0, 1.0, 1.0);
  418. Debug: const float matShininess = 100.0;
  419. Debug: vec3 eye_direction = normalize(-vertex_position.xyz);
  420. Debug: vec3 light_direction = normalize(light_position.xyz/light_position.w -
  421. Debug: vertex_position.xyz/vertex_position.w);
  422. Debug: vec3 normalized_normal = normalize(vertex_normal);
  423. Debug: vec3 reflection = reflect(-light_direction, normalized_normal);
  424. Debug: float specularTerm = pow(max(0.0, dot(reflection, eye_direction)), matShininess);
  425. Debug: float diffuseTerm = max(0.0, dot(normalized_normal, light_direction));
  426. Debug: vec4 specular = (lightSpecular * matSpecular);
  427. Debug: vec4 ambient = (lightAmbient * matAmbient);
  428. Debug: vec4 diffuse = (diffuse_light_color * MaterialDiffuse);
  429. Debug: vec4 result = (specular * specularTerm) + ambient + (diffuse * diffuseTerm);
  430. Debug: return result;
  431. Debug: }
  432. Debug:
  433. Debug: void main(void)
  434. Debug: {
  435. Debug: gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);
  436. Debug: gl_FragColor += compute_color(LightSourcePosition0, LightColor0);
  437. Debug:
  438. Debug: }
  439. Debug: Loading model from 3ds file '/usr/share/glmark2/models/cat.3ds'
  440. Debug: Object name: Mesh1_Materi Vertex count: 7340 Face count: 14348
  441. Info: [shading] shading=phong:Debug: Validation failed! Expected: 0xffad0505 Actual: 0xff3e1a1a Distance: 114.904308
  442. Validation: Failure
  443. Debug: Loading model from 3ds file '/usr/share/glmark2/models/asteroid-high.3ds'
  444. Debug: Object name: Icosphere.00 Vertex count: 24002 Face count: 48000
  445. Debug: Loading vertex shader from file None:
  446. Debug: attribute vec3 position;
  447. Debug: attribute vec3 normal;
  448. Debug:
  449. Debug: uniform mat4 ModelViewProjectionMatrix;
  450. Debug: uniform mat4 NormalMatrix;
  451. Debug:
  452. Debug: varying vec3 Normal;
  453. Debug:
  454. Debug: void main(void)
  455. Debug: {
  456. Debug: // Transform the normal to eye coordinates
  457. Debug: Normal = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  458. Debug:
  459. Debug: // Transform the position to clip coordinates
  460. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  461. Debug: }
  462. Debug: Loading fragment shader from file None:
  463. Debug: #ifdef GL_ES
  464. Debug: precision mediump float;
  465. Debug: #endif
  466. Debug: const vec3 LightSourceHalfVector = vec3(0.408248, 0.408248, 0.816497);
  467. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  468. Debug: varying vec3 Normal;
  469. Debug:
  470. Debug: void main(void)
  471. Debug: {
  472. Debug: const vec4 LightSourceAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  473. Debug: const vec4 LightSourceDiffuse = vec4(0.8, 0.8, 0.8, 1.0);
  474. Debug: const vec4 LightSourceSpecular = vec4(0.8, 0.8, 0.8, 1.0);
  475. Debug: const vec4 MaterialAmbient = vec4(1.0, 1.0, 1.0, 1.0);
  476. Debug: const vec4 MaterialDiffuse = vec4(1.0, 1.0, 1.0, 1.0);
  477. Debug: const vec4 MaterialSpecular = vec4(0.2, 0.2, 0.2, 1.0);
  478. Debug: const float MaterialShininess = 100.0;
  479. Debug:
  480. Debug: vec3 N = normalize(Normal);
  481. Debug:
  482. Debug: // In the lighting model we are using here (Blinn-Phong with light at
  483. Debug: // infinity, viewer at infinity), the light position/direction and the
  484. Debug: // half vector is constant for the all the fragments.
  485. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  486. Debug: vec3 H = normalize(LightSourceHalfVector);
  487. Debug:
  488. Debug: // Calculate the diffuse color according to Lambertian reflectance
  489. Debug: vec4 diffuse = MaterialDiffuse * LightSourceDiffuse * max(dot(N, L), 0.0);
  490. Debug:
  491. Debug: // Calculate the ambient color
  492. Debug: vec4 ambient = MaterialAmbient * LightSourceAmbient;
  493. Debug:
  494. Debug: // Calculate the specular color according to the Blinn-Phong model
  495. Debug: vec4 specular = MaterialSpecular * LightSourceSpecular *
  496. Debug: pow(max(dot(N,H), 0.0), MaterialShininess);
  497. Debug:
  498. Debug: // Calculate the final color
  499. Debug: gl_FragColor = ambient + specular + diffuse;
  500. Debug: }
  501. Info: [bump] bump-render=high-poly:Debug: Validation failed! Expected: 0xff9c9c9c Actual: 0xffa00505 Distance: 213.583707
  502. Validation: Failure
  503. Debug: Loading model from 3ds file '/usr/share/glmark2/models/asteroid-low.3ds'
  504. Debug: Object name: Icosphere Vertex count: 262 Face count: 480
  505. Debug: Loading vertex shader from file None:
  506. Debug: attribute vec3 position;
  507. Debug: attribute vec2 texcoord;
  508. Debug:
  509. Debug: uniform mat4 ModelViewProjectionMatrix;
  510. Debug:
  511. Debug: varying vec2 TextureCoord;
  512. Debug:
  513. Debug: void main(void)
  514. Debug: {
  515. Debug: TextureCoord = texcoord;
  516. Debug:
  517. Debug: // Transform the position to clip coordinates
  518. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  519. Debug: }
  520. Debug: Loading fragment shader from file None:
  521. Debug: #ifdef GL_ES
  522. Debug: precision mediump float;
  523. Debug: #endif
  524. Debug: const vec3 LightSourceHalfVector = vec3(0.408248, 0.408248, 0.816497);
  525. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  526. Debug: uniform sampler2D NormalMap;
  527. Debug: uniform mat4 NormalMatrix;
  528. Debug:
  529. Debug: varying vec2 TextureCoord;
  530. Debug:
  531. Debug: void main(void)
  532. Debug: {
  533. Debug: const vec4 LightSourceAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  534. Debug: const vec4 LightSourceDiffuse = vec4(0.8, 0.8, 0.8, 1.0);
  535. Debug: const vec4 LightSourceSpecular = vec4(0.8, 0.8, 0.8, 1.0);
  536. Debug: const vec4 MaterialAmbient = vec4(1.0, 1.0, 1.0, 1.0);
  537. Debug: const vec4 MaterialDiffuse = vec4(1.0, 1.0, 1.0, 1.0);
  538. Debug: const vec4 MaterialSpecular = vec4(0.2, 0.2, 0.2, 1.0);
  539. Debug: const float MaterialShininess = 100.0;
  540. Debug:
  541. Debug: // Get the raw normal XYZ data from the normal map
  542. Debug: vec3 normal_raw = texture2D(NormalMap, TextureCoord).xyz;
  543. Debug: // Map "color" range [0, 1.0] to normal range [-1.0, 1.0]
  544. Debug: vec3 normal_scaled = normal_raw * 2.0 - 1.0;
  545. Debug:
  546. Debug: // Convert the normal to eye coordinates. Note that the normal map
  547. Debug: // we are using is using object coordinates (not tangent!) for the
  548. Debug: // normals, so we can multiply by the NormalMatrix as usual.
  549. Debug: vec3 N = normalize(vec3(NormalMatrix * vec4(normal_scaled, 1.0)));
  550. Debug:
  551. Debug: // In the lighting model we are using here (Blinn-Phong with light at
  552. Debug: // infinity, viewer at infinity), the light position/direction and the
  553. Debug: // half vector is constant for the all the fragments.
  554. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  555. Debug: vec3 H = normalize(LightSourceHalfVector);
  556. Debug:
  557. Debug: // Calculate the diffuse color according to Lambertian reflectance
  558. Debug: vec4 diffuse = MaterialDiffuse * LightSourceDiffuse * max(dot(N, L), 0.0);
  559. Debug:
  560. Debug: // Calculate the ambient color
  561. Debug: vec4 ambient = MaterialAmbient * LightSourceAmbient;
  562. Debug:
  563. Debug: // Calculate the specular color according to the Blinn-Phong model
  564. Debug: vec4 specular = MaterialSpecular * LightSourceSpecular *
  565. Debug: pow(max(dot(N,H), 0.0), MaterialShininess);
  566. Debug:
  567. Debug: // Calculate the final color
  568. Debug: gl_FragColor = ambient + specular + diffuse;
  569. Debug: }
  570. Debug: Reading PNG file /usr/share/glmark2/textures/asteroid-normal-map.png
  571. Debug: Height: 1024 Width: 1024 Bpp: 3
  572. Info: [bump] bump-render=normals:Debug: Validation failed! Expected: 0xffa4a4a4 Actual: 0xff9c9c9c Distance: 13.856406
  573. Validation: Failure
  574. Debug: Loading model from 3ds file '/usr/share/glmark2/models/asteroid-low.3ds'
  575. Debug: Object name: Icosphere Vertex count: 262 Face count: 480
  576. Debug: Loading vertex shader from file None:
  577. Debug: attribute vec3 position;
  578. Debug: attribute vec2 texcoord;
  579. Debug: attribute vec3 normal;
  580. Debug: attribute vec3 tangent;
  581. Debug:
  582. Debug: uniform mat4 ModelViewProjectionMatrix;
  583. Debug: uniform mat4 NormalMatrix;
  584. Debug:
  585. Debug: varying vec2 TextureCoord;
  586. Debug: varying vec3 NormalEye;
  587. Debug: varying vec3 TangentEye;
  588. Debug: varying vec3 BitangentEye;
  589. Debug:
  590. Debug: void main(void)
  591. Debug: {
  592. Debug: TextureCoord = texcoord;
  593. Debug:
  594. Debug: // Transform normal, tangent and bitangent to eye space, keeping
  595. Debug: // all of them perpendicular to the Normal. That is why we use
  596. Debug: // NormalMatrix, instead of ModelView, to transform the tangent and
  597. Debug: // bitangent.
  598. Debug: NormalEye = normalize(vec3(NormalMatrix * vec4(normal, 1.0)));
  599. Debug: TangentEye = normalize(vec3(NormalMatrix * vec4(tangent, 1.0)));
  600. Debug: BitangentEye = normalize(vec3(NormalMatrix * vec4(cross(normal, tangent), 1.0)));
  601. Debug:
  602. Debug: // Transform the position to clip coordinates
  603. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  604. Debug: }
  605. Debug: Loading fragment shader from file None:
  606. Debug: #ifdef GL_ES
  607. Debug: precision mediump float;
  608. Debug: #endif
  609. Debug: #ifdef GL_ES
  610. Debug: precision mediump float;
  611. Debug: #endif
  612. Debug: const float TextureStepY = 0.000977;
  613. Debug: const float TextureStepX = 0.000977;
  614. Debug: const vec3 LightSourceHalfVector = vec3(0.408248, 0.408248, 0.816497);
  615. Debug: const vec4 LightSourcePosition = vec4(20.000000, 20.000000, 10.000000, 1.000000);
  616. Debug:
  617. Debug: uniform sampler2D HeightMap;
  618. Debug:
  619. Debug: varying vec2 TextureCoord;
  620. Debug: varying vec3 NormalEye;
  621. Debug: varying vec3 TangentEye;
  622. Debug: varying vec3 BitangentEye;
  623. Debug:
  624. Debug: void main(void)
  625. Debug: {
  626. Debug: const vec4 LightSourceAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  627. Debug: const vec4 LightSourceDiffuse = vec4(0.8, 0.8, 0.8, 1.0);
  628. Debug: const vec4 LightSourceSpecular = vec4(0.8, 0.8, 0.8, 1.0);
  629. Debug: const vec4 MaterialAmbient = vec4(1.0, 1.0, 1.0, 1.0);
  630. Debug: const vec4 MaterialDiffuse = vec4(1.0, 1.0, 1.0, 1.0);
  631. Debug: const vec4 MaterialSpecular = vec4(0.2, 0.2, 0.2, 1.0);
  632. Debug: const float MaterialShininess = 100.0;
  633. Debug: const float height_factor = 13.0;
  634. Debug:
  635. Debug: // Get the data from the height map
  636. Debug: float height0 = texture2D(HeightMap, TextureCoord).x;
  637. Debug: float heightX = texture2D(HeightMap, TextureCoord + vec2(TextureStepX, 0.0)).x;
  638. Debug: float heightY = texture2D(HeightMap, TextureCoord + vec2(0.0, TextureStepY)).x;
  639. Debug: vec2 dh = vec2(heightX - height0, heightY - height0);
  640. Debug:
  641. Debug: // Adjust the normal based on the height map data
  642. Debug: vec3 N = NormalEye - height_factor * dh.x * TangentEye -
  643. Debug: height_factor * dh.y * BitangentEye;
  644. Debug: N = normalize(N);
  645. Debug:
  646. Debug: // In the lighting model we are using here (Blinn-Phong with light at
  647. Debug: // infinity, viewer at infinity), the light position/direction and the
  648. Debug: // half vector is constant for the all the fragments.
  649. Debug: vec3 L = normalize(LightSourcePosition.xyz);
  650. Debug: vec3 H = normalize(LightSourceHalfVector);
  651. Debug:
  652. Debug: // Calculate the diffuse color according to Lambertian reflectance
  653. Debug: vec4 diffuse = MaterialDiffuse * LightSourceDiffuse * max(dot(N, L), 0.0);
  654. Debug:
  655. Debug: // Calculate the ambient color
  656. Debug: vec4 ambient = MaterialAmbient * LightSourceAmbient;
  657. Debug:
  658. Debug: // Calculate the specular color according to the Blinn-Phong model
  659. Debug: vec4 specular = MaterialSpecular * LightSourceSpecular *
  660. Debug: pow(max(dot(N,H), 0.0), MaterialShininess);
  661. Debug:
  662. Debug: // Calculate the final color
  663. Debug: gl_FragColor = ambient + specular + diffuse;
  664. Debug:
  665. Debug: //gl_FragColor = vec4(height_diff_raw.xy, 0.0, 1.0);
  666. Debug: //gl_FragColor = vec4(height_diff_scaled.xy, 0.0, 1.0);
  667. Debug: //gl_FragColor = vec4(Tangent, 1.0);
  668. Debug: }
  669. Debug: Reading PNG file /usr/share/glmark2/textures/asteroid-height-map.png
  670. Debug: Height: 1024 Width: 1024 Bpp: 4
  671. Info: [bump] bump-render=height:Debug: Validation failed! Expected: 0xff9d9d9d Actual: 0xffa4a4a4 Distance: 12.124356
  672. Validation: Failure
  673. Debug: Reading PNG file /usr/share/glmark2/textures/effect-2d.png
  674. Debug: Height: 800 Width: 600 Bpp: 3
  675. Debug: Parsing kernel matrix:
  676. Debug: 0.000000 1.000000 0.000000
  677. Debug: 1.000000 -4.000000 1.000000
  678. Debug: 0.000000 1.000000 0.000000
  679. Debug: Normalized kernel matrix:
  680. Debug: 0.000000 0.250000 0.000000
  681. Debug: 0.250000 -1.000000 0.250000
  682. Debug: 0.000000 0.250000 0.000000
  683. Debug: Loading vertex shader from file None:
  684. Debug: attribute vec3 position;
  685. Debug:
  686. Debug: varying vec2 TextureCoord;
  687. Debug:
  688. Debug: void main(void)
  689. Debug: {
  690. Debug: gl_Position = vec4(position, 1.0);
  691. Debug:
  692. Debug: TextureCoord = position.xy * 0.5 + 0.5;
  693. Debug: }
  694. Debug: Loading fragment shader from file None:
  695. Debug: #ifdef GL_ES
  696. Debug: precision mediump float;
  697. Debug: #endif
  698. Debug: #ifdef GL_ES
  699. Debug: precision mediump float;
  700. Debug: #endif
  701. Debug: const float Kernel0 = 0.000000;
  702. Debug: const float Kernel1 = 0.250000;
  703. Debug: const float Kernel2 = 0.000000;
  704. Debug: const float Kernel3 = 0.250000;
  705. Debug: const float Kernel4 = -1.000000;
  706. Debug: const float Kernel5 = 0.250000;
  707. Debug: const float Kernel6 = 0.000000;
  708. Debug: const float Kernel7 = 0.250000;
  709. Debug: const float Kernel8 = 0.000000;
  710. Debug: const float TextureStepY = 0.001667;
  711. Debug: const float TextureStepX = 0.001250;
  712. Debug: uniform sampler2D Texture0;
  713. Debug: varying vec2 TextureCoord;
  714. Debug:
  715. Debug: void main(void)
  716. Debug: {
  717. Debug: vec4 result;
  718. Debug:
  719. Debug: result = texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel0 +
  720. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel1 +
  721. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel2 +
  722. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel3 +
  723. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel4 +
  724. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel5 +
  725. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel6 +
  726. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel7 +
  727. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel8;
  728. Debug:
  729. Debug:
  730. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  731. Debug: }
  732. Debug:
  733. Info: [effect2d] kernel=0,1,0;1,-4,1;0,1,0;:Debug: Parsing kernel matrix:
  734. Debug: 0.000000 1.000000 0.000000
  735. Debug: 1.000000 -4.000000 1.000000
  736. Debug: 0.000000 1.000000 0.000000
  737. Debug: Parsing kernel matrix:
  738. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  739. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  740. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  741. Debug: Parsing kernel matrix:
  742. Debug: 0.000000 1.000000 0.000000
  743. Debug: 1.000000 -4.000000 1.000000
  744. Debug: 0.000000 1.000000 0.000000
  745. Debug: Validation failed! Expected: 0xff2f0c17 Actual: 0xff707070 Distance: 148.815322
  746. Validation: Failure
  747. Debug: Reading PNG file /usr/share/glmark2/textures/effect-2d.png
  748. Debug: Height: 800 Width: 600 Bpp: 3
  749. Debug: Parsing kernel matrix:
  750. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  751. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  752. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  753. Debug: Normalized kernel matrix:
  754. Debug: 0.066667 0.066667 0.066667 0.066667 0.066667
  755. Debug: 0.066667 0.066667 0.066667 0.066667 0.066667
  756. Debug: 0.066667 0.066667 0.066667 0.066667 0.066667
  757. Debug: Loading vertex shader from file None:
  758. Debug: attribute vec3 position;
  759. Debug:
  760. Debug: varying vec2 TextureCoord;
  761. Debug:
  762. Debug: void main(void)
  763. Debug: {
  764. Debug: gl_Position = vec4(position, 1.0);
  765. Debug:
  766. Debug: TextureCoord = position.xy * 0.5 + 0.5;
  767. Debug: }
  768. Debug: Loading fragment shader from file None:
  769. Debug: #ifdef GL_ES
  770. Debug: precision mediump float;
  771. Debug: #endif
  772. Debug: #ifdef GL_ES
  773. Debug: precision mediump float;
  774. Debug: #endif
  775. Debug: const float Kernel0 = 0.066667;
  776. Debug: const float Kernel1 = 0.066667;
  777. Debug: const float Kernel2 = 0.066667;
  778. Debug: const float Kernel3 = 0.066667;
  779. Debug: const float Kernel4 = 0.066667;
  780. Debug: const float Kernel5 = 0.066667;
  781. Debug: const float Kernel6 = 0.066667;
  782. Debug: const float Kernel7 = 0.066667;
  783. Debug: const float Kernel8 = 0.066667;
  784. Debug: const float Kernel9 = 0.066667;
  785. Debug: const float Kernel10 = 0.066667;
  786. Debug: const float Kernel11 = 0.066667;
  787. Debug: const float Kernel12 = 0.066667;
  788. Debug: const float Kernel13 = 0.066667;
  789. Debug: const float Kernel14 = 0.066667;
  790. Debug: const float TextureStepY = 0.001667;
  791. Debug: const float TextureStepX = 0.001250;
  792. Debug: uniform sampler2D Texture0;
  793. Debug: varying vec2 TextureCoord;
  794. Debug:
  795. Debug: void main(void)
  796. Debug: {
  797. Debug: vec4 result;
  798. Debug:
  799. Debug: result = texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel0 +
  800. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel1 +
  801. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel2 +
  802. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel3 +
  803. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 1.0 * TextureStepY)) * Kernel4 +
  804. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel5 +
  805. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel6 +
  806. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel7 +
  807. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel8 +
  808. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 0.0 * TextureStepY)) * Kernel9 +
  809. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel10 +
  810. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel11 +
  811. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel12 +
  812. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel13 +
  813. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, -1.0 * TextureStepY)) * Kernel14;
  814. Debug:
  815. Debug:
  816. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  817. Debug: }
  818. Debug:
  819. Info: [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;:Debug: Parsing kernel matrix:
  820. Debug: 0.000000 1.000000 0.000000
  821. Debug: 1.000000 -4.000000 1.000000
  822. Debug: 0.000000 1.000000 0.000000
  823. Debug: Parsing kernel matrix:
  824. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  825. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  826. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  827. Debug: Parsing kernel matrix:
  828. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  829. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  830. Debug: 1.000000 1.000000 1.000000 1.000000 1.000000
  831. Debug: Validation failed! Expected: 0xff8de1c7 Actual: 0xff2f0c17 Distance: 291.857842
  832. Validation: Failure
  833. Debug: Loading vertex shader from file None:
  834. Debug: attribute vec3 position;
  835. Debug: attribute vec4 vtxcolor;
  836. Debug: attribute vec2 texcoord;
  837. Debug: attribute vec3 normal;
  838. Debug:
  839. Debug: uniform mat4 ModelViewProjectionMatrix;
  840. Debug:
  841. Debug: varying vec4 Color;
  842. Debug: varying vec2 TextureCoord;
  843. Debug:
  844. Debug: void main(void)
  845. Debug: {
  846. Debug: Color = vtxcolor;
  847. Debug: TextureCoord = texcoord;
  848. Debug:
  849. Debug: // Transform the position to clip coordinates
  850. Debug: gl_Position = ModelViewProjectionMatrix * vec4(position, 1.0);
  851. Debug: }
  852. Debug:
  853. Debug: Loading fragment shader from file None:
  854. Debug: #ifdef GL_ES
  855. Debug: precision mediump float;
  856. Debug: #endif
  857. Debug: varying vec4 Color;
  858. Debug: varying vec2 TextureCoord;
  859. Debug:
  860. Debug: void main(void)
  861. Debug: {
  862. Debug: gl_FragColor = Color;
  863. Debug: }
  864. Info: [pulsar] light=false:quads=5:texture=false:Debug: Validation failed! Expected: 0xff770277 Actual: 0xfffefefe Distance: 316.155025
  865. Validation: Failure
  866. Debug: Loading vertex shader from file None:
  867. Debug: attribute vec2 position;
  868. Debug: attribute vec2 texcoord;
  869. Debug:
  870. Debug: varying vec2 TextureCoord;
  871. Debug:
  872. Debug: void main(void)
  873. Debug: {
  874. Debug: gl_Position = vec4(position, 0.0, 1.0);
  875. Debug:
  876. Debug: TextureCoord = texcoord;
  877. Debug: }
  878. Debug: Loading fragment shader from file None:
  879. Debug: #ifdef GL_ES
  880. Debug: precision mediump float;
  881. Debug: #endif
  882. Debug: uniform sampler2D MaterialTexture0;
  883. Debug:
  884. Debug: varying vec2 TextureCoord;
  885. Debug:
  886. Debug: void main(void)
  887. Debug: {
  888. Debug: vec4 texel = texture2D(MaterialTexture0, TextureCoord);
  889. Debug: gl_FragColor = texel;
  890. Debug: }
  891. Debug:
  892. Debug: Reading PNG file /usr/share/glmark2/textures/effect-2d.png
  893. Debug: Height: 800 Width: 600 Bpp: 3
  894. Debug: Reading PNG file /usr/share/glmark2/textures/desktop-window.png
  895. Debug: Height: 512 Width: 512 Bpp: 4
  896. Debug: Loading vertex shader from file None:
  897. Debug: attribute vec2 position;
  898. Debug: attribute vec2 texcoord;
  899. Debug:
  900. Debug: varying vec2 TextureCoord;
  901. Debug:
  902. Debug: void main(void)
  903. Debug: {
  904. Debug: gl_Position = vec4(position, 0.0, 1.0);
  905. Debug:
  906. Debug: TextureCoord = texcoord;
  907. Debug: }
  908. Debug: Loading fragment shader from file None:
  909. Debug: #ifdef GL_ES
  910. Debug: precision mediump float;
  911. Debug: #endif
  912. Debug: const float TextureStepX = 0.001250;
  913. Debug: const float Kernel5 = 0.002659;
  914. Debug: const float Kernel4 = 0.013437;
  915. Debug: const float Kernel3 = 0.047370;
  916. Debug: const float Kernel2 = 0.116512;
  917. Debug: const float Kernel1 = 0.199935;
  918. Debug: const float Kernel0 = 0.239365;
  919. Debug: uniform sampler2D Texture0;
  920. Debug:
  921. Debug: varying vec2 TextureCoord;
  922. Debug:
  923. Debug: void main(void)
  924. Debug: {
  925. Debug: vec4 result;
  926. Debug:
  927. Debug: result =
  928. Debug: texture2D(Texture0, TextureCoord + vec2(-5.0 * TextureStepX, 0.0)) * Kernel5 +
  929. Debug: texture2D(Texture0, TextureCoord + vec2(-4.0 * TextureStepX, 0.0)) * Kernel4 +
  930. Debug: texture2D(Texture0, TextureCoord + vec2(-3.0 * TextureStepX, 0.0)) * Kernel3 +
  931. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 0.0)) * Kernel2 +
  932. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0)) * Kernel1 +
  933. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0)) * Kernel0 +
  934. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0)) * Kernel1 +
  935. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 0.0)) * Kernel2 +
  936. Debug: texture2D(Texture0, TextureCoord + vec2(3.0 * TextureStepX, 0.0)) * Kernel3 +
  937. Debug: texture2D(Texture0, TextureCoord + vec2(4.0 * TextureStepX, 0.0)) * Kernel4 +
  938. Debug: texture2D(Texture0, TextureCoord + vec2(5.0 * TextureStepX, 0.0)) * Kernel5 +
  939. Debug: 0.0 ;
  940. Debug:
  941. Debug:
  942. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  943. Debug: }
  944. Debug:
  945. Debug: Loading vertex shader from file None:
  946. Debug: attribute vec2 position;
  947. Debug: attribute vec2 texcoord;
  948. Debug:
  949. Debug: varying vec2 TextureCoord;
  950. Debug:
  951. Debug: void main(void)
  952. Debug: {
  953. Debug: gl_Position = vec4(position, 0.0, 1.0);
  954. Debug:
  955. Debug: TextureCoord = texcoord;
  956. Debug: }
  957. Debug: Loading fragment shader from file None:
  958. Debug: #ifdef GL_ES
  959. Debug: precision mediump float;
  960. Debug: #endif
  961. Debug: const float TextureStepY = 0.001667;
  962. Debug: const float Kernel5 = 0.002659;
  963. Debug: const float Kernel4 = 0.013437;
  964. Debug: const float Kernel3 = 0.047370;
  965. Debug: const float Kernel2 = 0.116512;
  966. Debug: const float Kernel1 = 0.199935;
  967. Debug: const float Kernel0 = 0.239365;
  968. Debug: uniform sampler2D Texture0;
  969. Debug:
  970. Debug: varying vec2 TextureCoord;
  971. Debug:
  972. Debug: void main(void)
  973. Debug: {
  974. Debug: vec4 result;
  975. Debug:
  976. Debug: result =
  977. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -5.0 * TextureStepY)) * Kernel5 +
  978. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -4.0 * TextureStepY)) * Kernel4 +
  979. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -3.0 * TextureStepY)) * Kernel3 +
  980. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -2.0 * TextureStepY)) * Kernel2 +
  981. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -1.0 * TextureStepY)) * Kernel1 +
  982. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 0.0 * TextureStepY)) * Kernel0 +
  983. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 1.0 * TextureStepY)) * Kernel1 +
  984. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 2.0 * TextureStepY)) * Kernel2 +
  985. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 3.0 * TextureStepY)) * Kernel3 +
  986. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 4.0 * TextureStepY)) * Kernel4 +
  987. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 5.0 * TextureStepY)) * Kernel5 +
  988. Debug: 0.0 ;
  989. Debug:
  990. Debug:
  991. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  992. Debug: }
  993. Debug:
  994. Debug: Loading vertex shader from file None:
  995. Debug: attribute vec2 position;
  996. Debug: attribute vec2 texcoord;
  997. Debug:
  998. Debug: varying vec2 TextureCoord;
  999. Debug:
  1000. Debug: void main(void)
  1001. Debug: {
  1002. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1003. Debug:
  1004. Debug: TextureCoord = texcoord;
  1005. Debug: }
  1006. Debug: Loading fragment shader from file None:
  1007. Debug: #ifdef GL_ES
  1008. Debug: precision mediump float;
  1009. Debug: #endif
  1010. Debug: const float TextureStepX = 0.001250;
  1011. Debug: const float Kernel5 = 0.002659;
  1012. Debug: const float Kernel4 = 0.013437;
  1013. Debug: const float Kernel3 = 0.047370;
  1014. Debug: const float Kernel2 = 0.116512;
  1015. Debug: const float Kernel1 = 0.199935;
  1016. Debug: const float Kernel0 = 0.239365;
  1017. Debug: uniform sampler2D Texture0;
  1018. Debug:
  1019. Debug: varying vec2 TextureCoord;
  1020. Debug:
  1021. Debug: void main(void)
  1022. Debug: {
  1023. Debug: vec4 result;
  1024. Debug:
  1025. Debug: result =
  1026. Debug: texture2D(Texture0, TextureCoord + vec2(-5.0 * TextureStepX, 0.0)) * Kernel5 +
  1027. Debug: texture2D(Texture0, TextureCoord + vec2(-4.0 * TextureStepX, 0.0)) * Kernel4 +
  1028. Debug: texture2D(Texture0, TextureCoord + vec2(-3.0 * TextureStepX, 0.0)) * Kernel3 +
  1029. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 0.0)) * Kernel2 +
  1030. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0)) * Kernel1 +
  1031. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0)) * Kernel0 +
  1032. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0)) * Kernel1 +
  1033. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 0.0)) * Kernel2 +
  1034. Debug: texture2D(Texture0, TextureCoord + vec2(3.0 * TextureStepX, 0.0)) * Kernel3 +
  1035. Debug: texture2D(Texture0, TextureCoord + vec2(4.0 * TextureStepX, 0.0)) * Kernel4 +
  1036. Debug: texture2D(Texture0, TextureCoord + vec2(5.0 * TextureStepX, 0.0)) * Kernel5 +
  1037. Debug: 0.0 ;
  1038. Debug:
  1039. Debug:
  1040. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1041. Debug: }
  1042. Debug:
  1043. Debug: Loading vertex shader from file None:
  1044. Debug: attribute vec2 position;
  1045. Debug: attribute vec2 texcoord;
  1046. Debug:
  1047. Debug: varying vec2 TextureCoord;
  1048. Debug:
  1049. Debug: void main(void)
  1050. Debug: {
  1051. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1052. Debug:
  1053. Debug: TextureCoord = texcoord;
  1054. Debug: }
  1055. Debug: Loading fragment shader from file None:
  1056. Debug: #ifdef GL_ES
  1057. Debug: precision mediump float;
  1058. Debug: #endif
  1059. Debug: const float TextureStepY = 0.001667;
  1060. Debug: const float Kernel5 = 0.002659;
  1061. Debug: const float Kernel4 = 0.013437;
  1062. Debug: const float Kernel3 = 0.047370;
  1063. Debug: const float Kernel2 = 0.116512;
  1064. Debug: const float Kernel1 = 0.199935;
  1065. Debug: const float Kernel0 = 0.239365;
  1066. Debug: uniform sampler2D Texture0;
  1067. Debug:
  1068. Debug: varying vec2 TextureCoord;
  1069. Debug:
  1070. Debug: void main(void)
  1071. Debug: {
  1072. Debug: vec4 result;
  1073. Debug:
  1074. Debug: result =
  1075. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -5.0 * TextureStepY)) * Kernel5 +
  1076. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -4.0 * TextureStepY)) * Kernel4 +
  1077. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -3.0 * TextureStepY)) * Kernel3 +
  1078. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -2.0 * TextureStepY)) * Kernel2 +
  1079. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -1.0 * TextureStepY)) * Kernel1 +
  1080. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 0.0 * TextureStepY)) * Kernel0 +
  1081. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 1.0 * TextureStepY)) * Kernel1 +
  1082. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 2.0 * TextureStepY)) * Kernel2 +
  1083. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 3.0 * TextureStepY)) * Kernel3 +
  1084. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 4.0 * TextureStepY)) * Kernel4 +
  1085. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 5.0 * TextureStepY)) * Kernel5 +
  1086. Debug: 0.0 ;
  1087. Debug:
  1088. Debug:
  1089. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1090. Debug: }
  1091. Debug:
  1092. Debug: Loading vertex shader from file None:
  1093. Debug: attribute vec2 position;
  1094. Debug: attribute vec2 texcoord;
  1095. Debug:
  1096. Debug: varying vec2 TextureCoord;
  1097. Debug:
  1098. Debug: void main(void)
  1099. Debug: {
  1100. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1101. Debug:
  1102. Debug: TextureCoord = texcoord;
  1103. Debug: }
  1104. Debug: Loading fragment shader from file None:
  1105. Debug: #ifdef GL_ES
  1106. Debug: precision mediump float;
  1107. Debug: #endif
  1108. Debug: const float TextureStepX = 0.001250;
  1109. Debug: const float Kernel5 = 0.002659;
  1110. Debug: const float Kernel4 = 0.013437;
  1111. Debug: const float Kernel3 = 0.047370;
  1112. Debug: const float Kernel2 = 0.116512;
  1113. Debug: const float Kernel1 = 0.199935;
  1114. Debug: const float Kernel0 = 0.239365;
  1115. Debug: uniform sampler2D Texture0;
  1116. Debug:
  1117. Debug: varying vec2 TextureCoord;
  1118. Debug:
  1119. Debug: void main(void)
  1120. Debug: {
  1121. Debug: vec4 result;
  1122. Debug:
  1123. Debug: result =
  1124. Debug: texture2D(Texture0, TextureCoord + vec2(-5.0 * TextureStepX, 0.0)) * Kernel5 +
  1125. Debug: texture2D(Texture0, TextureCoord + vec2(-4.0 * TextureStepX, 0.0)) * Kernel4 +
  1126. Debug: texture2D(Texture0, TextureCoord + vec2(-3.0 * TextureStepX, 0.0)) * Kernel3 +
  1127. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 0.0)) * Kernel2 +
  1128. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0)) * Kernel1 +
  1129. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0)) * Kernel0 +
  1130. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0)) * Kernel1 +
  1131. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 0.0)) * Kernel2 +
  1132. Debug: texture2D(Texture0, TextureCoord + vec2(3.0 * TextureStepX, 0.0)) * Kernel3 +
  1133. Debug: texture2D(Texture0, TextureCoord + vec2(4.0 * TextureStepX, 0.0)) * Kernel4 +
  1134. Debug: texture2D(Texture0, TextureCoord + vec2(5.0 * TextureStepX, 0.0)) * Kernel5 +
  1135. Debug: 0.0 ;
  1136. Debug:
  1137. Debug:
  1138. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1139. Debug: }
  1140. Debug:
  1141. Debug: Loading vertex shader from file None:
  1142. Debug: attribute vec2 position;
  1143. Debug: attribute vec2 texcoord;
  1144. Debug:
  1145. Debug: varying vec2 TextureCoord;
  1146. Debug:
  1147. Debug: void main(void)
  1148. Debug: {
  1149. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1150. Debug:
  1151. Debug: TextureCoord = texcoord;
  1152. Debug: }
  1153. Debug: Loading fragment shader from file None:
  1154. Debug: #ifdef GL_ES
  1155. Debug: precision mediump float;
  1156. Debug: #endif
  1157. Debug: const float TextureStepY = 0.001667;
  1158. Debug: const float Kernel5 = 0.002659;
  1159. Debug: const float Kernel4 = 0.013437;
  1160. Debug: const float Kernel3 = 0.047370;
  1161. Debug: const float Kernel2 = 0.116512;
  1162. Debug: const float Kernel1 = 0.199935;
  1163. Debug: const float Kernel0 = 0.239365;
  1164. Debug: uniform sampler2D Texture0;
  1165. Debug:
  1166. Debug: varying vec2 TextureCoord;
  1167. Debug:
  1168. Debug: void main(void)
  1169. Debug: {
  1170. Debug: vec4 result;
  1171. Debug:
  1172. Debug: result =
  1173. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -5.0 * TextureStepY)) * Kernel5 +
  1174. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -4.0 * TextureStepY)) * Kernel4 +
  1175. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -3.0 * TextureStepY)) * Kernel3 +
  1176. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -2.0 * TextureStepY)) * Kernel2 +
  1177. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -1.0 * TextureStepY)) * Kernel1 +
  1178. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 0.0 * TextureStepY)) * Kernel0 +
  1179. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 1.0 * TextureStepY)) * Kernel1 +
  1180. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 2.0 * TextureStepY)) * Kernel2 +
  1181. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 3.0 * TextureStepY)) * Kernel3 +
  1182. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 4.0 * TextureStepY)) * Kernel4 +
  1183. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 5.0 * TextureStepY)) * Kernel5 +
  1184. Debug: 0.0 ;
  1185. Debug:
  1186. Debug:
  1187. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1188. Debug: }
  1189. Debug:
  1190. Debug: Loading vertex shader from file None:
  1191. Debug: attribute vec2 position;
  1192. Debug: attribute vec2 texcoord;
  1193. Debug:
  1194. Debug: varying vec2 TextureCoord;
  1195. Debug:
  1196. Debug: void main(void)
  1197. Debug: {
  1198. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1199. Debug:
  1200. Debug: TextureCoord = texcoord;
  1201. Debug: }
  1202. Debug: Loading fragment shader from file None:
  1203. Debug: #ifdef GL_ES
  1204. Debug: precision mediump float;
  1205. Debug: #endif
  1206. Debug: const float TextureStepX = 0.001250;
  1207. Debug: const float Kernel5 = 0.002659;
  1208. Debug: const float Kernel4 = 0.013437;
  1209. Debug: const float Kernel3 = 0.047370;
  1210. Debug: const float Kernel2 = 0.116512;
  1211. Debug: const float Kernel1 = 0.199935;
  1212. Debug: const float Kernel0 = 0.239365;
  1213. Debug: uniform sampler2D Texture0;
  1214. Debug:
  1215. Debug: varying vec2 TextureCoord;
  1216. Debug:
  1217. Debug: void main(void)
  1218. Debug: {
  1219. Debug: vec4 result;
  1220. Debug:
  1221. Debug: result =
  1222. Debug: texture2D(Texture0, TextureCoord + vec2(-5.0 * TextureStepX, 0.0)) * Kernel5 +
  1223. Debug: texture2D(Texture0, TextureCoord + vec2(-4.0 * TextureStepX, 0.0)) * Kernel4 +
  1224. Debug: texture2D(Texture0, TextureCoord + vec2(-3.0 * TextureStepX, 0.0)) * Kernel3 +
  1225. Debug: texture2D(Texture0, TextureCoord + vec2(-2.0 * TextureStepX, 0.0)) * Kernel2 +
  1226. Debug: texture2D(Texture0, TextureCoord + vec2(-1.0 * TextureStepX, 0.0)) * Kernel1 +
  1227. Debug: texture2D(Texture0, TextureCoord + vec2(0.0 * TextureStepX, 0.0)) * Kernel0 +
  1228. Debug: texture2D(Texture0, TextureCoord + vec2(1.0 * TextureStepX, 0.0)) * Kernel1 +
  1229. Debug: texture2D(Texture0, TextureCoord + vec2(2.0 * TextureStepX, 0.0)) * Kernel2 +
  1230. Debug: texture2D(Texture0, TextureCoord + vec2(3.0 * TextureStepX, 0.0)) * Kernel3 +
  1231. Debug: texture2D(Texture0, TextureCoord + vec2(4.0 * TextureStepX, 0.0)) * Kernel4 +
  1232. Debug: texture2D(Texture0, TextureCoord + vec2(5.0 * TextureStepX, 0.0)) * Kernel5 +
  1233. Debug: 0.0 ;
  1234. Debug:
  1235. Debug:
  1236. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1237. Debug: }
  1238. Debug:
  1239. Debug: Loading vertex shader from file None:
  1240. Debug: attribute vec2 position;
  1241. Debug: attribute vec2 texcoord;
  1242. Debug:
  1243. Debug: varying vec2 TextureCoord;
  1244. Debug:
  1245. Debug: void main(void)
  1246. Debug: {
  1247. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1248. Debug:
  1249. Debug: TextureCoord = texcoord;
  1250. Debug: }
  1251. Debug: Loading fragment shader from file None:
  1252. Debug: #ifdef GL_ES
  1253. Debug: precision mediump float;
  1254. Debug: #endif
  1255. Debug: const float TextureStepY = 0.001667;
  1256. Debug: const float Kernel5 = 0.002659;
  1257. Debug: const float Kernel4 = 0.013437;
  1258. Debug: const float Kernel3 = 0.047370;
  1259. Debug: const float Kernel2 = 0.116512;
  1260. Debug: const float Kernel1 = 0.199935;
  1261. Debug: const float Kernel0 = 0.239365;
  1262. Debug: uniform sampler2D Texture0;
  1263. Debug:
  1264. Debug: varying vec2 TextureCoord;
  1265. Debug:
  1266. Debug: void main(void)
  1267. Debug: {
  1268. Debug: vec4 result;
  1269. Debug:
  1270. Debug: result =
  1271. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -5.0 * TextureStepY)) * Kernel5 +
  1272. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -4.0 * TextureStepY)) * Kernel4 +
  1273. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -3.0 * TextureStepY)) * Kernel3 +
  1274. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -2.0 * TextureStepY)) * Kernel2 +
  1275. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, -1.0 * TextureStepY)) * Kernel1 +
  1276. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 0.0 * TextureStepY)) * Kernel0 +
  1277. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 1.0 * TextureStepY)) * Kernel1 +
  1278. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 2.0 * TextureStepY)) * Kernel2 +
  1279. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 3.0 * TextureStepY)) * Kernel3 +
  1280. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 4.0 * TextureStepY)) * Kernel4 +
  1281. Debug: texture2D(Texture0, TextureCoord + vec2(0.0, 5.0 * TextureStepY)) * Kernel5 +
  1282. Debug: 0.0 ;
  1283. Debug:
  1284. Debug:
  1285. Debug: gl_FragColor = vec4(result.xyz, 1.0);
  1286. Debug: }
  1287. Debug:
  1288. Info: [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4:Debug: Validation failed! Expected: 0xff53a389 Actual: 0xff000000 Distance: 228.532273
  1289. Validation: Failure
  1290. Debug: Loading vertex shader from file None:
  1291. Debug: attribute vec2 position;
  1292. Debug: attribute vec2 texcoord;
  1293. Debug:
  1294. Debug: varying vec2 TextureCoord;
  1295. Debug:
  1296. Debug: void main(void)
  1297. Debug: {
  1298. Debug: gl_Position = vec4(position, 0.0, 1.0);
  1299. Debug:
  1300. Debug: TextureCoord = texcoord;
  1301. Debug: }
  1302. Debug: Loading fragment shader from file None:
  1303. Debug: #ifdef GL_ES
  1304. Debug: precision mediump float;
  1305. Debug: #endif
  1306. Debug: uniform sampler2D MaterialTexture0;
  1307. Debug:
  1308. Debug: varying vec2 TextureCoord;
  1309. Debug:
  1310. Debug: void main(void)
  1311. Debug: {
  1312. Debug: vec4 texel = texture2D(MaterialTexture0, TextureCoord);
  1313. Debug: gl_FragColor = texel;
  1314. Debug: }
  1315. Debug:
  1316. Debug: Reading PNG file /usr/share/glmark2/textures/effect-2d.png
  1317. Debug: Height: 800 Width: 600 Bpp: 3
  1318. Debug: Reading PNG file /usr/share/glmark2/textures/desktop-shadow.png
  1319. Debug: Height: 64 Width: 64 Bpp: 4
  1320. Debug: Reading PNG file /usr/share/glmark2/textures/desktop-shadow.png
  1321. Debug: Height: 64 Width: 64 Bpp: 4
  1322. Debug: Reading PNG file /usr/share/glmark2/textures/desktop-shadow-corner.png
  1323. Debug: Height: 64 Width: 64 Bpp: 4
  1324. Debug: Reading PNG file /usr/share/glmark2/textures/desktop-window.png
  1325. Debug: Height: 512 Width: 512 Bpp: 4
  1326. Info: [desktop] effect=shadow:windows=4:Debug: Validation failed! Expected: 0xff0d271f Actual: 0xff51a288 Distance: 175.436598
  1327. Validation: Failure
  1328. Info: [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map:Debug: Validation failed! Expected: 0xffd79934 Actual: 0xff000000 Distance: 268.957246
  1329. Validation: Failure
  1330. Debug: Loading vertex shader from file None:
  1331. Debug: // Wireframe shader based on:
  1332. Debug: // J. A. Bærentzen, S. Munk-Lund, M. Gjøl, and B. D. Larsen,
  1333. Debug: // “Two methods for antialiased wireframe drawing with hidden
  1334. Debug: // line removal,” in Proceedings of the Spring Conference in
  1335. Debug: // Computer Graphics, 2008.
  1336. Debug: //
  1337. Debug: // We are not using geometry shaders, though, as they are not
  1338. Debug: // available in GLES 2.0.
  1339. Debug:
  1340. Debug: attribute vec3 position;
  1341. Debug: // Coordinates of the triangle vertices this vertex belongs to
  1342. Debug: attribute vec3 tvertex0;
  1343. Debug: attribute vec3 tvertex1;
  1344. Debug: attribute vec3 tvertex2;
  1345. Debug:
  1346. Debug: uniform vec2 Viewport;
  1347. Debug: uniform mat4 ModelViewProjectionMatrix;
  1348. Debug:
  1349. Debug: varying vec4 dist;
  1350. Debug:
  1351. Debug: void main(void)
  1352. Debug: {
  1353. Debug: // Get the clip coordinates of all vertices
  1354. Debug: vec4 pos = ModelViewProjectionMatrix * vec4(position, 1.0);
  1355. Debug: vec4 pos0 = ModelViewProjectionMatrix * vec4(tvertex0, 1.0);
  1356. Debug: vec4 pos1 = ModelViewProjectionMatrix * vec4(tvertex1, 1.0);
  1357. Debug: vec4 pos2 = ModelViewProjectionMatrix * vec4(tvertex2, 1.0);
  1358. Debug:
  1359. Debug: // Get the screen coordinates of all vertices
  1360. Debug: vec3 p = vec3(0.5 * Viewport * (pos.xy / pos.w), 0.0);
  1361. Debug: vec3 p0 = vec3(0.5 * Viewport * (pos0.xy / pos0.w), 0.0);
  1362. Debug: vec3 p1 = vec3(0.5 * Viewport * (pos1.xy / pos1.w), 0.0);
  1363. Debug: vec3 p2 = vec3(0.5 * Viewport * (pos2.xy / pos2.w), 0.0);
  1364. Debug:
  1365. Debug: // Get the vectors representing the edges of the current
  1366. Debug: // triangle primitive. 'vN' is the edge opposite vertex N.
  1367. Debug: vec3 v0 = p2 - p1;
  1368. Debug: vec3 v1 = p2 - p0;
  1369. Debug: vec3 v2 = p1 - p0;
  1370. Debug:
  1371. Debug: // Calculate the distance of the current vertex from all
  1372. Debug: // the triangle edges. The distance of point p from line
  1373. Debug: // v is length(cross(p - p1, v)) / length(v), where
  1374. Debug: // p1 is any of the two edge points of v.
  1375. Debug: float d0 = length(cross(p - p1, v0)) / length(v0);
  1376. Debug: float d1 = length(cross(p - p2, v1)) / length(v1);
  1377. Debug: float d2 = length(cross(p - p0, v2)) / length(v2);
  1378. Debug:
  1379. Debug: // OpenGL(ES) performs perspective-correct interpolation
  1380. Debug: // (it divides by .w) but we want linear interpolation. To
  1381. Debug: // work around this, we premultiply by pos.w here and then
  1382. Debug: // multiple with the inverse (stored in dist.w) in the fragment
  1383. Debug: // shader to undo this operation.
  1384. Debug: dist = vec4(pos.w * d0, pos.w * d1, pos.w * d2, 1.0 / pos.w);
  1385. Debug:
  1386. Debug: gl_Position = pos;
  1387. Debug: }
  1388. Debug: Loading fragment shader from file None:
  1389. Debug: #ifdef GL_ES
  1390. Debug: precision mediump float;
  1391. Debug: #endif
  1392. Debug: varying vec4 dist;
  1393. Debug:
  1394. Debug: const vec4 LINE_COLOR = vec4(1.0);
  1395. Debug: const vec4 TRIANGLE_COLOR = vec4(0.0, 0.5, 0.8, 0.8);
  1396. Debug:
  1397. Debug: void main(void)
  1398. Debug: {
  1399. Debug: // Get the minimum distance of this fragment from a triangle edge.
  1400. Debug: // We need to multiply with dist.w to undo the workaround we had
  1401. Debug: // to perform to get linear interpolation (instead of perspective correct).
  1402. Debug: float d = min(dist.x * dist.w, min(dist.y * dist.w, dist.z * dist.w));
  1403. Debug:
  1404. Debug: // Get the intensity of the wireframe line
  1405. Debug: float I = exp2(-2.0 * d * d);
  1406. Debug:
  1407. Debug: gl_FragColor = mix(TRIANGLE_COLOR, LINE_COLOR, I);
  1408. Debug: }
  1409. Info: [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata:Debug: Validation failed! Expected: 0xffd79934 Actual: 0xffffffff Distance: 230.679431
  1410. Validation: Failure
  1411. Info: [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map:Debug: Validation failed! Expected: 0xffd79934 Actual: 0xff000000 Distance: 268.957246
  1412. Validation: Failure
  1413. Debug: Loading vertex shader from file None:
  1414. Debug: uniform mat4 projection;
  1415. Debug: uniform mat4 modelview;
  1416. Debug: uniform vec3 lightPosition;
  1417. Debug: uniform vec3 logoDirection;
  1418. Debug: uniform float currentTime;
  1419. Debug: attribute vec3 vertex;
  1420. Debug: varying vec4 color;
  1421. Debug:
  1422. Debug: void main()
  1423. Debug: {
  1424. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1425. Debug: gl_Position = projection * modelview * curVertex;
  1426. Debug: float referenceTime = 15.0;
  1427. Debug: vec3 lightDirection = normalize(lightPosition - vertex);
  1428. Debug: float c = max(dot(lightDirection, logoDirection), 0.0);
  1429. Debug: c = c * c * c * lightDirection.y;
  1430. Debug: if ((currentTime > referenceTime - 5.0) && (currentTime < referenceTime - 3.0))
  1431. Debug: {
  1432. Debug: c *= 1.0 - (currentTime - (referenceTime - 5.0)) * 0.5;
  1433. Debug: }
  1434. Debug: color = vec4(c, c, c, 1.0);
  1435. Debug: }
  1436. Debug: Loading fragment shader from file None:
  1437. Debug: #ifdef GL_ES
  1438. Debug: precision mediump float;
  1439. Debug: #endif
  1440. Debug: varying vec4 color;
  1441. Debug:
  1442. Debug: void main()
  1443. Debug: {
  1444. Debug: gl_FragColor = color;
  1445. Debug: }
  1446. Debug: Loading vertex shader from file None:
  1447. Debug: uniform mat4 projection;
  1448. Debug: uniform mat4 modelview;
  1449. Debug: uniform vec3 lightPosition;
  1450. Debug: uniform vec3 logoDirection;
  1451. Debug: uniform float currentTime;
  1452. Debug: attribute vec3 vertex;
  1453. Debug: varying vec4 color;
  1454. Debug:
  1455. Debug: void main()
  1456. Debug: {
  1457. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1458. Debug: gl_Position = projection * modelview * curVertex;
  1459. Debug: float referenceTime = 15.0;
  1460. Debug: vec3 lightDirection = normalize(lightPosition - vertex);
  1461. Debug: float c = max(dot(lightDirection, logoDirection), 0.0);
  1462. Debug: c = c * c * c * lightDirection.y;
  1463. Debug: if ((currentTime > referenceTime - 5.0) && (currentTime < referenceTime - 3.0))
  1464. Debug: {
  1465. Debug: c *= 1.0 - (currentTime - (referenceTime - 5.0)) * 0.5;
  1466. Debug: }
  1467. Debug: color = vec4(c, c, (c * 0.78125), 1.0);
  1468. Debug: }
  1469. Debug: Loading fragment shader from file None:
  1470. Debug: #ifdef GL_ES
  1471. Debug: precision mediump float;
  1472. Debug: #endif
  1473. Debug: varying vec4 color;
  1474. Debug:
  1475. Debug: void main()
  1476. Debug: {
  1477. Debug: gl_FragColor = color;
  1478. Debug: }
  1479. Debug: Loading vertex shader from file None:
  1480. Debug: uniform mat4 projection;
  1481. Debug: uniform mat4 modelview;
  1482. Debug: uniform float currentTime;
  1483. Debug: attribute vec2 vertex;
  1484. Debug: varying vec4 color;
  1485. Debug:
  1486. Debug: void main()
  1487. Debug: {
  1488. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, 0.0, 1.0);
  1489. Debug: gl_Position = projection * modelview * curVertex;
  1490. Debug: float referenceTime = 15.0;
  1491. Debug: float c = 0.0;
  1492. Debug: if (currentTime > referenceTime * 1.0 - 5.0)
  1493. Debug: {
  1494. Debug: c = (currentTime - (referenceTime * 1.0 - 5.0)) / 2.0;
  1495. Debug: }
  1496. Debug: color = vec4(c, c, c, 1.0);
  1497. Debug: }
  1498. Debug: Loading fragment shader from file None:
  1499. Debug: #ifdef GL_ES
  1500. Debug: precision mediump float;
  1501. Debug: #endif
  1502. Debug: varying vec4 color;
  1503. Debug:
  1504. Debug: void main()
  1505. Debug: {
  1506. Debug: gl_FragColor = color;
  1507. Debug: }
  1508. Debug: Loading vertex shader from file None:
  1509. Debug: uniform mat4 projection;
  1510. Debug: uniform mat4 modelview;
  1511. Debug: attribute vec3 vertex;
  1512. Debug: varying vec4 color;
  1513. Debug:
  1514. Debug: void main()
  1515. Debug: {
  1516. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1517. Debug: gl_Position = projection * modelview * curVertex;
  1518. Debug: color = vec4(0.0, 0.0, 0.0, 1.0);
  1519. Debug: }
  1520. Debug: Loading fragment shader from file None:
  1521. Debug: #ifdef GL_ES
  1522. Debug: precision mediump float;
  1523. Debug: #endif
  1524. Debug: varying vec4 color;
  1525. Debug:
  1526. Debug: void main()
  1527. Debug: {
  1528. Debug: gl_FragColor = color;
  1529. Debug: }
  1530. Debug: Loading vertex shader from file None:
  1531. Debug: uniform mat4 projection;
  1532. Debug: uniform mat4 modelview;
  1533. Debug: uniform mat3 normalMatrix;
  1534. Debug: varying vec3 vertex_normal;
  1535. Debug: varying vec4 vertex_position;
  1536. Debug: varying vec3 eye_direction;
  1537. Debug: attribute vec3 vertex;
  1538. Debug: attribute vec3 normal;
  1539. Debug:
  1540. Debug: vec3 unitvec(vec4 v1, vec4 v2)
  1541. Debug: {
  1542. Debug: if (v1.w == 0.0 && v2.w == 0.0)
  1543. Debug: return vec3(v2 - v1);
  1544. Debug: if (v1.w == 0.0)
  1545. Debug: return vec3(-v1);
  1546. Debug: if (v2.w == 0.0)
  1547. Debug: return vec3(v2);
  1548. Debug: return v2.xyz/v2.w - v1.xyz/v1.w;
  1549. Debug: }
  1550. Debug:
  1551. Debug: void main()
  1552. Debug: {
  1553. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1554. Debug: gl_Position = projection * modelview * curVertex;
  1555. Debug: vertex_normal = normalMatrix * normal;
  1556. Debug: vertex_position = modelview * curVertex;
  1557. Debug: eye_direction = normalize(unitvec(vertex_position, vec4(0.0, 0.0, 0.0, 1.0)));
  1558. Debug: }
  1559. Debug: Loading fragment shader from file None:
  1560. Debug: #ifdef GL_ES
  1561. Debug: precision mediump float;
  1562. Debug: #endif
  1563. Debug: uniform vec4 light0Position;
  1564. Debug: varying vec3 vertex_normal;
  1565. Debug: varying vec4 vertex_position;
  1566. Debug: varying vec3 eye_direction;
  1567. Debug:
  1568. Debug: vec3 unitvec(vec4 v1, vec4 v2)
  1569. Debug: {
  1570. Debug: if (v1.w == 0.0 && v2.w == 0.0)
  1571. Debug: return vec3(v2 - v1);
  1572. Debug: if (v1.w == 0.0)
  1573. Debug: return vec3(-v1);
  1574. Debug: if (v2.w == 0.0)
  1575. Debug: return vec3(v2);
  1576. Debug: return v2.xyz/v2.w - v1.xyz/v1.w;
  1577. Debug: }
  1578. Debug:
  1579. Debug: void main()
  1580. Debug: {
  1581. Debug: vec4 lightAmbient = vec4(0.0, 0.0, 0.0, 1.0);
  1582. Debug: vec4 lightDiffuse = vec4(1.0, 1.0, 1.0, 1.0);
  1583. Debug: vec4 lightSpecular = vec4(1.0, 1.0, 1.0, 1.0);
  1584. Debug: vec4 matAmbient = vec4(0.1, 0.1, 0.1, 1.0);
  1585. Debug: vec4 matDiffuse = vec4(0.5, 0.4, 0.7, 1.0);
  1586. Debug: vec4 matSpecular = vec4(1.0, 1.0, 1.0, 1.0);
  1587. Debug: float matShininess = 30.0;
  1588. Debug: vec3 light_direction = normalize(unitvec(vertex_position, light0Position));
  1589. Debug: vec3 normalized_normal = normalize(vertex_normal);
  1590. Debug: vec3 reflection = reflect(-light_direction, normalized_normal);
  1591. Debug: float specularTerm = pow(max(0.0, dot(reflection, eye_direction)), matShininess);
  1592. Debug: float diffuseTerm = max(0.0, dot(normalized_normal, light_direction));
  1593. Debug: vec4 specular = (lightSpecular * matSpecular);
  1594. Debug: vec4 ambient = (lightAmbient * matAmbient);
  1595. Debug: vec4 diffuse = (lightDiffuse * matDiffuse);
  1596. Debug: gl_FragColor = (specular * specularTerm) + ambient + (diffuse * diffuseTerm);
  1597. Debug: }
  1598. Debug: Loading vertex shader from file None:
  1599. Debug: uniform mat4 projection;
  1600. Debug: uniform mat4 modelview;
  1601. Debug: attribute vec3 vertex;
  1602. Debug:
  1603. Debug: void main()
  1604. Debug: {
  1605. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1606. Debug: gl_Position = projection * modelview * curVertex;
  1607. Debug: }
  1608. Debug: Loading fragment shader from file None:
  1609. Debug: #ifdef GL_ES
  1610. Debug: precision mediump float;
  1611. Debug: #endif
  1612. Debug: uniform vec4 logoColor;
  1613. Debug:
  1614. Debug: void main()
  1615. Debug: {
  1616. Debug: gl_FragColor = logoColor;
  1617. Debug: }
  1618. Debug: Loading vertex shader from file None:
  1619. Debug: uniform mat4 projection;
  1620. Debug: uniform mat4 modelview;
  1621. Debug: attribute vec3 vertex;
  1622. Debug:
  1623. Debug: void main()
  1624. Debug: {
  1625. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1626. Debug: gl_Position = projection * modelview * curVertex;
  1627. Debug: }
  1628. Debug: Loading fragment shader from file None:
  1629. Debug: #ifdef GL_ES
  1630. Debug: precision mediump float;
  1631. Debug: #endif
  1632. Debug: uniform sampler2D tex;
  1633. Debug:
  1634. Debug: void main()
  1635. Debug: {
  1636. Debug: vec2 curPos = gl_FragCoord.xy / 32.0;
  1637. Debug: vec4 color = texture2D(tex, curPos);
  1638. Debug: if (color.w < 0.5)
  1639. Debug: discard;
  1640. Debug: gl_FragColor = color;
  1641. Debug: }
  1642. Debug: Loading vertex shader from file None:
  1643. Debug: uniform mat4 projection;
  1644. Debug: uniform mat4 modelview;
  1645. Debug: uniform mat3 normalMatrix;
  1646. Debug: varying vec3 vertex_normal;
  1647. Debug: varying vec4 vertex_position;
  1648. Debug: varying vec3 eye_direction;
  1649. Debug: attribute vec3 vertex;
  1650. Debug: attribute vec3 normal;
  1651. Debug:
  1652. Debug: vec3 unitvec(vec4 v1, vec4 v2)
  1653. Debug: {
  1654. Debug: if (v1.w == 0.0 && v2.w == 0.0)
  1655. Debug: return vec3(v2 - v1);
  1656. Debug: if (v1.w == 0.0)
  1657. Debug: return vec3(-v1);
  1658. Debug: if (v2.w == 0.0)
  1659. Debug: return vec3(v2);
  1660. Debug: return v2.xyz/v2.w - v1.xyz/v1.w;
  1661. Debug: }
  1662. Debug:
  1663. Debug: void main()
  1664. Debug: {
  1665. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1666. Debug: gl_Position = projection * modelview * curVertex;
  1667. Debug: vertex_normal = normalMatrix * normal;
  1668. Debug: vertex_position = modelview * curVertex;
  1669. Debug: eye_direction = normalize(unitvec(vertex_position, vec4(0.0, 0.0, 0.0, 1.0)));
  1670. Debug: }
  1671. Debug: Loading fragment shader from file None:
  1672. Debug: #ifdef GL_ES
  1673. Debug: precision mediump float;
  1674. Debug: #endif
  1675. Debug: struct LightSourceParameters
  1676. Debug: {
  1677. Debug: vec4 ambient;
  1678. Debug: vec4 diffuse;
  1679. Debug: vec4 specular;
  1680. Debug: vec4 position;
  1681. Debug: };
  1682. Debug: LightSourceParameters lightSource[3];
  1683. Debug: uniform mat4 modelview;
  1684. Debug: uniform vec4 light0Position;
  1685. Debug: uniform vec4 light1Position;
  1686. Debug: uniform vec4 light2Position;
  1687. Debug: varying vec3 vertex_normal;
  1688. Debug: varying vec4 vertex_position;
  1689. Debug: varying vec3 eye_direction;
  1690. Debug:
  1691. Debug: vec3 unitvec(vec4 v1, vec4 v2)
  1692. Debug: {
  1693. Debug: if (v1.w == 0.0 && v2.w == 0.0)
  1694. Debug: return vec3(v2 - v1);
  1695. Debug: if (v1.w == 0.0)
  1696. Debug: return vec3(-v1);
  1697. Debug: if (v2.w == 0.0)
  1698. Debug: return vec3(v2);
  1699. Debug: return v2.xyz/v2.w - v1.xyz/v1.w;
  1700. Debug: }
  1701. Debug:
  1702. Debug: void main()
  1703. Debug: {
  1704. Debug: lightSource[0] = LightSourceParameters(
  1705. Debug: vec4(0.0, 0.0, 0.0, 1.0),
  1706. Debug: vec4(1.0, 1.0, 1.0, 1.0),
  1707. Debug: vec4(1.0, 1.0, 1.0, 1.0),
  1708. Debug: vec4(0.0, 1.0, 0.0, 0.0)
  1709. Debug: );
  1710. Debug: lightSource[1] = LightSourceParameters(
  1711. Debug: vec4(0.0, 0.0, 0.0, 1.0),
  1712. Debug: vec4(0.3, 0.3, 0.5, 1.0),
  1713. Debug: vec4(0.3, 0.3, 0.5, 1.0),
  1714. Debug: vec4(-1.0, 0.0, 0.0, 0.0)
  1715. Debug: );
  1716. Debug: lightSource[2] = LightSourceParameters(
  1717. Debug: vec4(0.2, 0.2, 0.2, 1.0),
  1718. Debug: vec4(0.2, 0.2, 0.2, 1.0),
  1719. Debug: vec4(0.2, 0.2, 0.2, 1.0),
  1720. Debug: vec4(0.0, -1.0, 0.0, 0.0)
  1721. Debug: );
  1722. Debug: vec4 matAmbient = vec4(0.0, 0.0, 0.0, 1.0);
  1723. Debug: vec4 matDiffuse = vec4(1.0, 0.2, 0.2, 1.0);
  1724. Debug: vec4 matSpecular = vec4(0.5, 0.5, 0.5, 1.0);
  1725. Debug: float matShininess = 20.0;
  1726. Debug: vec4 diffuseSum = vec4(0.0, 0.0, 0.0, 0.0);
  1727. Debug: vec4 specularSum = vec4(0.0, 0.0, 0.0, 0.0);
  1728. Debug: vec4 ambientSum = vec4(0.0, 0.0, 0.0, 0.0);
  1729. Debug: vec3 normalized_normal = normalize(vertex_normal);
  1730. Debug: lightSource[0].position = light0Position;
  1731. Debug: lightSource[1].position = light1Position;
  1732. Debug: lightSource[2].position = light2Position;
  1733. Debug: for (int light = 0; light < 3; light++) {
  1734. Debug: vec4 light_position = lightSource[light].position;
  1735. Debug: vec3 light_direction = normalize(unitvec(vertex_position, light_position));
  1736. Debug: vec3 reflection = reflect(-light_direction, normalized_normal);
  1737. Debug: specularSum += pow(max(0.0, dot(reflection, eye_direction)), matShininess) * lightSource[light].specular;
  1738. Debug: diffuseSum += max(0.0, dot(normalized_normal, light_direction)) * lightSource[light].diffuse;
  1739. Debug: ambientSum += lightSource[light].ambient;
  1740. Debug: }
  1741. Debug: gl_FragColor = (matSpecular * specularSum) + (matAmbient * ambientSum) + (matDiffuse * diffuseSum);
  1742. Debug: }
  1743. Debug: Loading vertex shader from file None:
  1744. Debug: uniform mat4 projection;
  1745. Debug: uniform mat4 modelview;
  1746. Debug: attribute vec3 vertex;
  1747. Debug: varying vec4 color;
  1748. Debug:
  1749. Debug: void main()
  1750. Debug: {
  1751. Debug: vec4 curVertex = vec4(vertex.x, vertex.y, vertex.z, 1.0);
  1752. Debug: gl_Position = projection * modelview * curVertex;
  1753. Debug: color = vec4(1.0, 1.0, 1.0, 1.0);
  1754. Debug: }
  1755. Debug: Loading fragment shader from file None:
  1756. Debug: #ifdef GL_ES
  1757. Debug: precision mediump float;
  1758. Debug: #endif
  1759. Debug: varying vec4 color;
  1760. Debug:
  1761. Debug: void main()
  1762. Debug: {
  1763. Debug: gl_FragColor = color;
  1764. Debug: }
  1765. Info: [ideas] speed=duration: Validation: Unknown
  1766. Debug: Loading model from file '/usr/share/glmark2/models/jellyfish.jobj'
  1767. Debug: Object populated with 2808 vertices 2808 normals 2808 colors 2808 texcoords and 13200 indices.
  1768. Debug: Loading vertex shader from file None:
  1769. Debug: attribute vec2 position;
  1770. Debug: attribute vec2 uvIn;
  1771. Debug:
  1772. Debug: varying vec2 uv;
  1773. Debug:
  1774. Debug: void main()
  1775. Debug: {
  1776. Debug: uv = uvIn;
  1777. Debug: gl_Position = vec4(position, 1.0, 1.0);
  1778. Debug: }
  1779. Debug: Loading fragment shader from file None:
  1780. Debug: #ifdef GL_ES
  1781. Debug: precision mediump float;
  1782. Debug: #endif
  1783. Debug: uniform vec3 color1;
  1784. Debug: uniform vec3 color2;
  1785. Debug:
  1786. Debug: varying vec2 uv;
  1787. Debug:
  1788. Debug: void main()
  1789. Debug: {
  1790. Debug: vec3 color = mix(color1, color2, uv.x * uv.y);
  1791. Debug: gl_FragColor = vec4(color, 1.0);
  1792. Debug: }
  1793. Debug: Loading vertex shader from file None:
  1794. Debug: attribute vec3 aVertexPosition;
  1795. Debug: attribute vec3 aVertexNormal;
  1796. Debug: attribute vec3 aVertexColor;
  1797. Debug: attribute vec3 aTextureCoord;
  1798. Debug:
  1799. Debug: uniform mat4 uWorld;
  1800. Debug: uniform mat4 uWorldViewProj;
  1801. Debug: uniform mat4 uWorldInvTranspose;
  1802. Debug: uniform vec3 uLightPos;
  1803. Debug: uniform float uLightRadius;
  1804. Debug: uniform vec4 uLightCol;
  1805. Debug: uniform vec4 uAmbientCol;
  1806. Debug: uniform vec4 uFresnelCol;
  1807. Debug: uniform float uFresnelPower;
  1808. Debug: uniform float uCurrentTime;
  1809. Debug:
  1810. Debug: varying vec2 vTextureCoord;
  1811. Debug: varying vec4 vWorld;
  1812. Debug: varying vec3 vDiffuse;
  1813. Debug: varying vec3 vAmbient;
  1814. Debug: varying vec3 vFresnel;
  1815. Debug:
  1816. Debug: void main(void)
  1817. Debug: {
  1818. Debug: //Vertex Animation
  1819. Debug: float speed = uCurrentTime / 15.0;
  1820. Debug: float offset = smoothstep(0.0, 1.0, max(0.0, -aVertexPosition.y-0.8) / 10.0);
  1821. Debug: vec3 pos = aVertexPosition +
  1822. Debug: aVertexColor / 12.0 *
  1823. Debug: sin(speed * 15.0 + aVertexPosition.y / 2.0) * (1.0 - offset);
  1824. Debug: pos = pos + aVertexColor / 8.0 *
  1825. Debug: sin(speed * 30.0 + aVertexPosition.y / 0.5) * (1.0 - offset);
  1826. Debug: vec4 pos4 = vec4(pos, 1.0);
  1827. Debug: gl_Position = uWorldViewProj * pos4;
  1828. Debug:
  1829. Debug: vWorld = uWorld * pos4;
  1830. Debug: vec3 vVertexNormal = normalize((uWorldInvTranspose * vec4(aVertexNormal, 1.0)).xyz);
  1831. Debug:
  1832. Debug: //diffuse
  1833. Debug: vec3 lightDir = normalize(uLightPos - vWorld.xyz);
  1834. Debug: float diffuseProduct = max(dot(normalize(vVertexNormal.xyz), lightDir), 0.0);
  1835. Debug: float lightFalloff = pow(max(1.0-(distance(uLightPos, vWorld.xyz)/uLightRadius), 0.0),2.0);
  1836. Debug: vDiffuse = uLightCol.rgb * vec3(diffuseProduct * lightFalloff * uLightCol.a);
  1837. Debug:
  1838. Debug: //ambient (top)
  1839. Debug: vAmbient = uAmbientCol.rgb * vec3(uAmbientCol.a) * vVertexNormal.y;
  1840. Debug:
  1841. Debug: //fresnel
  1842. Debug: vec4 worldPos = uWorld * pos4;
  1843. Debug: vec3 vWorldEyeVec = normalize(worldPos.xyz/worldPos.w);
  1844. Debug: float fresnelProduct = pow(1.0 - max(abs(dot(vVertexNormal, -vWorldEyeVec)), 0.0), uFresnelPower);
  1845. Debug: vFresnel = uFresnelCol.rgb * vec3(uFresnelCol.a * fresnelProduct);
  1846. Debug:
  1847. Debug: // texcoord
  1848. Debug: vTextureCoord = aTextureCoord.xy;
  1849. Debug: }
  1850. Debug: Loading fragment shader from file None:
  1851. Debug: #ifdef GL_ES
  1852. Debug: precision mediump float;
  1853. Debug: #endif
  1854. Debug: #ifdef GL_ES
  1855. Debug: precision highp float;
  1856. Debug: #endif
  1857. Debug:
  1858. Debug: uniform sampler2D uSampler;
  1859. Debug: uniform sampler2D uSampler1;
  1860. Debug: uniform float uCurrentTime;
  1861. Debug:
  1862. Debug: varying vec2 vTextureCoord;
  1863. Debug: varying vec4 vWorld;
  1864. Debug: varying vec3 vDiffuse;
  1865. Debug: varying vec3 vAmbient;
  1866. Debug: varying vec3 vFresnel;
  1867. Debug:
  1868. Debug: void main(void)
  1869. Debug: {
  1870. Debug: vec4 caustics = texture2D(uSampler1, vec2(vWorld.x / 24.0 + uCurrentTime / 20.0, (vWorld.z - vWorld.y)/48.0 + uCurrentTime / 40.0));
  1871. Debug: vec4 colorMap = texture2D(uSampler, vTextureCoord);
  1872. Debug: float transparency = colorMap.a + pow(vFresnel.r, 2.0) - 0.3;
  1873. Debug: gl_FragColor = vec4(((vAmbient + vDiffuse + caustics.rgb) * colorMap.rgb), transparency);
  1874. Debug: }
  1875. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish256.png
  1876. Debug: Height: 256 Width: 256 Bpp: 4
  1877. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-01.png
  1878. Debug: Height: 256 Width: 256 Bpp: 3
  1879. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-02.png
  1880. Debug: Height: 256 Width: 256 Bpp: 3
  1881. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-03.png
  1882. Debug: Height: 256 Width: 256 Bpp: 3
  1883. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-04.png
  1884. Debug: Height: 256 Width: 256 Bpp: 3
  1885. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-05.png
  1886. Debug: Height: 256 Width: 256 Bpp: 3
  1887. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-06.png
  1888. Debug: Height: 256 Width: 256 Bpp: 3
  1889. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-07.png
  1890. Debug: Height: 256 Width: 256 Bpp: 3
  1891. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-08.png
  1892. Debug: Height: 256 Width: 256 Bpp: 3
  1893. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-09.png
  1894. Debug: Height: 256 Width: 256 Bpp: 3
  1895. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-10.png
  1896. Debug: Height: 256 Width: 256 Bpp: 3
  1897. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-11.png
  1898. Debug: Height: 256 Width: 256 Bpp: 3
  1899. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-12.png
  1900. Debug: Height: 256 Width: 256 Bpp: 3
  1901. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-13.png
  1902. Debug: Height: 256 Width: 256 Bpp: 3
  1903. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-14.png
  1904. Debug: Height: 256 Width: 256 Bpp: 3
  1905. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-15.png
  1906. Debug: Height: 256 Width: 256 Bpp: 3
  1907. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-16.png
  1908. Debug: Height: 256 Width: 256 Bpp: 3
  1909. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-17.png
  1910. Debug: Height: 256 Width: 256 Bpp: 3
  1911. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-18.png
  1912. Debug: Height: 256 Width: 256 Bpp: 3
  1913. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-19.png
  1914. Debug: Height: 256 Width: 256 Bpp: 3
  1915. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-20.png
  1916. Debug: Height: 256 Width: 256 Bpp: 3
  1917. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-21.png
  1918. Debug: Height: 256 Width: 256 Bpp: 3
  1919. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-22.png
  1920. Debug: Height: 256 Width: 256 Bpp: 3
  1921. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-23.png
  1922. Debug: Height: 256 Width: 256 Bpp: 3
  1923. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-24.png
  1924. Debug: Height: 256 Width: 256 Bpp: 3
  1925. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-25.png
  1926. Debug: Height: 256 Width: 256 Bpp: 3
  1927. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-26.png
  1928. Debug: Height: 256 Width: 256 Bpp: 3
  1929. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-27.png
  1930. Debug: Height: 256 Width: 256 Bpp: 3
  1931. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-28.png
  1932. Debug: Height: 256 Width: 256 Bpp: 3
  1933. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-29.png
  1934. Debug: Height: 256 Width: 256 Bpp: 3
  1935. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-30.png
  1936. Debug: Height: 256 Width: 256 Bpp: 3
  1937. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-31.png
  1938. Debug: Height: 256 Width: 256 Bpp: 3
  1939. Debug: Reading PNG file /usr/share/glmark2/textures/jellyfish-caustics-32.png
  1940. Debug: Height: 256 Width: 256 Bpp: 3
  1941. Info: [jellyfish] <default>: Validation: Unknown
  1942. Info: [terrain] <default>: Validation: Unknown
  1943. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  1944. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  1945. Debug: Loading vertex shader from file None:
  1946. Debug: attribute vec3 position;
  1947. Debug:
  1948. Debug: uniform mat4 ModelViewProjectionMatrix;
  1949. Debug:
  1950. Debug: // Removing this varying causes an inexplicable performance regression
  1951. Debug: // with r600g... Keeping it for now.
  1952. Debug: varying vec4 dummy;
  1953. Debug:
  1954. Debug: void main(void)
  1955. Debug: {
  1956. Debug: dummy = vec4(1.0);
  1957. Debug:
  1958. Debug: float d = fract(position.x);
  1959. Debug:
  1960. Debug:
  1961. Debug:
  1962. Debug: vec4 pos = vec4(position.x,
  1963. Debug: position.y + 0.1 * d * fract(position.x),
  1964. Debug: position.z, 1.0);
  1965. Debug:
  1966. Debug: // Transform the position to clip coordinates
  1967. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  1968. Debug: }
  1969. Debug:
  1970. Debug:
  1971. Debug: Loading fragment shader from file None:
  1972. Debug: #ifdef GL_ES
  1973. Debug: precision mediump float;
  1974. Debug: #endif
  1975. Debug: varying vec4 dummy;
  1976. Debug:
  1977. Debug: void main(void)
  1978. Debug: {
  1979. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  1980. Debug:
  1981. Debug:
  1982. Debug:
  1983. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  1984. Debug: }
  1985. Debug:
  1986. Info: [conditionals] fragment-steps=0:vertex-steps=0:Debug: Validation failed! Expected: 0xffa0a0a0 Actual: 0xffb94628 Distance: 152.069063
  1987. Validation: Failure
  1988. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  1989. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  1990. Debug: Loading vertex shader from file None:
  1991. Debug: attribute vec3 position;
  1992. Debug:
  1993. Debug: uniform mat4 ModelViewProjectionMatrix;
  1994. Debug:
  1995. Debug: // Removing this varying causes an inexplicable performance regression
  1996. Debug: // with r600g... Keeping it for now.
  1997. Debug: varying vec4 dummy;
  1998. Debug:
  1999. Debug: void main(void)
  2000. Debug: {
  2001. Debug: dummy = vec4(1.0);
  2002. Debug:
  2003. Debug: float d = fract(position.x);
  2004. Debug:
  2005. Debug:
  2006. Debug:
  2007. Debug: vec4 pos = vec4(position.x,
  2008. Debug: position.y + 0.1 * d * fract(position.x),
  2009. Debug: position.z, 1.0);
  2010. Debug:
  2011. Debug: // Transform the position to clip coordinates
  2012. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2013. Debug: }
  2014. Debug:
  2015. Debug:
  2016. Debug: Loading fragment shader from file None:
  2017. Debug: #ifdef GL_ES
  2018. Debug: precision mediump float;
  2019. Debug: #endif
  2020. Debug: varying vec4 dummy;
  2021. Debug:
  2022. Debug: void main(void)
  2023. Debug: {
  2024. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2025. Debug:
  2026. Debug: if (d >= 0.5)
  2027. Debug: d = fract(2.0 * d);
  2028. Debug: else
  2029. Debug: d = fract(3.0 * d);
  2030. Debug: if (d >= 0.5)
  2031. Debug: d = fract(2.0 * d);
  2032. Debug: else
  2033. Debug: d = fract(3.0 * d);
  2034. Debug: if (d >= 0.5)
  2035. Debug: d = fract(2.0 * d);
  2036. Debug: else
  2037. Debug: d = fract(3.0 * d);
  2038. Debug: if (d >= 0.5)
  2039. Debug: d = fract(2.0 * d);
  2040. Debug: else
  2041. Debug: d = fract(3.0 * d);
  2042. Debug: if (d >= 0.5)
  2043. Debug: d = fract(2.0 * d);
  2044. Debug: else
  2045. Debug: d = fract(3.0 * d);
  2046. Debug:
  2047. Debug:
  2048. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2049. Debug: }
  2050. Debug:
  2051. Info: [conditionals] fragment-steps=5:vertex-steps=0:Debug: Validation failed! Expected: 0xff252525 Actual: 0xffa0a0a0 Distance: 213.042249
  2052. Validation: Failure
  2053. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2054. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2055. Debug: Loading vertex shader from file None:
  2056. Debug: attribute vec3 position;
  2057. Debug:
  2058. Debug: uniform mat4 ModelViewProjectionMatrix;
  2059. Debug:
  2060. Debug: // Removing this varying causes an inexplicable performance regression
  2061. Debug: // with r600g... Keeping it for now.
  2062. Debug: varying vec4 dummy;
  2063. Debug:
  2064. Debug: void main(void)
  2065. Debug: {
  2066. Debug: dummy = vec4(1.0);
  2067. Debug:
  2068. Debug: float d = fract(position.x);
  2069. Debug:
  2070. Debug: if (d >= 0.5)
  2071. Debug: d = fract(2.0 * d);
  2072. Debug: else
  2073. Debug: d = fract(3.0 * d);
  2074. Debug: if (d >= 0.5)
  2075. Debug: d = fract(2.0 * d);
  2076. Debug: else
  2077. Debug: d = fract(3.0 * d);
  2078. Debug: if (d >= 0.5)
  2079. Debug: d = fract(2.0 * d);
  2080. Debug: else
  2081. Debug: d = fract(3.0 * d);
  2082. Debug: if (d >= 0.5)
  2083. Debug: d = fract(2.0 * d);
  2084. Debug: else
  2085. Debug: d = fract(3.0 * d);
  2086. Debug: if (d >= 0.5)
  2087. Debug: d = fract(2.0 * d);
  2088. Debug: else
  2089. Debug: d = fract(3.0 * d);
  2090. Debug:
  2091. Debug:
  2092. Debug: vec4 pos = vec4(position.x,
  2093. Debug: position.y + 0.1 * d * fract(position.x),
  2094. Debug: position.z, 1.0);
  2095. Debug:
  2096. Debug: // Transform the position to clip coordinates
  2097. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2098. Debug: }
  2099. Debug:
  2100. Debug:
  2101. Debug: Loading fragment shader from file None:
  2102. Debug: #ifdef GL_ES
  2103. Debug: precision mediump float;
  2104. Debug: #endif
  2105. Debug: varying vec4 dummy;
  2106. Debug:
  2107. Debug: void main(void)
  2108. Debug: {
  2109. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2110. Debug:
  2111. Debug:
  2112. Debug:
  2113. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2114. Debug: }
  2115. Debug:
  2116. Info: [conditionals] fragment-steps=0:vertex-steps=5:Debug: Validation failed! Expected: 0xffa0a0a0 Actual: 0xff242424 Distance: 214.774300
  2117. Validation: Failure
  2118. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2119. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2120. Debug: Loading vertex shader from file None:
  2121. Debug: attribute vec3 position;
  2122. Debug:
  2123. Debug: uniform mat4 ModelViewProjectionMatrix;
  2124. Debug:
  2125. Debug: // Removing this varying causes an inexplicable performance regression
  2126. Debug: // with r600g... Keeping it for now.
  2127. Debug: varying vec4 dummy;
  2128. Debug:
  2129. Debug: float process(float d)
  2130. Debug: {
  2131. Debug: d = fract(3.0 * d);
  2132. Debug:
  2133. Debug: return d;
  2134. Debug: }
  2135. Debug:
  2136. Debug: void main(void)
  2137. Debug: {
  2138. Debug: dummy = vec4(1.0);
  2139. Debug:
  2140. Debug: float d = fract(position.x);
  2141. Debug:
  2142. Debug: d = process(d);
  2143. Debug:
  2144. Debug:
  2145. Debug: vec4 pos = vec4(position.x,
  2146. Debug: position.y + 0.1 * d * fract(position.x),
  2147. Debug: position.z, 1.0);
  2148. Debug:
  2149. Debug: // Transform the position to clip coordinates
  2150. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2151. Debug: }
  2152. Debug:
  2153. Debug: Loading fragment shader from file None:
  2154. Debug: #ifdef GL_ES
  2155. Debug: precision mediump float;
  2156. Debug: #endif
  2157. Debug: varying vec4 dummy;
  2158. Debug:
  2159. Debug: float process(float d)
  2160. Debug: {
  2161. Debug: d = fract(3.0 * d);
  2162. Debug:
  2163. Debug: return d;
  2164. Debug: }
  2165. Debug:
  2166. Debug: void main(void)
  2167. Debug: {
  2168. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2169. Debug:
  2170. Debug: d = process(d);
  2171. Debug: d = process(d);
  2172. Debug: d = process(d);
  2173. Debug: d = process(d);
  2174. Debug: d = process(d);
  2175. Debug:
  2176. Debug:
  2177. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2178. Debug: }
  2179. Info: [function] fragment-complexity=low:fragment-steps=5:Debug: Validation failed! Expected: 0xff5e5e5e Actual: 0xffa0a0a0 Distance: 114.315353
  2180. Validation: Failure
  2181. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2182. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2183. Debug: Loading vertex shader from file None:
  2184. Debug: attribute vec3 position;
  2185. Debug:
  2186. Debug: uniform mat4 ModelViewProjectionMatrix;
  2187. Debug:
  2188. Debug: // Removing this varying causes an inexplicable performance regression
  2189. Debug: // with r600g... Keeping it for now.
  2190. Debug: varying vec4 dummy;
  2191. Debug:
  2192. Debug: float process(float d)
  2193. Debug: {
  2194. Debug: d = fract(3.0 * d);
  2195. Debug:
  2196. Debug: return d;
  2197. Debug: }
  2198. Debug:
  2199. Debug: void main(void)
  2200. Debug: {
  2201. Debug: dummy = vec4(1.0);
  2202. Debug:
  2203. Debug: float d = fract(position.x);
  2204. Debug:
  2205. Debug: d = process(d);
  2206. Debug:
  2207. Debug:
  2208. Debug: vec4 pos = vec4(position.x,
  2209. Debug: position.y + 0.1 * d * fract(position.x),
  2210. Debug: position.z, 1.0);
  2211. Debug:
  2212. Debug: // Transform the position to clip coordinates
  2213. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2214. Debug: }
  2215. Debug:
  2216. Debug: Loading fragment shader from file None:
  2217. Debug: #ifdef GL_ES
  2218. Debug: precision mediump float;
  2219. Debug: #endif
  2220. Debug: varying vec4 dummy;
  2221. Debug:
  2222. Debug: float process(float d)
  2223. Debug: {
  2224. Debug: d = fract(3.0 * d) * fract(3.0 * d);
  2225. Debug: d = fract(sqrt(d));
  2226. Debug:
  2227. Debug: return d;
  2228. Debug: }
  2229. Debug:
  2230. Debug: void main(void)
  2231. Debug: {
  2232. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2233. Debug:
  2234. Debug: d = process(d);
  2235. Debug: d = process(d);
  2236. Debug: d = process(d);
  2237. Debug: d = process(d);
  2238. Debug: d = process(d);
  2239. Debug:
  2240. Debug:
  2241. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2242. Debug: }
  2243. Info: [function] fragment-complexity=medium:fragment-steps=5: Validation: Success
  2244. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2245. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2246. Debug: Loading vertex shader from file None:
  2247. Debug: attribute vec3 position;
  2248. Debug:
  2249. Debug: uniform mat4 ModelViewProjectionMatrix;
  2250. Debug: uniform int VertexLoops;
  2251. Debug:
  2252. Debug: // Removing this varying causes an inexplicable performance regression
  2253. Debug: // with r600g... Keeping it for now.
  2254. Debug: varying vec4 dummy;
  2255. Debug:
  2256. Debug: void main(void)
  2257. Debug: {
  2258. Debug: dummy = vec4(1.0);
  2259. Debug:
  2260. Debug: float d = fract(position.x);
  2261. Debug:
  2262. Debug: for (int i = 0; i < VertexLoops; i++)
  2263. Debug: d = fract(3.0 * d);
  2264. Debug:
  2265. Debug:
  2266. Debug: vec4 pos = vec4(position.x,
  2267. Debug: position.y + 0.1 * d * fract(position.x),
  2268. Debug: position.z, 1.0);
  2269. Debug:
  2270. Debug: // Transform the position to clip coordinates
  2271. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2272. Debug: }
  2273. Debug:
  2274. Debug:
  2275. Debug: Loading fragment shader from file None:
  2276. Debug: #ifdef GL_ES
  2277. Debug: precision mediump float;
  2278. Debug: #endif
  2279. Debug: varying vec4 dummy;
  2280. Debug: uniform int FragmentLoops;
  2281. Debug:
  2282. Debug: void main(void)
  2283. Debug: {
  2284. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2285. Debug:
  2286. Debug: d = fract(3.0 * d);
  2287. Debug: d = fract(3.0 * d);
  2288. Debug: d = fract(3.0 * d);
  2289. Debug: d = fract(3.0 * d);
  2290. Debug: d = fract(3.0 * d);
  2291. Debug:
  2292. Debug:
  2293. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2294. Debug: }
  2295. Debug:
  2296. Info: [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: Validation: Success
  2297. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2298. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2299. Debug: Loading vertex shader from file None:
  2300. Debug: attribute vec3 position;
  2301. Debug:
  2302. Debug: uniform mat4 ModelViewProjectionMatrix;
  2303. Debug: uniform int VertexLoops;
  2304. Debug:
  2305. Debug: // Removing this varying causes an inexplicable performance regression
  2306. Debug: // with r600g... Keeping it for now.
  2307. Debug: varying vec4 dummy;
  2308. Debug:
  2309. Debug: void main(void)
  2310. Debug: {
  2311. Debug: dummy = vec4(1.0);
  2312. Debug:
  2313. Debug: float d = fract(position.x);
  2314. Debug:
  2315. Debug: for (int i = 0; i < VertexLoops; i++)
  2316. Debug: d = fract(3.0 * d);
  2317. Debug:
  2318. Debug:
  2319. Debug: vec4 pos = vec4(position.x,
  2320. Debug: position.y + 0.1 * d * fract(position.x),
  2321. Debug: position.z, 1.0);
  2322. Debug:
  2323. Debug: // Transform the position to clip coordinates
  2324. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2325. Debug: }
  2326. Debug:
  2327. Debug:
  2328. Debug: Loading fragment shader from file None:
  2329. Debug: #ifdef GL_ES
  2330. Debug: precision mediump float;
  2331. Debug: #endif
  2332. Debug: varying vec4 dummy;
  2333. Debug: uniform int FragmentLoops;
  2334. Debug:
  2335. Debug: void main(void)
  2336. Debug: {
  2337. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2338. Debug:
  2339. Debug: for (int i = 0; i < 5; i++)
  2340. Debug: d = fract(3.0 * d);
  2341. Debug:
  2342. Debug:
  2343. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2344. Debug: }
  2345. Debug:
  2346. Info: [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: Validation: Success
  2347. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2348. Debug: Cannot infer shader type from contents. Leaving it Unknown.
  2349. Debug: Loading vertex shader from file None:
  2350. Debug: attribute vec3 position;
  2351. Debug:
  2352. Debug: uniform mat4 ModelViewProjectionMatrix;
  2353. Debug: uniform int VertexLoops;
  2354. Debug:
  2355. Debug: // Removing this varying causes an inexplicable performance regression
  2356. Debug: // with r600g... Keeping it for now.
  2357. Debug: varying vec4 dummy;
  2358. Debug:
  2359. Debug: void main(void)
  2360. Debug: {
  2361. Debug: dummy = vec4(1.0);
  2362. Debug:
  2363. Debug: float d = fract(position.x);
  2364. Debug:
  2365. Debug: for (int i = 0; i < VertexLoops; i++)
  2366. Debug: d = fract(3.0 * d);
  2367. Debug:
  2368. Debug:
  2369. Debug: vec4 pos = vec4(position.x,
  2370. Debug: position.y + 0.1 * d * fract(position.x),
  2371. Debug: position.z, 1.0);
  2372. Debug:
  2373. Debug: // Transform the position to clip coordinates
  2374. Debug: gl_Position = ModelViewProjectionMatrix * pos;
  2375. Debug: }
  2376. Debug:
  2377. Debug:
  2378. Debug: Loading fragment shader from file None:
  2379. Debug: #ifdef GL_ES
  2380. Debug: precision mediump float;
  2381. Debug: #endif
  2382. Debug: varying vec4 dummy;
  2383. Debug: uniform int FragmentLoops;
  2384. Debug:
  2385. Debug: void main(void)
  2386. Debug: {
  2387. Debug: float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
  2388. Debug:
  2389. Debug: for (int i = 0; i < FragmentLoops; i++)
  2390. Debug: d = fract(3.0 * d);
  2391. Debug:
  2392. Debug:
  2393. Debug: gl_FragColor = vec4(d, d, d, 1.0);
  2394. Debug: }
  2395. Debug:
  2396. Info: [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: Validation: Success
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement