config.json 40 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198
  1. {
  2. "root": "https://cdn.babylonjs.com",
  3. "tests": [
  4. {
  5. "title": "Sprites",
  6. "playgroundId": "#ZX8DJ3#1",
  7. "referenceImage": "Sprites.png"
  8. },
  9. {
  10. "title": "Procedural texture with NME",
  11. "renderCount": 2,
  12. "playgroundId": "#8S19ZC#3",
  13. "referenceImage": "procedural_nme.png"
  14. },
  15. {
  16. "title": "EXT_texture_webp",
  17. "playgroundId": "#LSAUH2#2",
  18. "referenceImage": "webp.png"
  19. },
  20. {
  21. "title": "CSGVertColor",
  22. "playgroundId": "#R0H1IX#0",
  23. "referenceImage": "csgVertColor.png"
  24. },
  25. {
  26. "title": "Particle subemitters",
  27. "playgroundId": "#1LK70I#20",
  28. "renderCount": 50,
  29. "referenceImage": "subemitters.png"
  30. },
  31. {
  32. "title": "Black and White post-process",
  33. "playgroundId": "#N55Q2M#0",
  34. "referenceImage": "bwpp.png"
  35. },
  36. {
  37. "title": "Sprite maps",
  38. "playgroundId": "#ARLADE#23",
  39. "referenceImage": "sprite-maps.png",
  40. "excludeFromAutomaticTesting": true
  41. },
  42. {
  43. "title": "Point light shadows",
  44. "playgroundId": "#U2F7P9#4",
  45. "referenceImage": "point-light-shadows.png"
  46. },
  47. {
  48. "title": "Node material 0",
  49. "playgroundId": "#M5VQE9#20",
  50. "referenceImage": "node-material0.png",
  51. "renderCount": 5,
  52. "excludeFromAutomaticTesting": true
  53. },
  54. {
  55. "title": "Node material 1",
  56. "playgroundId": "#QJ71C6#1",
  57. "referenceImage": "node-material1.png",
  58. "renderCount": 20
  59. },
  60. {
  61. "title": "Node material 2",
  62. "playgroundId": "#WYM31D#4",
  63. "referenceImage": "node-material2.png"
  64. },
  65. {
  66. "title": "Node material 3",
  67. "playgroundId": "#LWGVT0#2",
  68. "referenceImage": "node-material3.png"
  69. },
  70. {
  71. "title": "Node material 4",
  72. "playgroundId": "#ZYGRII#1",
  73. "referenceImage": "node-material4.png"
  74. },
  75. {
  76. "title": "Node material 5",
  77. "playgroundId": "#V8VH7B#0",
  78. "referenceImage": "node-material5.png"
  79. },
  80. {
  81. "title": "Node material 6",
  82. "playgroundId": "#2XY3Z4#1",
  83. "referenceImage": "node-material6.png"
  84. },
  85. {
  86. "title": "Node material PBR 1",
  87. "playgroundId": "#D8AK3Z#17",
  88. "renderCount": 5,
  89. "referenceImage": "node-material-pbr-1.png"
  90. },
  91. {
  92. "title": "Basis loader",
  93. "playgroundId": "#4RN0VF#64",
  94. "referenceImage": "basis.png"
  95. },
  96. {
  97. "title": "Unindexed mesh",
  98. "playgroundId": "#4IHSY2#0",
  99. "referenceImage": "unindexedmesh.png"
  100. },
  101. {
  102. "title": "LOD + Billboards + Instances",
  103. "playgroundId": "#UAIZCS#0",
  104. "referenceImage": "lodbillboardinstances.png"
  105. },
  106. {
  107. "title": "Nested BBG",
  108. "playgroundId": "#ZG0C8B#1",
  109. "renderCount": 10,
  110. "referenceImage": "nested_BBG.png"
  111. },
  112. {
  113. "title": "Weighted animations",
  114. "playgroundId": "#LL5BIQ#72",
  115. "renderCount": 50,
  116. "referenceImage": "weighted animations.png"
  117. },
  118. {
  119. "title": "Anisotropic",
  120. "playgroundId": "#MAXCNU#1",
  121. "referenceImage": "anisotropic.png"
  122. },
  123. {
  124. "title": "Clear Coat",
  125. "playgroundId": "#YACNQS#2",
  126. "referenceImage": "clearCoat.png"
  127. },
  128. {
  129. "title": "GUI Transform StackPanel",
  130. "renderCount": 5,
  131. "playgroundId": "#BS60AB#0",
  132. "referenceImage": "TransformStackPanel.png"
  133. },
  134. {
  135. "title": "GUI StackPanel",
  136. "renderCount": 5,
  137. "playgroundId": "#LLVZ90#0",
  138. "referenceImage": "StackPanel.png"
  139. },
  140. {
  141. "title": "Camera rig",
  142. "playgroundId": "#ATL1CS#12",
  143. "referenceImage": "cameraRig.png"
  144. },
  145. {
  146. "title": "Sliders",
  147. "renderCount": 5,
  148. "playgroundId": "#HATGQZ#3",
  149. "referenceImage": "Sliders.png",
  150. "excludeFromAutomaticTesting": true
  151. },
  152. {
  153. "title": "Pointers",
  154. "renderCount": 5,
  155. "playgroundId": "#1GLEJK#5",
  156. "referenceImage": "pointers.png",
  157. "excludeFromAutomaticTesting": true
  158. },
  159. {
  160. "title": "LineEdgesRenderer",
  161. "playgroundId": "#T90MQ4#1",
  162. "renderCount": 50,
  163. "referenceImage": "LineEdgesRenderer.png"
  164. },
  165. {
  166. "title": "Solid particle system",
  167. "playgroundId": "#WCDZS#92",
  168. "renderCount": 150,
  169. "referenceImage": "sps.png"
  170. },
  171. {
  172. "title": "Simulate pointer",
  173. "playgroundId": "#8MGKWK#269",
  174. "referenceImage": "simulatePointer.png"
  175. },
  176. {
  177. "title": "Color Grading",
  178. "playgroundId": "#8EDB5N#2",
  179. "referenceImage": "colorGrading.png"
  180. },
  181. {
  182. "title": "Ribbon morphing",
  183. "playgroundId": "#ACKC2#1",
  184. "renderCount": 50,
  185. "referenceImage": "ribbon morphing.png"
  186. },
  187. {
  188. "title": "Clip planes",
  189. "renderCount": 5,
  190. "playgroundId": "#Y6W087#0",
  191. "referenceImage": "clipplanes.png"
  192. },
  193. {
  194. "title": "ShadowOnlyMaterial",
  195. "playgroundId": "#1KF7V1#18",
  196. "referenceImage": "shadowOnlyMaterial.png"
  197. },
  198. {
  199. "title": "Gizmos",
  200. "playgroundId": "#8GY6J8#48",
  201. "renderCount": 50,
  202. "referenceImage": "Gizmos.png"
  203. },
  204. {
  205. "title": "GUI3D SpherePanel",
  206. "playgroundId": "#HB4C01#9",
  207. "renderCount": 50,
  208. "referenceImage": "spherepanel.png"
  209. },
  210. {
  211. "title": "Particle Helper",
  212. "playgroundId": "#1VGT5D#2",
  213. "renderCount": 50,
  214. "referenceImage": "particle_helper.png"
  215. },
  216. {
  217. "title": "Chibi Rex",
  218. "playgroundId": "#QATUCH#11",
  219. "renderCount": 50,
  220. "referenceImage": "chibi_rex.png"
  221. },
  222. {
  223. "title": "Yeti",
  224. "playgroundId": "#QATUCH#3",
  225. "renderCount": 150,
  226. "referenceImage": "yeti.png"
  227. },
  228. {
  229. "title": "Sponza",
  230. "sceneFolder": "/Scenes/Sponza/",
  231. "sceneFilename": "Sponza.babylon",
  232. "referenceImage": "Sponza.png"
  233. },
  234. {
  235. "title": "Windows cafe",
  236. "sceneFolder": "/Scenes/WCafe/",
  237. "sceneFilename": "WCafe.babylon",
  238. "referenceImage": "WCafe.png"
  239. },
  240. {
  241. "title": "Espilit",
  242. "sceneFolder": "/Scenes/Espilit/",
  243. "sceneFilename": "espilit.babylon",
  244. "referenceImage": "Espilit.png"
  245. },
  246. {
  247. "title": "The car",
  248. "sceneFolder": "/Scenes/TheCar/",
  249. "sceneFilename": "TheCar.binary.babylon",
  250. "referenceImage": "TheCar.png",
  251. "errorRatio": 5
  252. },
  253. {
  254. "title": "Viper",
  255. "sceneFolder": "/Scenes/Viper/",
  256. "sceneFilename": "Viper.babylon",
  257. "referenceImage": "Viper.png"
  258. },
  259. {
  260. "title": "Retail",
  261. "sceneFolder": "/Scenes/Retail/",
  262. "sceneFilename": "Retail.babylon",
  263. "referenceImage": "retail.png"
  264. },
  265. {
  266. "title": "Hill Valley",
  267. "sceneFolder": "/Scenes/hillvalley/",
  268. "sceneFilename": "HillValley.incremental.babylon",
  269. "referenceImage": "Hillvalley.png"
  270. },
  271. {
  272. "title": "Heart",
  273. "sceneFolder": "/Scenes/Heart/",
  274. "sceneFilename": "Heart.babylon",
  275. "referenceImage": "Heart.png"
  276. },
  277. {
  278. "title": "Mansion",
  279. "sceneFolder": "/Scenes/Mansion/",
  280. "sceneFilename": "Mansion.babylon",
  281. "referenceImage": "mansion.png",
  282. "excludeFromAutomaticTesting": true
  283. },
  284. {
  285. "title": "SpaceDeK",
  286. "sceneFolder": "/Scenes/SpaceDek/",
  287. "sceneFilename": "SpaceDek.babylon",
  288. "referenceImage": "SpaceDeK.png",
  289. "errorRatio": 5
  290. },
  291. {
  292. "title": "Flat2009",
  293. "sceneFolder": "/Scenes/Flat2009/",
  294. "sceneFilename": "Flat2009.babylon",
  295. "referenceImage": "Flat2009.png"
  296. },
  297. {
  298. "title": "CSG",
  299. "scriptToRun": "/Demos/CSG/csg.js",
  300. "functionToCall": "CreateCSGTestScene",
  301. "referenceImage": "csg.png"
  302. },
  303. {
  304. "title": "Charting",
  305. "renderCount": 20,
  306. "scriptToRun": "/Demos/Charting/charting.js",
  307. "functionToCall": "CreateChartingTestScene",
  308. "referenceImage": "charting.png"
  309. },
  310. {
  311. "title": "Fog",
  312. "scriptToRun": "/Demos/Fog/fog.js",
  313. "functionToCall": "CreateFogScene",
  314. "referenceImage": "fog.png"
  315. },
  316. {
  317. "title": "Polygon",
  318. "scriptToRun": "/Demos/Polygon/polygon.js",
  319. "functionToCall": "CreatePolygonScene",
  320. "referenceImage": "polygon.png"
  321. },
  322. {
  323. "title": "Soft Shadows",
  324. "playgroundId": "#0YYQ3N#0",
  325. "referenceImage": "softShadows.png"
  326. },
  327. {
  328. "title": "Soft Shadows (Right Handed)",
  329. "playgroundId": "#0YYQ3N#2",
  330. "referenceImage": "softShadowsRightHanded.png"
  331. },
  332. {
  333. "title": "Fresnel",
  334. "playgroundId": "#603JUZ#1",
  335. "referenceImage": "fresnel.png"
  336. },
  337. {
  338. "title": "Highlights",
  339. "scriptToRun": "/Demos/Highlights/highlights.js",
  340. "functionToCall": "CreateHighlightsScene",
  341. "referenceImage": "highlights.png",
  342. "rootPath": "/Demos/Highlights/",
  343. "replaceUrl": "room.hdr, reflectivity.png, albedo.png"
  344. },
  345. {
  346. "title": "Lines",
  347. "scriptToRun": "/Demos/Lines/lines.js",
  348. "functionToCall": "CreateLinesTestScene",
  349. "referenceImage": "lines.png",
  350. "replace": "updateVerticesDataDirectly, updateVerticesData"
  351. },
  352. {
  353. "title": "Capsule",
  354. "renderCount": 10,
  355. "playgroundId": "#JAFIIU#2",
  356. "referenceImage": "CreateCapsule.png"
  357. },
  358. {
  359. "title": "Bones",
  360. "scriptToRun": "/Demos/Bones/bones.js",
  361. "functionToCall": "CreateBonesTestScene",
  362. "referenceImage": "bones.png",
  363. "replace": "Dude.babylon, dude.babylon"
  364. },
  365. {
  366. "title": "LOD",
  367. "renderCount": 10,
  368. "playgroundId": "#FFMFW5#0",
  369. "referenceImage": "lod.png",
  370. "errorRatio": 5
  371. },
  372. {
  373. "title": "Lens",
  374. "scriptToRun": "/Demos/Lens/lensFlares.js",
  375. "functionToCall": "CreateLensFlaresTestScene",
  376. "referenceImage": "lens.png",
  377. "rootPath": "/Demos/Lens/",
  378. "replaceUrl": "lens4.png, lens5.png"
  379. },
  380. {
  381. "title": "Self shadowing",
  382. "scriptToRun": "/Demos/SelfShadowing/shadows.js",
  383. "functionToCall": "CreateShadowsTestScene",
  384. "referenceImage": "selfShadowing.png"
  385. },
  386. {
  387. "title": "Advanced shadows",
  388. "renderCount": 20,
  389. "playgroundId": "#SLV8LW#0",
  390. "referenceImage": "advancedShadows.png"
  391. },
  392. {
  393. "title": "Advanced shadows (right handed)",
  394. "renderCount": 20,
  395. "playgroundId": "#B48X7G#32",
  396. "referenceImage": "advancedShadows2.png"
  397. },
  398. {
  399. "title": "point light shadows",
  400. "playgroundId": "#XDNVAY#1",
  401. "referenceImage": "pointLightShadows.png"
  402. },
  403. {
  404. "title": "Shadow depth wrappers",
  405. "playgroundId": "#PNQRY1#9",
  406. "referenceImage": "shadowDepthWrappers.png",
  407. "renderCount": 20
  408. },
  409. {
  410. "title": "Displacement map",
  411. "scriptToRun": "/Demos/DisplacementMap/displacementMap.js",
  412. "functionToCall": "CreateDisplacementTestScene",
  413. "referenceImage": "displacementMap.png",
  414. "replace": "/Scenes/Customs/skybox/, https://cdn.rawgit.com/BabylonJS/Website/06ecbea7/Assets/skybox/"
  415. },
  416. {
  417. "title": "Normals",
  418. "playgroundId": "#WXKLLJ#2",
  419. "referenceImage": "normals.png"
  420. },
  421. {
  422. "title": "Custom render target",
  423. "renderCount": 20,
  424. "scriptToRun": "/Demos/CustomRenderTarget/customRenderTarget.js",
  425. "functionToCall": "CreateCustomRenderTargetTestScene",
  426. "referenceImage": "customRTT.png"
  427. },
  428. {
  429. "title": "Draco Mesh Compression",
  430. "playgroundId": "#22MFU2#4",
  431. "referenceImage": "draco.png"
  432. },
  433. {
  434. "title": "GLTF Normals",
  435. "playgroundId": "#SMEAEB#0",
  436. "referenceImage": "gltfnormals.png"
  437. },
  438. {
  439. "title": "GLTF Animation Node",
  440. "renderCount": 2,
  441. "playgroundId": "#DS8AA7#18",
  442. "replace": "__folder__, Animation_Node, __page__, 0",
  443. "referenceImage": "gltfAnimationNode.png"
  444. },
  445. {
  446. "title": "GLTF Animation Node Misc",
  447. "renderCount": 2,
  448. "playgroundId": "#DS8AA7#18",
  449. "replace": "__folder__, Animation_NodeMisc, __page__, 0",
  450. "referenceImage": "gltfAnimationNodeMisc.png"
  451. },
  452. {
  453. "title": "GLTF Animation Skin (0)",
  454. "renderCount": 2,
  455. "playgroundId": "#DS8AA7#18",
  456. "replace": "__folder__, Animation_Skin, __page__, 0",
  457. "referenceImage": "gltfAnimationSkin0.png",
  458. "excludedEngines": ["webgpu"]
  459. },
  460. {
  461. "title": "GLTF Animation Skin (1)",
  462. "renderCount": 2,
  463. "playgroundId": "#DS8AA7#18",
  464. "replace": "__folder__, Animation_Skin, __page__, 1",
  465. "referenceImage": "gltfAnimationSkin1.png",
  466. "excludedEngines": ["webgpu"]
  467. },
  468. {
  469. "title": "GLTF Animation Skin Type",
  470. "playgroundId": "#DS8AA7#18",
  471. "replace": "__folder__, Animation_SkinType, __page__, 0",
  472. "referenceImage": "gltfAnimationSkinType.png",
  473. "excludedEngines": ["webgpu"]
  474. },
  475. {
  476. "title": "GLTF Buffer Interleaved",
  477. "playgroundId": "#DS8AA7#18",
  478. "replace": "__folder__, Buffer_Interleaved, __page__, 0",
  479. "referenceImage": "gltfBufferInterleaved.png"
  480. },
  481. {
  482. "title": "GLTF Material",
  483. "playgroundId": "#DS8AA7#18",
  484. "replace": "__folder__, Material, __page__, 0",
  485. "referenceImage": "gltfMaterial.png"
  486. },
  487. {
  488. "title": "GLTF Material Alpha Blend",
  489. "playgroundId": "#DS8AA7#18",
  490. "replace": "__folder__, Material_AlphaBlend, __page__, 0",
  491. "referenceImage": "gltfMaterialAlphaBlend.png"
  492. },
  493. {
  494. "title": "GLTF Material Alpha Mask",
  495. "playgroundId": "#DS8AA7#18",
  496. "replace": "__folder__, Material_AlphaMask, __page__, 0",
  497. "referenceImage": "gltfMaterialAlphaMask.png"
  498. },
  499. {
  500. "title": "GLTF Material Double Sided (Front)",
  501. "playgroundId": "#DS8AA7#18",
  502. "replace": "__folder__, Material_DoubleSided, __page__, 0",
  503. "referenceImage": "gltfMaterialDoubleSidedFront.png"
  504. },
  505. {
  506. "title": "GLTF Material Double Sided (Back)",
  507. "playgroundId": "#DS8AA7#18",
  508. "replace": "__folder__, Material_DoubleSided, __page__, 0, alpha = Math.PI / 2, alpha = -Math.PI / 2",
  509. "referenceImage": "gltfMaterialDoubleSidedBack.png"
  510. },
  511. {
  512. "title": "GLTF Material Metallic Roughness (0)",
  513. "playgroundId": "#DS8AA7#18",
  514. "replace": "__folder__, Material_MetallicRoughness, __page__, 0",
  515. "referenceImage": "gltfMaterialMetallicRoughness0.png"
  516. },
  517. {
  518. "title": "GLTF Material Metallic Roughness (1)",
  519. "playgroundId": "#DS8AA7#18",
  520. "replace": "__folder__, Material_MetallicRoughness, __page__, 1",
  521. "referenceImage": "gltfMaterialMetallicRoughness1.png"
  522. },
  523. {
  524. "title": "GLTF Material Mixed",
  525. "playgroundId": "#DS8AA7#18",
  526. "replace": "__folder__, Material_Mixed, __page__, 0",
  527. "referenceImage": "gltfMaterialMixed.png"
  528. },
  529. {
  530. "title": "GLTF Material Specular Glossiness (0)",
  531. "playgroundId": "#DS8AA7#18",
  532. "replace": "__folder__, Material_SpecularGlossiness, __page__, 0",
  533. "referenceImage": "gltfMaterialSpecularGlossiness0.png"
  534. },
  535. {
  536. "title": "GLTF Material Specular Glossiness (1)",
  537. "playgroundId": "#DS8AA7#18",
  538. "replace": "__folder__, Material_SpecularGlossiness, __page__, 1",
  539. "referenceImage": "gltfMaterialSpecularGlossiness1.png"
  540. },
  541. {
  542. "title": "GLTF Mesh Primitive Attribute",
  543. "playgroundId": "#DS8AA7#18",
  544. "replace": "__folder__, Mesh_PrimitiveAttribute, __page__, 0",
  545. "referenceImage": "gltfMeshPrimitiveAttribute.png"
  546. },
  547. {
  548. "title": "GLTF Mesh Primitive Mode (0)",
  549. "playgroundId": "#DS8AA7#18",
  550. "replace": "__folder__, Mesh_PrimitiveMode, __page__, 0",
  551. "referenceImage": "gltfMeshPrimitiveMode0.png",
  552. "excludedEngines": ["webgpu"]
  553. },
  554. {
  555. "title": "GLTF Mesh Primitive Mode (1)",
  556. "playgroundId": "#DS8AA7#18",
  557. "replace": "__folder__, Mesh_PrimitiveMode, __page__, 1",
  558. "referenceImage": "gltfMeshPrimitiveMode1.png",
  559. "excludedEngines": ["webgpu"]
  560. },
  561. {
  562. "title": "GLTF Mesh Primitive Vertex Color",
  563. "renderCount": 5,
  564. "playgroundId": "#DS8AA7#18",
  565. "replace": "__folder__, Mesh_PrimitiveVertexColor, __page__, 0",
  566. "referenceImage": "gltfMeshPrimitiveVertexColor.png"
  567. },
  568. {
  569. "title": "GLTF Mesh Primitives",
  570. "playgroundId": "#DS8AA7#18",
  571. "replace": "__folder__, Mesh_Primitives, __page__, 0",
  572. "referenceImage": "gltfMeshPrimitives.png"
  573. },
  574. {
  575. "title": "GLTF Mesh Primitives UV (0)",
  576. "playgroundId": "#DS8AA7#18",
  577. "replace": "__folder__, Mesh_PrimitivesUV, __page__, 0",
  578. "referenceImage": "gltfMeshPrimitivesUV0.png"
  579. },
  580. {
  581. "title": "GLTF Mesh Primitives UV (1)",
  582. "playgroundId": "#DS8AA7#18",
  583. "replace": "__folder__, Mesh_PrimitivesUV, __page__, 1",
  584. "referenceImage": "gltfMeshPrimitivesUV1.png"
  585. },
  586. {
  587. "title": "GLTF Node Attribute (0)",
  588. "playgroundId": "#DS8AA7#18",
  589. "replace": "__folder__, Node_Attribute, __page__, 0",
  590. "referenceImage": "gltfNodeAttribute0.png"
  591. },
  592. {
  593. "title": "GLTF Node Attribute (1)",
  594. "playgroundId": "#DS8AA7#18",
  595. "replace": "__folder__, Node_Attribute, __page__, 1",
  596. "referenceImage": "gltfNodeAttribute1.png"
  597. },
  598. {
  599. "title": "GLTF Node NegativeScale (0)",
  600. "playgroundId": "#DS8AA7#18",
  601. "replace": "__folder__, Node_NegativeScale, __page__, 0",
  602. "referenceImage": "gltfNodeNegativeScale0.png"
  603. },
  604. {
  605. "title": "GLTF Node NegativeScale (1)",
  606. "playgroundId": "#DS8AA7#18",
  607. "replace": "__folder__, Node_NegativeScale, __page__, 1",
  608. "referenceImage": "gltfNodeNegativeScale1.png"
  609. },
  610. {
  611. "title": "GLTF Texture Sampler (0)",
  612. "playgroundId": "#DS8AA7#18",
  613. "replace": "__folder__, Texture_Sampler, __page__, 0",
  614. "referenceImage": "gltfTextureSampler0.png"
  615. },
  616. {
  617. "title": "GLTF Texture Sampler (1)",
  618. "playgroundId": "#DS8AA7#18",
  619. "replace": "__folder__, Texture_Sampler, __page__, 1",
  620. "referenceImage": "gltfTextureSampler1.png"
  621. },
  622. {
  623. "title": "GLTF Sheen",
  624. "playgroundId": "#YG3BBF#2",
  625. "referenceImage": "glTFSheen.png"
  626. },
  627. {
  628. "title": "GLTF ClearCoat",
  629. "playgroundId": "#YG3BBF#4",
  630. "referenceImage": "glTFClearCoat.png",
  631. "renderCount": 50,
  632. "excludeFromAutomaticTesting": true
  633. },
  634. {
  635. "title": "GLTF Alpha Blend",
  636. "playgroundId": "#SYQW69#579",
  637. "referenceImage": "glTFAlphaBlend.png",
  638. "renderCount": 1
  639. },
  640. {
  641. "title": "GLTF Serializer with Negative World Matrix",
  642. "playgroundId": "#KX53VK#35",
  643. "referenceImage": "glTFSerializerNegativeWorldMatrix.png",
  644. "errorRatio": 1.1
  645. },
  646. {
  647. "title": "GLTF Serializer with Negative World Matrix (Right Handed)",
  648. "playgroundId": "#KX53VK#36",
  649. "referenceImage": "glTFSerializerNegativeWorldMatrix_Right.png",
  650. "errorRatio": 1.1
  651. },
  652. {
  653. "title": "GLTF Serializer Skinning and Animation",
  654. "playgroundId": "#DMZBX1#1",
  655. "referenceImage": "gltfSerializerSkinningAndAnimation.png"
  656. },
  657. {
  658. "title": "GLTF Serializer Skinning and Animation (Right Handed)",
  659. "playgroundId": "#DMZBX1#2",
  660. "referenceImage": "gltfSerializerSkinningAndAnimation.png"
  661. },
  662. {
  663. "title": "GLTF Serializer Morph Target Animation",
  664. "renderCount": 2,
  665. "playgroundId": "#84M2SR#23",
  666. "referenceImage": "gltfSerializerMorphTargetAnimation.png"
  667. },
  668. {
  669. "title": "GLTF Serializer Morph Target Animation Group",
  670. "playgroundId": "#T087A8#27",
  671. "referenceImage": "gltfSerializerMorphTargetAnimationGroup.png"
  672. },
  673. {
  674. "title": "GLTF Buggy with Draco Mesh Compression",
  675. "playgroundId": "#JNW207#1",
  676. "referenceImage": "gltfBuggyDraco.png"
  677. },
  678. {
  679. "title": "GLTF Buggy with Meshopt Compression",
  680. "playgroundId": "#CIYTF6#0",
  681. "referenceImage": "gltfBuggyMeshopt.png",
  682. "excludedEngines": ["webgpu"]
  683. },
  684. {
  685. "title": "GLTF BoomBox with Unlit Material",
  686. "playgroundId": "#GYM97C#2",
  687. "referenceImage": "gltfUnlit.png"
  688. },
  689. {
  690. "title": "GLTF Extension KHR_texture_transform",
  691. "playgroundId": "#RNT7K4#2",
  692. "referenceImage": "gltfExtensionKhrTextureTransform.png"
  693. },
  694. {
  695. "title": "Asset Containers",
  696. "playgroundId": "#P3U079#19",
  697. "referenceImage": "assetContainer.png"
  698. },
  699. {
  700. "title": "Enable disable post process",
  701. "playgroundId": "#1VI6WV#19",
  702. "renderCount": 50,
  703. "referenceImage": "enableDisablePostProcess.png"
  704. },
  705. {
  706. "title": "Sharpen",
  707. "playgroundId": "#NAW8EA#1",
  708. "renderCount": 20,
  709. "referenceImage": "sharpen.png"
  710. },
  711. {
  712. "title": "Depth of field",
  713. "playgroundId": "#IDSQK2#53",
  714. "renderCount": 20,
  715. "referenceImage": "depthOfField.png"
  716. },
  717. {
  718. "title": "Chromatic aberration",
  719. "playgroundId": "#NAW8EA#0",
  720. "renderCount": 20,
  721. "referenceImage": "chromaticAberration.png"
  722. },
  723. {
  724. "title": "Default pipeline",
  725. "playgroundId": "#NAW8EA#6",
  726. "renderCount": 20,
  727. "referenceImage": "defaultPipeline.png"
  728. },
  729. {
  730. "title": "Kernel Blur",
  731. "playgroundId": "#Y0WKT0#0",
  732. "referenceImage": "KernelBlur.png"
  733. },
  734. {
  735. "title": "GLTF Mesh Primitive Attribute Test",
  736. "playgroundId": "#G1FXQ4#0",
  737. "referenceImage": "gltfMeshPrimAttribTest.png"
  738. },
  739. {
  740. "title": "PBR glossy",
  741. "playgroundId": "#DFQKIR#0",
  742. "referenceImage": "pbrglossy.png"
  743. },
  744. {
  745. "title": "PBR rough",
  746. "playgroundId": "#PI9IE8#4",
  747. "referenceImage": "pbrrough.png"
  748. },
  749. {
  750. "title": "Particles",
  751. "renderCount": 100,
  752. "playgroundId": "#G3ZYFU#2",
  753. "referenceImage": "particles.png"
  754. },
  755. {
  756. "title": "Reflection probes",
  757. "renderCount": 20,
  758. "scriptToRun": "/Demos/RefProbe/reflectionProbe.js",
  759. "functionToCall": "CreateReflectionProbeTestScene ",
  760. "referenceImage": "refprobe.png"
  761. },
  762. {
  763. "title": "PBRMetallicRoughnessMaterial",
  764. "playgroundId": "#2FDQT5#13",
  765. "referenceImage": "PBRMetallicRoughnessMaterial.png"
  766. },
  767. {
  768. "title": "PBRSpecularGlossinessMaterial",
  769. "playgroundId": "#Z1VL3V#4",
  770. "referenceImage": "PBRSpecularGlossinessMaterial.png"
  771. },
  772. {
  773. "title": "PBR",
  774. "playgroundId": "#LCA0Q4#27",
  775. "referenceImage": "pbr.png"
  776. },
  777. {
  778. "title": "PBR refraction",
  779. "playgroundId": "#LCA0Q4#26",
  780. "referenceImage": "pbr_refraction.png"
  781. },
  782. {
  783. "title": "PBR shader code coverage 1",
  784. "playgroundId": "#QI7TL3#16",
  785. "referenceImage": "pbr_codecoverage1.png"
  786. },
  787. {
  788. "title": "PBR shader code coverage 2",
  789. "playgroundId": "#QI7TL3#17",
  790. "referenceImage": "pbr_codecoverage2.png"
  791. },
  792. {
  793. "title": "PBR shader code coverage 3",
  794. "playgroundId": "#QI7TL3#18",
  795. "referenceImage": "pbr_codecoverage3.png"
  796. },
  797. {
  798. "title": "Texture cache",
  799. "playgroundId": "#3TFH5I#0",
  800. "referenceImage": "texture cache.png",
  801. "excludedEngines": ["webgl1"]
  802. },
  803. {
  804. "title": "MultiSample render targets",
  805. "renderCount": 20,
  806. "playgroundId": "#12MKMN#0",
  807. "referenceImage": "MultiSample render targets.png"
  808. },
  809. {
  810. "title": "Default rendering pipeline",
  811. "playgroundId": "#5XB8YT#2",
  812. "referenceImage": "DefaultRenderingPipeline.png"
  813. },
  814. {
  815. "title": "Billboard",
  816. "playgroundId": "#UJEIL#13",
  817. "referenceImage": "Billboard.png"
  818. },
  819. {
  820. "title": "setParent",
  821. "playgroundId": "#JD49CT#2",
  822. "referenceImage": "setParent.png"
  823. },
  824. {
  825. "title": "GUI",
  826. "renderCount": 5,
  827. "scriptToRun": "/Demos/GUI/gui.js",
  828. "functionToCall": "createScene",
  829. "referenceImage": "GUI.png"
  830. },
  831. {
  832. "title": "Up Vector",
  833. "playgroundId": "#2FNBTG#27",
  834. "referenceImage": "upVector.png"
  835. },
  836. {
  837. "title": "Procedural textures",
  838. "scriptToRun": "/Demos/Procedural/proceduralTexture.js",
  839. "functionToCall": "CreateProceduralTextureTestScene",
  840. "referenceImage": "procedural.png",
  841. "replace": "./land, https://cdn.rawgit.com/BabylonJS/Website/06ecbea7/Demos/Procedural/land",
  842. "excludeFromAutomaticTesting": true
  843. },
  844. {
  845. "title": "Instances",
  846. "renderCount": 50,
  847. "scriptToRun": "/Demos/Instances/instances.js",
  848. "functionToCall": "CreateInstancesTestScene",
  849. "referenceImage": "instances.png",
  850. "replace": "ground., Ground.",
  851. "excludeFromAutomaticTesting": true
  852. },
  853. {
  854. "title": "Instanced Bones",
  855. "playgroundId": "#2YLJ1L#2",
  856. "referenceImage": "instancedBones.png"
  857. },
  858. {
  859. "title": "Thin Instances",
  860. "playgroundId": "#V1JE4Z#1",
  861. "referenceImage": "thinInstances.png"
  862. },
  863. {
  864. "title": "Light Projection Texture",
  865. "playgroundId": "#CQNGRK#0",
  866. "referenceImage": "LightProjectionTexture.png"
  867. },
  868. {
  869. "title": "GlowLayer",
  870. "playgroundId": "#LRFB2D#1",
  871. "referenceImage": "GlowLayer.png"
  872. },
  873. {
  874. "title": "Local cubemaps",
  875. "renderCount": 2,
  876. "playgroundId": "#RNASML#4",
  877. "referenceImage": "local cubemaps.png"
  878. },
  879. {
  880. "title": "TGA",
  881. "renderCount": 5,
  882. "playgroundId": "#ZI77S7#0",
  883. "referenceImage": "tga.png"
  884. },
  885. {
  886. "title": "DDS",
  887. "playgroundId": "#ZI77S7#3",
  888. "referenceImage": "dds.png"
  889. },
  890. {
  891. "title": "DDS2D",
  892. "playgroundId": "#I2MSBE#0",
  893. "referenceImage": "dds2d.png"
  894. },
  895. {
  896. "title": "LightFalloff spots",
  897. "playgroundId": "#20OAV9#3311",
  898. "referenceImage": "lightFalloffSpots.png"
  899. },
  900. {
  901. "title": "LightFalloff point lights",
  902. "playgroundId": "#20OAV9#3312",
  903. "referenceImage": "lightFalloffPointLights.png"
  904. },
  905. {
  906. "title": "MeshSimplification",
  907. "playgroundId": "#1ED15P#35",
  908. "referenceImage": "meshSimplification.png"
  909. },
  910. {
  911. "title": "SSAO2",
  912. "playgroundId": "#XT1HAS#1",
  913. "referenceImage": "ssao2.png",
  914. "renderCount": 200,
  915. "excludedEngines": ["webgl1"],
  916. "excludeFromAutomaticTesting": true
  917. },
  918. {
  919. "title": "DepthRenderer",
  920. "playgroundId": "#3HPMAA#0",
  921. "renderCount": 50,
  922. "referenceImage": "depthRenderer.png"
  923. },
  924. {
  925. "title": "Edges",
  926. "playgroundId": "#TYAHX#114",
  927. "referenceImage": "edges.png"
  928. },
  929. {
  930. "title": "Outline",
  931. "playgroundId": "#10WJ5S#6",
  932. "referenceImage": "outline.png"
  933. },
  934. {
  935. "title": "Visibility",
  936. "playgroundId": "#PXC9CF#2",
  937. "referenceImage": "visibility.png"
  938. },
  939. {
  940. "title": "GLTF Extension EXT_mesh_gpu_instancing",
  941. "playgroundId": "#QFIGLW#9",
  942. "renderCount": 10,
  943. "referenceImage": "gltfExtensionExtMeshGpuInstancingTest.png"
  944. },
  945. {
  946. "title": "Realtime Filtering",
  947. "playgroundId": "#FEEK7G#118",
  948. "renderCount": 5,
  949. "referenceImage": "realtimeFiltering.png"
  950. },
  951. {
  952. "title": "GLTF Extension KHR_materials_variants",
  953. "playgroundId": "#BKGTKL#3",
  954. "referenceImage": "gltfExtensionKhrMaterialsVariants.png"
  955. },
  956. {
  957. "title": "OBJ loader test",
  958. "playgroundId": "#SYQW69#311",
  959. "referenceImage": "objTestLoader.png",
  960. "renderCount": 10
  961. },
  962. {
  963. "title": "KTX2 decoder test",
  964. "playgroundId": "#EIJH8L#27",
  965. "renderCount": 5,
  966. "referenceImage": "ktx2decoder.png",
  967. "excludeFromAutomaticTesting": true
  968. },
  969. {
  970. "title": "Motion Blur",
  971. "playgroundId": "#E5YGEL#2",
  972. "referenceImage": "motionBlur.png",
  973. "renderCount": 10,
  974. "excludedEngines": ["webgl1"],
  975. "excludeFromAutomaticTesting": true
  976. },
  977. {
  978. "title": "Screen space reflections",
  979. "playgroundId": "#PIZ1GK#172",
  980. "referenceImage": "ssr.png",
  981. "renderCount": 10,
  982. "excludedEngines": ["webgl1"],
  983. "excludeFromAutomaticTesting": true
  984. },
  985. {
  986. "title": "Geometry buffer renderer",
  987. "playgroundId": "#PIZ1GK#173",
  988. "referenceImage": "geometrybufferrenderer.png",
  989. "renderCount": 10,
  990. "excludedEngines": ["webgl1", "webgpu"],
  991. "excludeFromAutomaticTesting": true
  992. },
  993. {
  994. "title": "Shadows and LODs",
  995. "playgroundId": "#F7KZ7C#9",
  996. "referenceImage": "shadowsandlod.png"
  997. },
  998. {
  999. "title": "Shadows CSM and LODs",
  1000. "playgroundId": "#24HWT9#0",
  1001. "referenceImage": "shadowscsmandlod.png",
  1002. "excludedEngines": [
  1003. "webgl1"
  1004. ]
  1005. },
  1006. {
  1007. "title": "Glow layer and LODs",
  1008. "playgroundId": "#UNS6ZV#2",
  1009. "referenceImage": "glowlayerandlods.png"
  1010. },
  1011. {
  1012. "title": "Shadows with instances in left handed system",
  1013. "renderCount": 10,
  1014. "playgroundId": "#MSAHKR#12",
  1015. "referenceImage": "shadowsinstancesleft.png"
  1016. },
  1017. {
  1018. "title": "Shadows with instances in right handed system",
  1019. "renderCount": 10,
  1020. "playgroundId": "#MSAHKR#13",
  1021. "referenceImage": "shadowsinstancesright.png"
  1022. },
  1023. {
  1024. "title": "Instances with color buffer",
  1025. "playgroundId": "#YPABS1#91",
  1026. "referenceImage": "instancecolors.png"
  1027. },
  1028. {
  1029. "title": "Prepass SSAO + particles",
  1030. "renderCount": 50,
  1031. "playgroundId": "#65MUMZ#46",
  1032. "excludedEngines": ["webgl1"],
  1033. "referenceImage": "prepass-ssao-particles.png"
  1034. },
  1035. {
  1036. "title": "Prepass SSAO + instances",
  1037. "renderCount": 10,
  1038. "playgroundId": "#YB006J#355",
  1039. "excludedEngines": ["webgl1"],
  1040. "referenceImage": "prepass-ssao-instances.png"
  1041. },
  1042. {
  1043. "title": "Prepass SSAO + instanced bones",
  1044. "renderCount": 50,
  1045. "playgroundId": "#0K8EYN#197",
  1046. "excludedEngines": ["webgl1"],
  1047. "referenceImage": "prepass-ssao-instanced-bones.png"
  1048. },
  1049. {
  1050. "title": "Prepass SSAO + depth of field",
  1051. "renderCount": 10,
  1052. "playgroundId": "#8F5HYV#14",
  1053. "excludedEngines": ["webgl1"],
  1054. "referenceImage": "prepass-ssao-dof.png"
  1055. },
  1056. {
  1057. "title": "Prepass + mirror, without postprocess",
  1058. "renderCount": 10,
  1059. "playgroundId": "#PIZ1GK#212",
  1060. "excludedEngines": ["webgl1"],
  1061. "referenceImage": "prepass-mirror-without-pp.png"
  1062. },
  1063. {
  1064. "title": "Prepass + mirror, with postprocesses",
  1065. "renderCount": 10,
  1066. "playgroundId": "#PIZ1GK#213",
  1067. "excludedEngines": ["webgl1"],
  1068. "referenceImage": "prepass-mirror-with-pp.png"
  1069. },
  1070. {
  1071. "title": "Prepass SSAO + sprites",
  1072. "renderCount": 10,
  1073. "playgroundId": "#9RI8CG#187",
  1074. "excludedEngines": ["webgl1"],
  1075. "referenceImage": "prepass-ssao-sprites.png"
  1076. },
  1077. {
  1078. "title": "Prepass SSAO + glow layer",
  1079. "renderCount": 30,
  1080. "playgroundId": "#LRFB2D#114",
  1081. "excludedEngines": ["webgl1"],
  1082. "referenceImage": "prepass-ssao-glow-layer.png"
  1083. },
  1084. {
  1085. "title": "Prepass SSAO + bounding box renderer",
  1086. "renderCount": 10,
  1087. "playgroundId": "#4F33I3#35",
  1088. "excludedEngines": ["webgl1"],
  1089. "referenceImage": "prepass-ssao-bbr.png"
  1090. },
  1091. {
  1092. "title": "Prepass SSAO + line edges renderer",
  1093. "renderCount": 10,
  1094. "playgroundId": "#T90MQ4#3",
  1095. "excludedEngines": ["webgl1"],
  1096. "referenceImage": "prepass-ssao-line-edges.png"
  1097. },
  1098. {
  1099. "title": "Prepass SSAO + B&W post process",
  1100. "renderCount": 10,
  1101. "playgroundId": "#N55Q2M#8",
  1102. "excludedEngines": ["webgl1"],
  1103. "referenceImage": "prepass-ssao-b-and-w.png"
  1104. },
  1105. {
  1106. "title": "Prepass SSAO + clip planes",
  1107. "renderCount": 10,
  1108. "playgroundId": "#Y6W087#71",
  1109. "excludedEngines": ["webgl1"],
  1110. "referenceImage": "prepass-ssao-clip-planes.png"
  1111. },
  1112. {
  1113. "title": "Prepass SSAO + GUI",
  1114. "renderCount": 10,
  1115. "playgroundId": "#LLVZ90#4",
  1116. "excludedEngines": ["webgl1"],
  1117. "referenceImage": "prepass-ssao-gui.png"
  1118. },
  1119. {
  1120. "title": "Prepass SSAO + LOD",
  1121. "renderCount": 10,
  1122. "playgroundId": "#FFMFW5#29",
  1123. "excludedEngines": ["webgl1"],
  1124. "referenceImage": "prepass-ssao-lod.png"
  1125. },
  1126. {
  1127. "title": "Prepass SSAO + shadow only",
  1128. "renderCount": 10,
  1129. "playgroundId": "#1KF7V1#55",
  1130. "excludedEngines": ["webgl1"],
  1131. "referenceImage": "prepass-ssao-shadow-only.png"
  1132. },
  1133. {
  1134. "title": "Prepass SSAO + highlight layer",
  1135. "renderCount": 10,
  1136. "playgroundId": "#1KUJ0A#416",
  1137. "excludedEngines": ["webgl1"],
  1138. "referenceImage": "prepass-ssao-highlight-layer.png"
  1139. },
  1140. {
  1141. "title": "Prepass SSAO + point light",
  1142. "renderCount": 10,
  1143. "playgroundId": "#XDNVAY#6",
  1144. "excludedEngines": ["webgl1"],
  1145. "referenceImage": "prepass-ssao-point-light.png"
  1146. },
  1147. {
  1148. "title": "Prepass SSAO + on/off post-process",
  1149. "renderCount": 10,
  1150. "playgroundId": "#1VI6WV#20",
  1151. "excludedEngines": ["webgl1"],
  1152. "referenceImage": "prepass-ssao-on-off-pp.png"
  1153. },
  1154. {
  1155. "title": "Prepass SSAO + thin instances",
  1156. "renderCount": 10,
  1157. "playgroundId": "#V1JE4Z#25",
  1158. "excludedEngines": ["webgl1"],
  1159. "referenceImage": "prepass-ssao-thin-instances.png"
  1160. },
  1161. {
  1162. "title": "Prepass SSAO + depth renderer",
  1163. "renderCount": 10,
  1164. "playgroundId": "#3HPMAA#1",
  1165. "excludedEngines": ["webgl1"],
  1166. "referenceImage": "prepass-ssao-depth-renderer.png"
  1167. },
  1168. {
  1169. "title": "Prepass SSAO + visibility",
  1170. "renderCount": 30,
  1171. "playgroundId": "#PXC9CF#4",
  1172. "excludedEngines": ["webgl1"],
  1173. "referenceImage": "prepass-ssao-visibility.png"
  1174. },
  1175. {
  1176. "title": "Prepass SSAO + default pipeline",
  1177. "renderCount": 10,
  1178. "playgroundId": "#NAW8EA#7",
  1179. "excludedEngines": ["webgl1"],
  1180. "referenceImage": "prepass-ssao-default-pipeline.png"
  1181. },
  1182. {
  1183. "title": "Prepass MBlur + Lens",
  1184. "renderCount": 10,
  1185. "playgroundId": "#ZEB7H6#23",
  1186. "excludedEngines": ["webgl1"],
  1187. "referenceImage": "prepass-mb-lens.png"
  1188. },
  1189. {
  1190. "title": "Prepass SSAO + MSAA",
  1191. "renderCount": 10,
  1192. "playgroundId": "#12MKMN#7",
  1193. "excludedEngines": ["webgl1"],
  1194. "referenceImage": "prepass-ssao-msaa.png"
  1195. }
  1196. ]
  1197. }