config.json 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197
  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. },
  683. {
  684. "title": "GLTF BoomBox with Unlit Material",
  685. "playgroundId": "#GYM97C#2",
  686. "referenceImage": "gltfUnlit.png"
  687. },
  688. {
  689. "title": "GLTF Extension KHR_texture_transform",
  690. "playgroundId": "#RNT7K4#2",
  691. "referenceImage": "gltfExtensionKhrTextureTransform.png"
  692. },
  693. {
  694. "title": "Asset Containers",
  695. "playgroundId": "#P3U079#19",
  696. "referenceImage": "assetContainer.png"
  697. },
  698. {
  699. "title": "Enable disable post process",
  700. "playgroundId": "#1VI6WV#19",
  701. "renderCount": 50,
  702. "referenceImage": "enableDisablePostProcess.png"
  703. },
  704. {
  705. "title": "Sharpen",
  706. "playgroundId": "#NAW8EA#1",
  707. "renderCount": 20,
  708. "referenceImage": "sharpen.png"
  709. },
  710. {
  711. "title": "Depth of field",
  712. "playgroundId": "#IDSQK2#53",
  713. "renderCount": 20,
  714. "referenceImage": "depthOfField.png"
  715. },
  716. {
  717. "title": "Chromatic aberration",
  718. "playgroundId": "#NAW8EA#0",
  719. "renderCount": 20,
  720. "referenceImage": "chromaticAberration.png"
  721. },
  722. {
  723. "title": "Default pipeline",
  724. "playgroundId": "#NAW8EA#6",
  725. "renderCount": 20,
  726. "referenceImage": "defaultPipeline.png"
  727. },
  728. {
  729. "title": "Kernel Blur",
  730. "playgroundId": "#Y0WKT0#0",
  731. "referenceImage": "KernelBlur.png"
  732. },
  733. {
  734. "title": "GLTF Mesh Primitive Attribute Test",
  735. "playgroundId": "#G1FXQ4#0",
  736. "referenceImage": "gltfMeshPrimAttribTest.png"
  737. },
  738. {
  739. "title": "PBR glossy",
  740. "playgroundId": "#DFQKIR#0",
  741. "referenceImage": "pbrglossy.png"
  742. },
  743. {
  744. "title": "PBR rough",
  745. "playgroundId": "#PI9IE8#4",
  746. "referenceImage": "pbrrough.png"
  747. },
  748. {
  749. "title": "Particles",
  750. "renderCount": 100,
  751. "playgroundId": "#G3ZYFU#2",
  752. "referenceImage": "particles.png"
  753. },
  754. {
  755. "title": "Reflection probes",
  756. "renderCount": 20,
  757. "scriptToRun": "/Demos/RefProbe/reflectionProbe.js",
  758. "functionToCall": "CreateReflectionProbeTestScene ",
  759. "referenceImage": "refprobe.png"
  760. },
  761. {
  762. "title": "PBRMetallicRoughnessMaterial",
  763. "playgroundId": "#2FDQT5#13",
  764. "referenceImage": "PBRMetallicRoughnessMaterial.png"
  765. },
  766. {
  767. "title": "PBRSpecularGlossinessMaterial",
  768. "playgroundId": "#Z1VL3V#4",
  769. "referenceImage": "PBRSpecularGlossinessMaterial.png"
  770. },
  771. {
  772. "title": "PBR",
  773. "playgroundId": "#LCA0Q4#27",
  774. "referenceImage": "pbr.png"
  775. },
  776. {
  777. "title": "PBR refraction",
  778. "playgroundId": "#LCA0Q4#26",
  779. "referenceImage": "pbr_refraction.png"
  780. },
  781. {
  782. "title": "PBR shader code coverage 1",
  783. "playgroundId": "#QI7TL3#16",
  784. "referenceImage": "pbr_codecoverage1.png"
  785. },
  786. {
  787. "title": "PBR shader code coverage 2",
  788. "playgroundId": "#QI7TL3#17",
  789. "referenceImage": "pbr_codecoverage2.png"
  790. },
  791. {
  792. "title": "PBR shader code coverage 3",
  793. "playgroundId": "#QI7TL3#18",
  794. "referenceImage": "pbr_codecoverage3.png"
  795. },
  796. {
  797. "title": "Texture cache",
  798. "playgroundId": "#3TFH5I#0",
  799. "referenceImage": "texture cache.png",
  800. "excludedEngines": ["webgl1"]
  801. },
  802. {
  803. "title": "MultiSample render targets",
  804. "renderCount": 20,
  805. "playgroundId": "#12MKMN#0",
  806. "referenceImage": "MultiSample render targets.png"
  807. },
  808. {
  809. "title": "Default rendering pipeline",
  810. "playgroundId": "#5XB8YT#2",
  811. "referenceImage": "DefaultRenderingPipeline.png"
  812. },
  813. {
  814. "title": "Billboard",
  815. "playgroundId": "#UJEIL#13",
  816. "referenceImage": "Billboard.png"
  817. },
  818. {
  819. "title": "setParent",
  820. "playgroundId": "#JD49CT#2",
  821. "referenceImage": "setParent.png"
  822. },
  823. {
  824. "title": "GUI",
  825. "renderCount": 5,
  826. "scriptToRun": "/Demos/GUI/gui.js",
  827. "functionToCall": "createScene",
  828. "referenceImage": "GUI.png"
  829. },
  830. {
  831. "title": "Up Vector",
  832. "playgroundId": "#2FNBTG#27",
  833. "referenceImage": "upVector.png"
  834. },
  835. {
  836. "title": "Procedural textures",
  837. "scriptToRun": "/Demos/Procedural/proceduralTexture.js",
  838. "functionToCall": "CreateProceduralTextureTestScene",
  839. "referenceImage": "procedural.png",
  840. "replace": "./land, https://cdn.rawgit.com/BabylonJS/Website/06ecbea7/Demos/Procedural/land",
  841. "excludeFromAutomaticTesting": true
  842. },
  843. {
  844. "title": "Instances",
  845. "renderCount": 50,
  846. "scriptToRun": "/Demos/Instances/instances.js",
  847. "functionToCall": "CreateInstancesTestScene",
  848. "referenceImage": "instances.png",
  849. "replace": "ground., Ground.",
  850. "excludeFromAutomaticTesting": true
  851. },
  852. {
  853. "title": "Instanced Bones",
  854. "playgroundId": "#2YLJ1L#2",
  855. "referenceImage": "instancedBones.png"
  856. },
  857. {
  858. "title": "Thin Instances",
  859. "playgroundId": "#V1JE4Z#1",
  860. "referenceImage": "thinInstances.png"
  861. },
  862. {
  863. "title": "Light Projection Texture",
  864. "playgroundId": "#CQNGRK#0",
  865. "referenceImage": "LightProjectionTexture.png"
  866. },
  867. {
  868. "title": "GlowLayer",
  869. "playgroundId": "#LRFB2D#1",
  870. "referenceImage": "GlowLayer.png"
  871. },
  872. {
  873. "title": "Local cubemaps",
  874. "renderCount": 2,
  875. "playgroundId": "#RNASML#4",
  876. "referenceImage": "local cubemaps.png"
  877. },
  878. {
  879. "title": "TGA",
  880. "renderCount": 5,
  881. "playgroundId": "#ZI77S7#0",
  882. "referenceImage": "tga.png"
  883. },
  884. {
  885. "title": "DDS",
  886. "playgroundId": "#ZI77S7#3",
  887. "referenceImage": "dds.png"
  888. },
  889. {
  890. "title": "DDS2D",
  891. "playgroundId": "#I2MSBE#0",
  892. "referenceImage": "dds2d.png"
  893. },
  894. {
  895. "title": "LightFalloff spots",
  896. "playgroundId": "#20OAV9#3311",
  897. "referenceImage": "lightFalloffSpots.png"
  898. },
  899. {
  900. "title": "LightFalloff point lights",
  901. "playgroundId": "#20OAV9#3312",
  902. "referenceImage": "lightFalloffPointLights.png"
  903. },
  904. {
  905. "title": "MeshSimplification",
  906. "playgroundId": "#1ED15P#35",
  907. "referenceImage": "meshSimplification.png"
  908. },
  909. {
  910. "title": "SSAO2",
  911. "playgroundId": "#XT1HAS#1",
  912. "referenceImage": "ssao2.png",
  913. "renderCount": 200,
  914. "excludedEngines": ["webgl1"],
  915. "excludeFromAutomaticTesting": true
  916. },
  917. {
  918. "title": "DepthRenderer",
  919. "playgroundId": "#3HPMAA#0",
  920. "renderCount": 50,
  921. "referenceImage": "depthRenderer.png"
  922. },
  923. {
  924. "title": "Edges",
  925. "playgroundId": "#TYAHX#114",
  926. "referenceImage": "edges.png"
  927. },
  928. {
  929. "title": "Outline",
  930. "playgroundId": "#10WJ5S#6",
  931. "referenceImage": "outline.png"
  932. },
  933. {
  934. "title": "Visibility",
  935. "playgroundId": "#PXC9CF#2",
  936. "referenceImage": "visibility.png"
  937. },
  938. {
  939. "title": "GLTF Extension EXT_mesh_gpu_instancing",
  940. "playgroundId": "#QFIGLW#9",
  941. "renderCount": 10,
  942. "referenceImage": "gltfExtensionExtMeshGpuInstancingTest.png"
  943. },
  944. {
  945. "title": "Realtime Filtering",
  946. "playgroundId": "#FEEK7G#118",
  947. "renderCount": 5,
  948. "referenceImage": "realtimeFiltering.png"
  949. },
  950. {
  951. "title": "GLTF Extension KHR_materials_variants",
  952. "playgroundId": "#BKGTKL#3",
  953. "referenceImage": "gltfExtensionKhrMaterialsVariants.png"
  954. },
  955. {
  956. "title": "OBJ loader test",
  957. "playgroundId": "#SYQW69#311",
  958. "referenceImage": "objTestLoader.png",
  959. "renderCount": 10
  960. },
  961. {
  962. "title": "KTX2 decoder test",
  963. "playgroundId": "#EIJH8L#27",
  964. "renderCount": 5,
  965. "referenceImage": "ktx2decoder.png",
  966. "excludeFromAutomaticTesting": true
  967. },
  968. {
  969. "title": "Motion Blur",
  970. "playgroundId": "#E5YGEL#2",
  971. "referenceImage": "motionBlur.png",
  972. "renderCount": 10,
  973. "excludedEngines": ["webgl1"],
  974. "excludeFromAutomaticTesting": true
  975. },
  976. {
  977. "title": "Screen space reflections",
  978. "playgroundId": "#PIZ1GK#172",
  979. "referenceImage": "ssr.png",
  980. "renderCount": 10,
  981. "excludedEngines": ["webgl1"],
  982. "excludeFromAutomaticTesting": true
  983. },
  984. {
  985. "title": "Geometry buffer renderer",
  986. "playgroundId": "#PIZ1GK#173",
  987. "referenceImage": "geometrybufferrenderer.png",
  988. "renderCount": 10,
  989. "excludedEngines": ["webgl1", "webgpu"],
  990. "excludeFromAutomaticTesting": true
  991. },
  992. {
  993. "title": "Shadows and LODs",
  994. "playgroundId": "#F7KZ7C#9",
  995. "referenceImage": "shadowsandlod.png"
  996. },
  997. {
  998. "title": "Shadows CSM and LODs",
  999. "playgroundId": "#24HWT9#0",
  1000. "referenceImage": "shadowscsmandlod.png",
  1001. "excludedEngines": [
  1002. "webgl1"
  1003. ]
  1004. },
  1005. {
  1006. "title": "Glow layer and LODs",
  1007. "playgroundId": "#UNS6ZV#2",
  1008. "referenceImage": "glowlayerandlods.png"
  1009. },
  1010. {
  1011. "title": "Shadows with instances in left handed system",
  1012. "renderCount": 10,
  1013. "playgroundId": "#MSAHKR#12",
  1014. "referenceImage": "shadowsinstancesleft.png"
  1015. },
  1016. {
  1017. "title": "Shadows with instances in right handed system",
  1018. "renderCount": 10,
  1019. "playgroundId": "#MSAHKR#13",
  1020. "referenceImage": "shadowsinstancesright.png"
  1021. },
  1022. {
  1023. "title": "Instances with color buffer",
  1024. "playgroundId": "#YPABS1#91",
  1025. "referenceImage": "instancecolors.png"
  1026. },
  1027. {
  1028. "title": "Prepass SSAO + particles",
  1029. "renderCount": 50,
  1030. "playgroundId": "#65MUMZ#46",
  1031. "excludedEngines": ["webgl1"],
  1032. "referenceImage": "prepass-ssao-particles.png"
  1033. },
  1034. {
  1035. "title": "Prepass SSAO + instances",
  1036. "renderCount": 10,
  1037. "playgroundId": "#YB006J#355",
  1038. "excludedEngines": ["webgl1"],
  1039. "referenceImage": "prepass-ssao-instances.png"
  1040. },
  1041. {
  1042. "title": "Prepass SSAO + instanced bones",
  1043. "renderCount": 50,
  1044. "playgroundId": "#0K8EYN#197",
  1045. "excludedEngines": ["webgl1"],
  1046. "referenceImage": "prepass-ssao-instanced-bones.png"
  1047. },
  1048. {
  1049. "title": "Prepass SSAO + depth of field",
  1050. "renderCount": 10,
  1051. "playgroundId": "#8F5HYV#14",
  1052. "excludedEngines": ["webgl1"],
  1053. "referenceImage": "prepass-ssao-dof.png"
  1054. },
  1055. {
  1056. "title": "Prepass + mirror, without postprocess",
  1057. "renderCount": 10,
  1058. "playgroundId": "#PIZ1GK#212",
  1059. "excludedEngines": ["webgl1"],
  1060. "referenceImage": "prepass-mirror-without-pp.png"
  1061. },
  1062. {
  1063. "title": "Prepass + mirror, with postprocesses",
  1064. "renderCount": 10,
  1065. "playgroundId": "#PIZ1GK#213",
  1066. "excludedEngines": ["webgl1"],
  1067. "referenceImage": "prepass-mirror-with-pp.png"
  1068. },
  1069. {
  1070. "title": "Prepass SSAO + sprites",
  1071. "renderCount": 10,
  1072. "playgroundId": "#9RI8CG#187",
  1073. "excludedEngines": ["webgl1"],
  1074. "referenceImage": "prepass-ssao-sprites.png"
  1075. },
  1076. {
  1077. "title": "Prepass SSAO + glow layer",
  1078. "renderCount": 30,
  1079. "playgroundId": "#LRFB2D#114",
  1080. "excludedEngines": ["webgl1"],
  1081. "referenceImage": "prepass-ssao-glow-layer.png"
  1082. },
  1083. {
  1084. "title": "Prepass SSAO + bounding box renderer",
  1085. "renderCount": 10,
  1086. "playgroundId": "#4F33I3#35",
  1087. "excludedEngines": ["webgl1"],
  1088. "referenceImage": "prepass-ssao-bbr.png"
  1089. },
  1090. {
  1091. "title": "Prepass SSAO + line edges renderer",
  1092. "renderCount": 10,
  1093. "playgroundId": "#T90MQ4#3",
  1094. "excludedEngines": ["webgl1"],
  1095. "referenceImage": "prepass-ssao-line-edges.png"
  1096. },
  1097. {
  1098. "title": "Prepass SSAO + B&W post process",
  1099. "renderCount": 10,
  1100. "playgroundId": "#N55Q2M#8",
  1101. "excludedEngines": ["webgl1"],
  1102. "referenceImage": "prepass-ssao-b-and-w.png"
  1103. },
  1104. {
  1105. "title": "Prepass SSAO + clip planes",
  1106. "renderCount": 10,
  1107. "playgroundId": "#Y6W087#71",
  1108. "excludedEngines": ["webgl1"],
  1109. "referenceImage": "prepass-ssao-clip-planes.png"
  1110. },
  1111. {
  1112. "title": "Prepass SSAO + GUI",
  1113. "renderCount": 10,
  1114. "playgroundId": "#LLVZ90#4",
  1115. "excludedEngines": ["webgl1"],
  1116. "referenceImage": "prepass-ssao-gui.png"
  1117. },
  1118. {
  1119. "title": "Prepass SSAO + LOD",
  1120. "renderCount": 10,
  1121. "playgroundId": "#FFMFW5#29",
  1122. "excludedEngines": ["webgl1"],
  1123. "referenceImage": "prepass-ssao-lod.png"
  1124. },
  1125. {
  1126. "title": "Prepass SSAO + shadow only",
  1127. "renderCount": 10,
  1128. "playgroundId": "#1KF7V1#55",
  1129. "excludedEngines": ["webgl1"],
  1130. "referenceImage": "prepass-ssao-shadow-only.png"
  1131. },
  1132. {
  1133. "title": "Prepass SSAO + highlight layer",
  1134. "renderCount": 10,
  1135. "playgroundId": "#1KUJ0A#416",
  1136. "excludedEngines": ["webgl1"],
  1137. "referenceImage": "prepass-ssao-highlight-layer.png"
  1138. },
  1139. {
  1140. "title": "Prepass SSAO + point light",
  1141. "renderCount": 10,
  1142. "playgroundId": "#XDNVAY#6",
  1143. "excludedEngines": ["webgl1"],
  1144. "referenceImage": "prepass-ssao-point-light.png"
  1145. },
  1146. {
  1147. "title": "Prepass SSAO + on/off post-process",
  1148. "renderCount": 10,
  1149. "playgroundId": "#1VI6WV#20",
  1150. "excludedEngines": ["webgl1"],
  1151. "referenceImage": "prepass-ssao-on-off-pp.png"
  1152. },
  1153. {
  1154. "title": "Prepass SSAO + thin instances",
  1155. "renderCount": 10,
  1156. "playgroundId": "#V1JE4Z#25",
  1157. "excludedEngines": ["webgl1"],
  1158. "referenceImage": "prepass-ssao-thin-instances.png"
  1159. },
  1160. {
  1161. "title": "Prepass SSAO + depth renderer",
  1162. "renderCount": 10,
  1163. "playgroundId": "#3HPMAA#1",
  1164. "excludedEngines": ["webgl1"],
  1165. "referenceImage": "prepass-ssao-depth-renderer.png"
  1166. },
  1167. {
  1168. "title": "Prepass SSAO + visibility",
  1169. "renderCount": 30,
  1170. "playgroundId": "#PXC9CF#4",
  1171. "excludedEngines": ["webgl1"],
  1172. "referenceImage": "prepass-ssao-visibility.png"
  1173. },
  1174. {
  1175. "title": "Prepass SSAO + default pipeline",
  1176. "renderCount": 10,
  1177. "playgroundId": "#NAW8EA#7",
  1178. "excludedEngines": ["webgl1"],
  1179. "referenceImage": "prepass-ssao-default-pipeline.png"
  1180. },
  1181. {
  1182. "title": "Prepass MBlur + Lens",
  1183. "renderCount": 10,
  1184. "playgroundId": "#ZEB7H6#23",
  1185. "excludedEngines": ["webgl1"],
  1186. "referenceImage": "prepass-mb-lens.png"
  1187. },
  1188. {
  1189. "title": "Prepass SSAO + MSAA",
  1190. "renderCount": 10,
  1191. "playgroundId": "#12MKMN#7",
  1192. "excludedEngines": ["webgl1"],
  1193. "referenceImage": "prepass-ssao-msaa.png"
  1194. }
  1195. ]
  1196. }