@babylonjs/gui 6.45.1 → 6.46.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"mrdlSliderBarMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlSliderBarMaterial.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,2CAA6B;AAEtE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,6CAA+B;AAGnE,OAAO,EAAE,OAAO,EAAE,sDAAwC;AAC1D,OAAO,EAAE,eAAe,EAAE,qDAAuC;AAEjE,OAAO,EAAE,YAAY,EAAE,kDAAoC;AAC3D,OAAO,EAAE,YAAY,EAAE,0CAA4B;AAKnD,OAAO,EAAE,aAAa,EAAE,0CAA4B;AACpD,OAAO,EAAE,MAAM,EAAE,4CAA8B;AAC/C,OAAO,EAAE,eAAe,EAAE,qDAAuC;AACjE,OAAO,EAAE,SAAS,EAAE,6CAA+B;AAEnD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,8DAAgD;AAEhL,gBAAgB;AAChB,MAAM,4BAA6B,SAAQ,eAAe;IAQtD;QACI,KAAK,EAAE,CAAC;QARZ;;UAEE;QACK,gBAAW,GAAG,IAAI,CAAC;QACnB,kBAAa,GAAG,IAAI,CAAC;QACrB,wBAAmB,GAAG,IAAI,CAAC;QAI9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,YAAY;IAubnD,YAAY,IAAY,EAAE,KAAa;QACnC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QA9avB;;WAEG;QAEI,WAAM,GAAG,GAAG,CAAC;QAEpB;;WAEG;QAEI,eAAU,GAAG,GAAG,CAAC;QAExB;;WAEG;QAEI,sBAAiB,GAAG,KAAK,CAAC;QAEjC;;WAEG;QAEI,cAAS,GAAG,CAAC,CAAC;QAErB;;WAEG;QAEI,qBAAgB,GAAG,CAAC,CAAC;QAE5B;;WAEG;QAEI,kBAAa,GAAG,GAAG,CAAC;QAE3B;;WAEG;QAEI,mBAAc,GAAG,GAAG,CAAC;QAE5B;;WAEG;QAEI,qBAAgB,GAAG,GAAG,CAAC;QAE9B;;WAEG;QAEI,sBAAiB,GAAG,GAAG,CAAC;QAE/B;;;WAGG;QAEI,iBAAY,GAAG,KAAK,CAAC;QAE5B;;WAEG;QAEI,gBAAW,GAAG,CAAC,KAAK,CAAC;QAE5B;;WAEG;QAEI,gBAAW,GAAG,IAAI,CAAC;QAE1B;;WAEG;QAEI,iBAAY,GAAG,KAAK,CAAC;QAE5B;;WAEG;QAEI,aAAQ,GAAG,IAAI,CAAC;QAEvB;;WAEG;QAEI,WAAM,GAAG,KAAK,CAAC;QAEtB;;WAEG;QAEI,oBAAe,GAAG,KAAK,CAAC;QAE/B;;WAEG;QAEI,WAAM,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE7D;;WAEG;QAEI,aAAQ,GAAG,CAAC,CAAC;QAEpB;;WAEG;QAEI,cAAS,GAAG,EAAE,CAAC;QAEtB;;WAEG;QAEI,cAAS,GAAG,CAAC,CAAC;QAErB;;WAEG;QAEI,eAAU,GAAG,CAAC,CAAC;QAEtB;;WAEG;QAEI,sBAAiB,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAExE;;WAEG;QAEI,uBAAkB,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAEzE;;WAEG;QAEI,eAAU,GAAG,KAAK,CAAC;QAE1B;;WAEG;QAEI,iBAAY,GAAG,CAAC,CAAC;QAExB;;WAEG;QAEI,gBAAW,GAAG,IAAI,CAAC;QAE1B;;WAEG;QAEI,UAAK,GAAG,IAAI,CAAC;QAEpB;;WAEG;QAEI,aAAQ,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE/D;;WAEG;QAEI,iBAAY,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAEnE;;WAEG;QAEI,gBAAW,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE1D;;WAEG;QAEI,iBAAY,GAAG,CAAC,CAAC;QAExB;;WAEG;QAEI,UAAK,GAAG,IAAI,CAAC;QAEpB;;WAEG;QAEI,SAAI,GAAG,GAAG,CAAC;QAElB;;WAEG;QAEI,YAAO,GAAG,KAAK,CAAC;QAEvB;;WAEG;QAEI,aAAQ,GAAG,IAAI,CAAC;QAEvB;;WAEG;QAEI,aAAQ,GAAG,CAAC,CAAC;QAEpB;;WAEG;QAEI,oBAAe,GAAG,CAAC,CAAC;QAE3B;;WAEG;QAEI,eAAU,GAAG,CAAC,CAAC;QAEtB;;WAEG;QAEI,iBAAY,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QAE7C;;WAEG;QAEI,kBAAa,GAAG,GAAG,CAAC;QAE3B;;WAEG;QAEI,iBAAY,GAAG,IAAI,CAAC;QAC3B;;WAEG;QAEI,gBAAW,GAAG,IAAI,CAAC;QAE1B;;WAEG;QAEI,qBAAgB,GAAG,CAAC,CAAC;QAE5B;;WAEG;QAEI,oBAAe,GAAG,IAAI,CAAC;QAE9B;;WAEG;QAEI,mBAAc,GAAG,KAAK,CAAC;QAE9B;;WAEG;QAEI,cAAS,GAAG,CAAC,CAAC;QAErB;;WAEG;QAEI,aAAQ,GAAG,CAAC,CAAC;QAEpB;;WAEG;QAEI,kBAAa,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QAEhD;;WAEG;QAEI,kBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QAEI,eAAU,GAAG,CAAC,CAAC;QAEtB;;WAEG;QAEI,cAAS,GAAG,CAAC,CAAC;QAErB;;WAEG;QAEI,gBAAW,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEtD;;WAEG;QAEI,sBAAiB,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhD;;WAEG;QAEI,uBAAkB,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpD;;WAEG;QAEI,4BAAuB,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtD;;WAEG;QAEI,6BAAwB,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAEvD;;WAEG;QAEI,iBAAY,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAE5C;;;WAGG;QAEI,mBAAc,GAAG,IAAI,CAAC;QAE7B;;WAEG;QAEI,iBAAY,GAAG,KAAK,CAAC;QAE5B;;WAEG;QAEI,gBAAW,GAAG,CAAC,CAAC;QAEvB;;WAEG;QAEI,uBAAkB,GAAG,CAAC,CAAC;QAE9B;;WAEG;QAEI,kBAAa,GAAG,CAAC,CAAC,CAAC;QAE1B;;WAEG;QAEI,yBAAoB,GAAG,CAAC,CAAC;QAEhC;;WAEG;QACI,uBAAkB,GAAG,GAAG,CAAC;QAEhC;;WAEG;QACI,wBAAmB,GAAG,GAAG,CAAC;QAEjC;;WAEG;QACI,gCAA2B,GAAG,GAAG,CAAC;QAEzC;;WAEG;QACI,iCAA4B,GAAG,GAAG,CAAC;QAE1C;;WAEG;QACI,+BAA0B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEtE;;WAEG;QACI,+BAA0B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAEpE;;WAEG;QACI,+BAA0B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEtE;;WAEG;QACI,gCAA2B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAErE;;WAEG;QACI,kCAA6B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEzE;;WAEG;QACI,mCAA8B,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAIpE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,oBAAoB,GAAG,IAAI,OAAO,CAAC,qBAAqB,CAAC,yBAAyB,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACrJ,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,qBAAqB,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,mBAAmB,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAEM,iBAAiB;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,gBAAgB;QACnB,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,UAAU;IACH,iBAAiB,CAAC,IAAkB,EAAE,OAAgB;QACzD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;QAEzC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,mBAAmB,EAAE;gBACvD,OAAO,IAAI,CAAC;aACf;SACJ;QAED,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAC1B,OAAO,CAAC,eAAe,GAAG,IAAI,4BAA4B,EAAE,CAAC;SAChE;QAED,MAAM,OAAO,GAAiC,OAAO,CAAC,eAAe,CAAC;QACtE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC;SACf;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QAEjC,UAAU;QACV,2BAA2B,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAEzD,qBAAqB;QACrB,IAAI,OAAO,CAAC,OAAO,EAAE;YACjB,OAAO,CAAC,eAAe,EAAE,CAAC;YAE1B,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAE5B,YAAY;YACZ,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;YACxC,IAAI,OAAO,CAAC,GAAG,EAAE;gBACb,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aACnC;YAED,yBAAyB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAE9C,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC,4BAA4B,CAAC,kBAAkB,CAAC;YAE3F,YAAY;YACZ,MAAM,OAAO,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAE5C,IAAI,OAAO,CAAC,MAAM,EAAE;gBAChB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;aACzC;YAED,IAAI,OAAO,CAAC,GAAG,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACrC;YAED,IAAI,OAAO,CAAC,GAAG,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;aACtC;YAED,IAAI,OAAO,CAAC,WAAW,EAAE;gBACrB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;aACxC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE;gBACjB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;aAC1C;YAED,6BAA6B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEhD,uBAAuB;YACvB,MAAM,UAAU,GAAG,eAAe,CAAC;YACnC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAEhC,MAAM,QAAQ,GAAG;gBACb,OAAO;gBACP,gBAAgB;gBAChB,gBAAgB;gBAChB,UAAU;gBACV,eAAe;gBACf,uBAAuB;gBACvB,cAAc;gBACd,sBAAsB;gBACtB,mBAAmB;gBACnB,oBAAoB;gBACpB,sBAAsB;gBACtB,uBAAuB;gBACvB,iBAAiB;gBACjB,gBAAgB;gBAChB,gBAAgB;gBAChB,iBAAiB;gBACjB,aAAa;gBACb,WAAW;gBACX,oBAAoB;gBACpB,UAAU;gBACV,YAAY;gBACZ,aAAa;gBACb,aAAa;gBACb,cAAc;gBACd,cAAc;gBACd,eAAe;gBACf,cAAc;gBACd,iBAAiB;gBACjB,gBAAgB;gBAChB,SAAS;gBACT,aAAa;gBACb,iBAAiB;gBACjB,gBAAgB;gBAChB,iBAAiB;gBACjB,kBAAkB;gBAClB,wBAAwB;gBACxB,SAAS;gBACT,QAAQ;gBACR,YAAY;gBACZ,aAAa;gBACb,aAAa;gBACb,oBAAoB;gBACpB,eAAe;gBACf,iBAAiB;gBACjB,kBAAkB;gBAClB,kBAAkB;gBAClB,iBAAiB;gBACjB,sBAAsB;gBACtB,qBAAqB;gBACrB,oBAAoB;gBACpB,cAAc;gBACd,aAAa;gBACb,gBAAgB;gBAChB,mBAAmB;gBACnB,oBAAoB;gBACpB,gBAAgB;gBAChB,eAAe;gBACf,kBAAkB;gBAClB,mBAAmB;gBACnB,yBAAyB;gBACzB,0BAA0B;gBAC1B,SAAS;gBACT,kBAAkB;gBAClB,oBAAoB;gBACpB,iBAAiB;gBACjB,eAAe;gBACf,iBAAiB;gBACjB,wBAAwB;gBACxB,mBAAmB;gBACnB,yBAAyB;gBACzB,uBAAuB;gBACvB,uBAAuB;gBACvB,wBAAwB;gBACxB,gCAAgC;gBAChC,iCAAiC;gBACjC,gCAAgC;gBAChC,iCAAiC;gBACjC,oCAAoC;gBACpC,oCAAoC;gBACpC,iCAAiC;gBACjC,kCAAkC;aACrC,CAAC;YACF,MAAM,QAAQ,GAAa,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAAC;YACtE,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,8BAA8B,CAAyB;gBACnD,aAAa,EAAE,QAAQ;gBACvB,mBAAmB,EAAE,cAAc;gBACnC,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,OAAO;gBAChB,qBAAqB,EAAE,CAAC;aAC3B,CAAC,CAAC;YAEH,OAAO,CAAC,SAAS,CACb,KAAK,CAAC,SAAS,EAAE,CAAC,YAAY,CAC1B,UAAU,EACc;gBACpB,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,QAAQ;gBACvB,mBAAmB,EAAE,cAAc;gBACnC,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,eAAe,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE;aAChD,EACD,MAAM,CACT,EACD,OAAO,EACP,IAAI,CAAC,gBAAgB,CACxB,CAAC;SACL;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;YAC9C,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACxC,WAAW,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAEvC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,cAAc,CAAC,KAAa,EAAE,IAAU,EAAE,OAAgB;QAC7D,MAAM,OAAO,GAAiC,OAAO,CAAC,eAAe,CAAC;QACtE,IAAI,CAAC,OAAO,EAAE;YACV,OAAO;SACV;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE;YACT,OAAO;SACV;QAED,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAE5B,WAAW;QACX,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,YAAa,CAAC,QAAQ,CAAC,CAAC;QAExF,eAAe;QACf,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,uBAAuB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,sBAAsB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAE3E,sBAAsB;QACtB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACrE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,sBAAsB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,uBAAuB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE7E,UAAU;QACV,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEhE,QAAQ;QACR,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAExE,yBAAyB;QACzB,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAE7D,aAAa;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3E,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE7E,eAAe;QACf,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEnD,oBAAoB;QACpB,0BAA0B;QAC1B,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAElE,uBAAuB;QACvB,0BAA0B;QAC1B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC9E,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,wBAAwB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAElF,oBAAoB;QACpB,iCAAiC;QACjC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE1D,2BAA2B;QAC3B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACxE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAE9D,SAAS;QACT,2BAA2B;QAC3B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,sBAAsB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE1D,iBAAiB;QACjB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAElE,WAAW;QACX,4BAA4B;QAC5B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACtE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAE7D,qBAAqB;QACrB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1E,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,mBAAmB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5E,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,yBAAyB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACvF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,0BAA0B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAEzF,kBAAkB;QAClB,4BAA4B;QAC5B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7D,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACrE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEnF,cAAc;QACd,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC1E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,wBAAwB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAErE,gBAAgB;QAChB,kCAAkC;QAClC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,yBAAyB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,uBAAuB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAElF,gBAAgB;QAChB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,uBAAuB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9E,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,wBAAwB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEhF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,gCAAgC,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACjG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,iCAAiC,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAElG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,gCAAgC,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACjG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,iCAAiC,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAEnG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,mCAAmC,EAAE,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACvG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oCAAoC,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAEzG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACjG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,kCAAkC,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAEnG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACI,cAAc;QACjB,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,OAAO,CAAC,kBAA4B;QACvC,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAClC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,IAAY;QACrB,OAAO,mBAAmB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACnG,CAAC;IAEM,SAAS;QACZ,MAAM,mBAAmB,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QAC9C,mBAAmB,CAAC,UAAU,GAAG,+BAA+B,CAAC;QACjE,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAEM,YAAY;QACf,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,UAAU;IACH,MAAM,CAAC,KAAK,CAAC,MAAW,EAAE,KAAY,EAAE,OAAe;QAC1D,OAAO,mBAAmB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAClH,CAAC;;AAp0BD;;GAEG;AACW,+CAAyB,GAAG,2EAA2E,AAA9E,CAA+E;AAU/G;IADN,SAAS,EAAE;qDACQ;AAMb;IADN,SAAS,EAAE;yDACY;AAMjB;IADN,SAAS,EAAE;gEACqB;AAM1B;IADN,SAAS,EAAE;wDACS;AAMd;IADN,SAAS,EAAE;+DACgB;AAMrB;IADN,SAAS,EAAE;4DACe;AAMpB;IADN,SAAS,EAAE;6DACgB;AAMrB;IADN,SAAS,EAAE;+DACkB;AAMvB;IADN,SAAS,EAAE;gEACmB;AAOxB;IADN,SAAS,EAAE;2DACgB;AAMrB;IADN,SAAS,EAAE;0DACgB;AAMrB;IADN,SAAS,EAAE;0DACc;AAMnB;IADN,SAAS,EAAE;2DACgB;AAMrB;IADN,SAAS,EAAE;uDACW;AAMhB;IADN,SAAS,EAAE;qDACU;AAMf;IADN,SAAS,EAAE;8DACmB;AAMxB;IADN,SAAS,EAAE;qDACiD;AAMtD;IADN,SAAS,EAAE;uDACQ;AAMb;IADN,SAAS,EAAE;wDACU;AAMf;IADN,SAAS,EAAE;wDACS;AAMd;IADN,SAAS,EAAE;yDACU;AAMf;IADN,SAAS,EAAE;gEAC4D;AAMjE;IADN,SAAS,EAAE;iEAC6D;AAMlE;IADN,SAAS,EAAE;yDACc;AAMnB;IADN,SAAS,EAAE;2DACY;AAMjB;IADN,SAAS,EAAE;0DACc;AAMnB;IADN,SAAS,EAAE;oDACQ;AAMb;IADN,SAAS,EAAE;uDACmD;AAMxD;IADN,SAAS,EAAE;2DACuD;AAM5D;IADN,SAAS,EAAE;0DAC8C;AAMnD;IADN,SAAS,EAAE;2DACY;AAMjB;IADN,SAAS,EAAE;oDACQ;AAMb;IADN,SAAS,EAAE;mDACM;AAMX;IADN,SAAS,EAAE;sDACW;AAMhB;IADN,SAAS,EAAE;uDACW;AAMhB;IADN,SAAS,EAAE;uDACQ;AAMb;IADN,SAAS,EAAE;8DACe;AAMpB;IADN,SAAS,EAAE;yDACU;AAMf;IADN,SAAS,EAAE;2DACiC;AAMtC;IADN,SAAS,EAAE;4DACe;AAMpB;IADN,SAAS,EAAE;2DACe;AAKpB;IADN,SAAS,EAAE;0DACc;AAMnB;IADN,SAAS,EAAE;+DACgB;AAMrB;IADN,SAAS,EAAE;8DACkB;AAMvB;IADN,SAAS,EAAE;6DACkB;AAMvB;IADN,SAAS,EAAE;wDACS;AAMd;IADN,SAAS,EAAE;uDACQ;AAMb;IADN,SAAS,EAAE;4DACoC;AAMzC;IADN,SAAS,EAAE;4DACgB;AAMrB;IADN,SAAS,EAAE;yDACU;AAMf;IADN,SAAS,EAAE;wDACS;AAMd;IADN,SAAS,EAAE;0DAC0C;AAM/C;IADN,SAAS,EAAE;gEACoC;AAMzC;IADN,SAAS,EAAE;iEACwC;AAM7C;IADN,SAAS,EAAE;sEAC0C;AAM/C;IADN,SAAS,EAAE;uEAC2C;AAMhD;IADN,SAAS,EAAE;2DACgC;AAOrC;IADN,SAAS,EAAE;6DACiB;AAMtB;IADN,SAAS,EAAE;2DACgB;AAMrB;IADN,SAAS,EAAE;0DACW;AAMhB;IADN,SAAS,EAAE;iEACkB;AAMvB;IADN,SAAS,EAAE;4DACc;AAMnB;IADN,SAAS,EAAE;mEACoB;AAqcpC,aAAa,CAAC,mCAAmC,EAAE,qBAAqB,CAAC,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nimport type { Nullable } from \"core/types\";\r\nimport { SerializationHelper, serialize } from \"core/Misc/decorators\";\r\nimport type { Matrix } from \"core/Maths/math.vector\";\r\nimport { Vector2, Vector3, Vector4 } from \"core/Maths/math.vector\";\r\nimport type { IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport type { BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport type { IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\nimport type { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport type { SubMesh } from \"core/Meshes/subMesh\";\r\nimport type { Mesh } from \"core/Meshes/mesh\";\r\nimport type { Scene } from \"core/scene\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { Constants } from \"core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlSliderBar.fragment\";\r\nimport \"./shaders/mrdlSliderBar.vertex\";\r\nimport { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from \"core/Materials/materialHelper.functions\";\r\n\r\n/** @internal */\r\nclass MRDLSliderBarMaterialDefines extends MaterialDefines {\r\n /*\r\n \"SKY_ENABLED\", \"BLOB_ENABLE_2\", \"IRIDESCENCE_ENABLED\"\r\n */\r\n public SKY_ENABLED = true;\r\n public BLOB_ENABLE_2 = true;\r\n public IRIDESCENCE_ENABLED = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this._needUVs = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render Slider Bar material with MRDL\r\n */\r\nexport class MRDLSliderBarMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static BLUE_GRADIENT_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-blue-gradient.png\";\r\n private _blueGradientTexture: Texture;\r\n private _decalTexture: Texture;\r\n private _reflectionMapTexture: Texture;\r\n private _indirectEnvTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner Radius on the slider bar.\r\n */\r\n @serialize()\r\n public radius = 0.6;\r\n\r\n /**\r\n * Gets or sets the Bevel Front on the slider bar.\r\n */\r\n @serialize()\r\n public bevelFront = 0.6;\r\n\r\n /**\r\n * Gets or sets the Bevel Front Stretch on the slider bar.\r\n */\r\n @serialize()\r\n public bevelFrontStretch = 0.077;\r\n\r\n /**\r\n * Gets or sets the Bevel Back on the slider bar.\r\n */\r\n @serialize()\r\n public bevelBack = 0;\r\n\r\n /**\r\n * Gets or sets the Bevel Back Stretch on the slider bar.\r\n */\r\n @serialize()\r\n public bevelBackStretch = 0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /**\r\n * Gets or sets whether Bulge is enabled.\r\n * Default is false.\r\n */\r\n @serialize()\r\n public bulgeEnabled = false;\r\n\r\n /**\r\n * Gets or sets the Bulge Height.\r\n */\r\n @serialize()\r\n public bulgeHeight = -0.323;\r\n\r\n /**\r\n * Gets or sets the Bulge Radius.\r\n */\r\n @serialize()\r\n public bulgeRadius = 0.73;\r\n\r\n /**\r\n * Gets or sets the Sun Intensity.\r\n */\r\n @serialize()\r\n public sunIntensity = 1.102;\r\n\r\n /**\r\n * Gets or sets the Sun Theta.\r\n */\r\n @serialize()\r\n public sunTheta = 0.76;\r\n\r\n /**\r\n * Gets or sets the Sun Phi.\r\n */\r\n @serialize()\r\n public sunPhi = 0.526;\r\n\r\n /**\r\n * Gets or sets the Indirect Diffuse.\r\n */\r\n @serialize()\r\n public indirectDiffuse = 0.658;\r\n\r\n /**\r\n * Gets or sets the base albedo.\r\n */\r\n @serialize()\r\n public albedo = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the Specular value.\r\n */\r\n @serialize()\r\n public specular = 0;\r\n\r\n /**\r\n * Gets or sets the Shininess value.\r\n */\r\n @serialize()\r\n public shininess = 10;\r\n\r\n /**\r\n * Gets or sets the Sharpness value.\r\n */\r\n @serialize()\r\n public sharpness = 0;\r\n\r\n /**\r\n * Gets or sets the Subsurface value.\r\n */\r\n @serialize()\r\n public subsurface = 0;\r\n\r\n /**\r\n * Gets or sets the left gradient color.\r\n */\r\n @serialize()\r\n public leftGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the right gradient color.\r\n */\r\n @serialize()\r\n public rightGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the reflection value.\r\n */\r\n @serialize()\r\n public reflection = 0.749;\r\n\r\n /**\r\n * Gets or sets the front reflect value.\r\n */\r\n @serialize()\r\n public frontReflect = 0;\r\n\r\n /**\r\n * Gets or sets the edge reflect value.\r\n */\r\n @serialize()\r\n public edgeReflect = 0.09;\r\n\r\n /**\r\n * Gets or sets the power value.\r\n */\r\n @serialize()\r\n public power = 8.13;\r\n\r\n /**\r\n * Gets or sets the sky color.\r\n */\r\n @serialize()\r\n public skyColor = new Color4(0.0117647, 0.964706, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon color.\r\n */\r\n @serialize()\r\n public horizonColor = new Color4(0.0117647, 0.333333, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the ground color.\r\n */\r\n @serialize()\r\n public groundColor = new Color4(0, 0.254902, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon power value.\r\n */\r\n @serialize()\r\n public horizonPower = 1;\r\n\r\n /**\r\n * Gets or sets the finger occlusion width value.\r\n */\r\n @serialize()\r\n public width = 0.02;\r\n\r\n /**\r\n * Gets or sets the finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public fuzz = 0.5;\r\n\r\n /**\r\n * Gets or sets the minimum finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public minFuzz = 0.001;\r\n\r\n /**\r\n * Gets or sets the finger occlusion clip fade value.\r\n */\r\n @serialize()\r\n public clipFade = 0.01;\r\n\r\n /**\r\n * Gets or sets the hue shift value.\r\n */\r\n @serialize()\r\n public hueShift = 0;\r\n\r\n /**\r\n * Gets or sets the saturation shift value.\r\n */\r\n @serialize()\r\n public saturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the value shift.\r\n */\r\n @serialize()\r\n public valueShift = 0;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition = new Vector3(0, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the intensity of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobIntensity = 0.5;\r\n\r\n /**\r\n * Gets or sets the near size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobNearSize = 0.01;\r\n /**\r\n * Gets or sets the far size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobFarSize = 0.03;\r\n\r\n /**\r\n * Gets or sets the distance considered \"near\" to the mesh, which controls the size of the hover glow effect (see blobNearSize).\r\n */\r\n @serialize()\r\n public blobNearDistance = 0;\r\n\r\n /**\r\n * Gets or sets the distance considered \"far\" from the mesh, which controls the size of the hover glow effect (see blobFarSize).\r\n */\r\n @serialize()\r\n public blobFarDistance = 0.08;\r\n\r\n /**\r\n * Gets or sets the length of the hover glow effect fade.\r\n */\r\n @serialize()\r\n public blobFadeLength = 0.576;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the left pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the left pointer (0.0 - 1.0). Default is 0.\r\n */\r\n @serialize()\r\n public blobFade = 1;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition2 = new Vector3(0.2, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the size of the hover glow effect when the right pointer is considered \"near\" to the mesh (see blobNearDistance).\r\n */\r\n @serialize()\r\n public blobNearSize2 = 0.01;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the right pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse2 = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the right pointer (0.0 - 1.0). Default is 1.\r\n */\r\n @serialize()\r\n public blobFade2 = 1;\r\n\r\n /**\r\n * Gets or sets the texture of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobTexture = new Texture(\"\", this.getScene());\r\n\r\n /**\r\n * Gets or sets the finger position for left index.\r\n */\r\n @serialize()\r\n public leftIndexPosition = new Vector3(0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the finger position for right index.\r\n */\r\n @serialize()\r\n public rightIndexPosition = new Vector3(-1, -1, -1);\r\n\r\n /**\r\n * Gets or sets the finger position for left index middle position.\r\n */\r\n @serialize()\r\n public leftIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the finger position for right index middle position.\r\n */\r\n @serialize()\r\n public rightIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the Decal Scle for XY.\r\n */\r\n @serialize()\r\n public decalScaleXY = new Vector2(1.5, 1.5);\r\n\r\n /**\r\n * Gets or sets decalFrontOnly\r\n * Default is true\r\n */\r\n @serialize()\r\n public decalFrontOnly = true;\r\n\r\n /**\r\n * Gets or sets the Rim Light intensity.\r\n */\r\n @serialize()\r\n public rimIntensity = 0.287;\r\n\r\n /**\r\n * Gets or sets the Rim Light hue shift value.\r\n */\r\n @serialize()\r\n public rimHueShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light saturation shift value.\r\n */\r\n @serialize()\r\n public rimSaturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light value shift.\r\n */\r\n @serialize()\r\n public rimValueShift = -1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalLeftIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalRightIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globaRightIndexTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftThumbTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightThumbTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexMiddlePosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexMiddlePosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n this._blueGradientTexture = new Texture(MRDLSliderBarMaterial.BLUE_GRADIENT_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);\r\n this._decalTexture = new Texture(\"\", this.getScene());\r\n this._reflectionMapTexture = new Texture(\"\", this.getScene());\r\n this._indirectEnvTexture = new Texture(\"\", this.getScene());\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean {\r\n const drawWrapper = subMesh._drawWrapper;\r\n\r\n if (this.isFrozen) {\r\n if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLSliderBarMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLSliderBarMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlSliderBar\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Radius_\",\r\n \"_Bevel_Front_\",\r\n \"_Bevel_Front_Stretch_\",\r\n \"_Bevel_Back_\",\r\n \"_Bevel_Back_Stretch_\",\r\n \"_Radius_Top_Left_\",\r\n \"_Radius_Top_Right_\",\r\n \"_Radius_Bottom_Left_\",\r\n \"_Radius_Bottom_Right_\",\r\n \"_Bulge_Enabled_\",\r\n \"_Bulge_Height_\",\r\n \"_Bulge_Radius_\",\r\n \"_Sun_Intensity_\",\r\n \"_Sun_Theta_\",\r\n \"_Sun_Phi_\",\r\n \"_Indirect_Diffuse_\",\r\n \"_Albedo_\",\r\n \"_Specular_\",\r\n \"_Shininess_\",\r\n \"_Sharpness_\",\r\n \"_Subsurface_\",\r\n \"_Left_Color_\",\r\n \"_Right_Color_\",\r\n \"_Reflection_\",\r\n \"_Front_Reflect_\",\r\n \"_Edge_Reflect_\",\r\n \"_Power_\",\r\n \"_Sky_Color_\",\r\n \"_Horizon_Color_\",\r\n \"_Ground_Color_\",\r\n \"_Horizon_Power_\",\r\n \"_Reflection_Map_\",\r\n \"_Indirect_Environment_\",\r\n \"_Width_\",\r\n \"_Fuzz_\",\r\n \"_Min_Fuzz_\",\r\n \"_Clip_Fade_\",\r\n \"_Hue_Shift_\",\r\n \"_Saturation_Shift_\",\r\n \"_Value_Shift_\",\r\n \"_Blob_Position_\",\r\n \"_Blob_Intensity_\",\r\n \"_Blob_Near_Size_\",\r\n \"_Blob_Far_Size_\",\r\n \"_Blob_Near_Distance_\",\r\n \"_Blob_Far_Distance_\",\r\n \"_Blob_Fade_Length_\",\r\n \"_Blob_Pulse_\",\r\n \"_Blob_Fade_\",\r\n \"_Blob_Texture_\",\r\n \"_Blob_Position_2_\",\r\n \"_Blob_Near_Size_2_\",\r\n \"_Blob_Pulse_2_\",\r\n \"_Blob_Fade_2_\",\r\n \"_Left_Index_Pos_\",\r\n \"_Right_Index_Pos_\",\r\n \"_Left_Index_Middle_Pos_\",\r\n \"_Right_Index_Middle_Pos_\",\r\n \"_Decal_\",\r\n \"_Decal_Scale_XY_\",\r\n \"_Decal_Front_Only_\",\r\n \"_Rim_Intensity_\",\r\n \"_Rim_Texture_\",\r\n \"_Rim_Hue_Shift_\",\r\n \"_Rim_Saturation_Shift_\",\r\n \"_Rim_Value_Shift_\",\r\n \"_Iridescence_Intensity_\",\r\n \"_Iridescence_Texture_\",\r\n \"Use_Global_Left_Index\",\r\n \"Use_Global_Right_Index\",\r\n \"Global_Left_Index_Tip_Position\",\r\n \"Global_Right_Index_Tip_Position\",\r\n \"Global_Left_Thumb_Tip_Position\",\r\n \"Global_Right_Thumb_Tip_Position\",\r\n \"Global_Left_Index_Middle_Position;\",\r\n \"Global_Right_Index_Middle_Position\",\r\n \"Global_Left_Index_Tip_Proximity\",\r\n \"Global_Right_Index_Tip_Proximity\",\r\n ];\r\n const samplers: string[] = [\"_Rim_Texture_\", \"_Iridescence_Texture_\"];\r\n const uniformBuffers: string[] = [];\r\n\r\n PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4,\r\n });\r\n\r\n subMesh.setEffect(\r\n scene.getEngine().createEffect(\r\n shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 },\r\n },\r\n engine\r\n ),\r\n defines,\r\n this._materialContext\r\n );\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n drawWrapper._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLSliderBarMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Bevel_Front_\", this.bevelFront);\r\n this._activeEffect.setFloat(\"_Bevel_Front_Stretch_\", this.bevelFrontStretch);\r\n this._activeEffect.setFloat(\"_Bevel_Back_\", this.bevelBack);\r\n this._activeEffect.setFloat(\"_Bevel_Back_Stretch_\", this.bevelBackStretch);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Bulge\"\r\n this._activeEffect.setFloat(\"_Bulge_Enabled_\", this.bulgeEnabled ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Bulge_Height_\", this.bulgeHeight);\r\n this._activeEffect.setFloat(\"_Bulge_Radius_\", this.bulgeRadius);\r\n\r\n // \"Sun\"\r\n this._activeEffect.setFloat(\"_Sun_Intensity_\", this.sunIntensity);\r\n this._activeEffect.setFloat(\"_Sun_Theta_\", this.sunTheta);\r\n this._activeEffect.setFloat(\"_Sun_Phi_\", this.sunPhi);\r\n this._activeEffect.setFloat(\"_Indirect_Diffuse_\", this.indirectDiffuse);\r\n\r\n // \"Diffuse And Specular\"\r\n this._activeEffect.setDirectColor4(\"_Albedo_\", this.albedo);\r\n this._activeEffect.setFloat(\"_Specular_\", this.specular);\r\n this._activeEffect.setFloat(\"_Shininess_\", this.shininess);\r\n this._activeEffect.setFloat(\"_Sharpness_\", this.sharpness);\r\n this._activeEffect.setFloat(\"_Subsurface_\", this.subsurface);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Left_Color_\", this.leftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Right_Color_\", this.rightGradientColor);\r\n\r\n // \"Reflection\"\r\n this._activeEffect.setFloat(\"_Reflection_\", this.reflection);\r\n this._activeEffect.setFloat(\"_Front_Reflect_\", this.frontReflect);\r\n this._activeEffect.setFloat(\"_Edge_Reflect_\", this.edgeReflect);\r\n this._activeEffect.setFloat(\"_Power_\", this.power);\r\n\r\n // \"Sky Environment\"\r\n //define SKY_ENABLED true;\r\n this._activeEffect.setDirectColor4(\"_Sky_Color_\", this.skyColor);\r\n this._activeEffect.setDirectColor4(\"_Horizon_Color_\", this.horizonColor);\r\n this._activeEffect.setDirectColor4(\"_Ground_Color_\", this.groundColor);\r\n this._activeEffect.setFloat(\"_Horizon_Power_\", this.horizonPower);\r\n\r\n // \"Mapped Environment\"\r\n //define ENV_ENABLE false;\r\n this._activeEffect.setTexture(\"_Reflection_Map_\", this._reflectionMapTexture);\r\n this._activeEffect.setTexture(\"_Indirect_Environment_\", this._indirectEnvTexture);\r\n\r\n // \"FingerOcclusion\"\r\n //define OCCLUSION_ENABLED false;\r\n this._activeEffect.setFloat(\"_Width_\", this.width);\r\n this._activeEffect.setFloat(\"_Fuzz_\", this.fuzz);\r\n this._activeEffect.setFloat(\"_Min_Fuzz_\", this.minFuzz);\r\n this._activeEffect.setFloat(\"_Clip_Fade_\", this.clipFade);\r\n\r\n // \"View Based Color Shift\"\r\n this._activeEffect.setFloat(\"_Hue_Shift_\", this.hueShift);\r\n this._activeEffect.setFloat(\"_Saturation_Shift_\", this.saturationShift);\r\n this._activeEffect.setFloat(\"_Value_Shift_\", this.valueShift);\r\n\r\n // \"Blob\"\r\n //define BLOB_ENABLE false;\r\n this._activeEffect.setVector3(\"_Blob_Position_\", this.blobPosition);\r\n this._activeEffect.setFloat(\"_Blob_Intensity_\", this.blobIntensity);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_\", this.blobNearSize);\r\n this._activeEffect.setFloat(\"_Blob_Far_Size_\", this.blobFarSize);\r\n this._activeEffect.setFloat(\"_Blob_Near_Distance_\", this.blobNearDistance);\r\n this._activeEffect.setFloat(\"_Blob_Far_Distance_\", this.blobFarDistance);\r\n this._activeEffect.setFloat(\"_Blob_Fade_Length_\", this.blobFadeLength);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_\", this.blobPulse);\r\n this._activeEffect.setFloat(\"_Blob_Fade_\", this.blobFade);\r\n\r\n // \"Blob Texture\"\r\n this._activeEffect.setTexture(\"_Blob_Texture_\", this.blobTexture);\r\n\r\n // \"Blob 2\"\r\n //define BLOB_ENABLE_2 true;\r\n this._activeEffect.setVector3(\"_Blob_Position_2_\", this.blobPosition2);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_2_\", this.blobNearSize2);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_2_\", this.blobPulse2);\r\n this._activeEffect.setFloat(\"_Blob_Fade_2_\", this.blobFade2);\r\n\r\n // \"Finger Positions\"\r\n this._activeEffect.setVector3(\"_Left_Index_Pos_\", this.leftIndexPosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Pos_\", this.rightIndexPosition);\r\n this._activeEffect.setVector3(\"_Left_Index_Middle_Pos_\", this.leftIndexMiddlePosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Middle_Pos_\", this.rightIndexMiddlePosition);\r\n\r\n // \"Decal Texture\"\r\n //define DECAL_ENABLE false;\r\n this._activeEffect.setTexture(\"_Decal_\", this._decalTexture);\r\n this._activeEffect.setVector2(\"_Decal_Scale_XY_\", this.decalScaleXY);\r\n this._activeEffect.setFloat(\"_Decal_Front_Only_\", this.decalFrontOnly ? 1.0 : 0.0);\r\n\r\n // \"Rim Light\"\r\n this._activeEffect.setFloat(\"_Rim_Intensity_\", this.rimIntensity);\r\n this._activeEffect.setTexture(\"_Rim_Texture_\", this._blueGradientTexture);\r\n this._activeEffect.setFloat(\"_Rim_Hue_Shift_\", this.rimHueShift);\r\n this._activeEffect.setFloat(\"_Rim_Saturation_Shift_\", this.rimSaturationShift);\r\n this._activeEffect.setFloat(\"_Rim_Value_Shift_\", this.rimValueShift);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLED true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setTexture(\"_Iridescence_Texture_\", this._blueGradientTexture);\r\n\r\n // Global inputs\r\n this._activeEffect.setFloat(\"Use_Global_Left_Index\", this.useGlobalLeftIndex);\r\n this._activeEffect.setFloat(\"Use_Global_Right_Index\", this.useGlobalRightIndex);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Tip_Position\", this.globalLeftIndexTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Tip_Position\", this.globaRightIndexTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Thumb_Tip_Position\", this.globalLeftThumbTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Thumb_Tip_Position\", this.globalRightThumbTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Middle_Position\", this.globalLeftIndexMiddlePosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Middle_Position\", this.globalRightIndexMiddlePosition);\r\n\r\n this._activeEffect.setFloat(\"Global_Left_Index_Tip_Proximity\", this.globalLeftIndexTipProximity);\r\n this._activeEffect.setFloat(\"Global_Right_Index_Tip_Proximity\", this.globalRightIndexTipProximity);\r\n\r\n this._afterBind(mesh, this._activeEffect, subMesh);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n this._reflectionMapTexture.dispose();\r\n this._indirectEnvTexture.dispose();\r\n this._blueGradientTexture.dispose();\r\n this._decalTexture.dispose();\r\n }\r\n\r\n public clone(name: string): MRDLSliderBarMaterial {\r\n return SerializationHelper.Clone(() => new MRDLSliderBarMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLSliderBarMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLSliderBarMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderBarMaterial {\r\n return SerializationHelper.Parse(() => new MRDLSliderBarMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLSliderBarMaterial\", MRDLSliderBarMaterial);\r\n"]}
1
+ {"version":3,"file":"mrdlSliderBarMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlSliderBarMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nimport type { Nullable } from \"core/types\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\nimport { SerializationHelper } from \"core/Misc/decorators.serialization\";\r\nimport type { Matrix } from \"core/Maths/math.vector\";\r\nimport { Vector2, Vector3, Vector4 } from \"core/Maths/math.vector\";\r\nimport type { IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport type { BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport type { IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\nimport type { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport type { SubMesh } from \"core/Meshes/subMesh\";\r\nimport type { Mesh } from \"core/Meshes/mesh\";\r\nimport type { Scene } from \"core/scene\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { Constants } from \"core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlSliderBar.fragment\";\r\nimport \"./shaders/mrdlSliderBar.vertex\";\r\nimport { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from \"core/Materials/materialHelper.functions\";\r\n\r\n/** @internal */\r\nclass MRDLSliderBarMaterialDefines extends MaterialDefines {\r\n /*\r\n \"SKY_ENABLED\", \"BLOB_ENABLE_2\", \"IRIDESCENCE_ENABLED\"\r\n */\r\n public SKY_ENABLED = true;\r\n public BLOB_ENABLE_2 = true;\r\n public IRIDESCENCE_ENABLED = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this._needUVs = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render Slider Bar material with MRDL\r\n */\r\nexport class MRDLSliderBarMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static BLUE_GRADIENT_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-blue-gradient.png\";\r\n private _blueGradientTexture: Texture;\r\n private _decalTexture: Texture;\r\n private _reflectionMapTexture: Texture;\r\n private _indirectEnvTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner Radius on the slider bar.\r\n */\r\n @serialize()\r\n public radius = 0.6;\r\n\r\n /**\r\n * Gets or sets the Bevel Front on the slider bar.\r\n */\r\n @serialize()\r\n public bevelFront = 0.6;\r\n\r\n /**\r\n * Gets or sets the Bevel Front Stretch on the slider bar.\r\n */\r\n @serialize()\r\n public bevelFrontStretch = 0.077;\r\n\r\n /**\r\n * Gets or sets the Bevel Back on the slider bar.\r\n */\r\n @serialize()\r\n public bevelBack = 0;\r\n\r\n /**\r\n * Gets or sets the Bevel Back Stretch on the slider bar.\r\n */\r\n @serialize()\r\n public bevelBackStretch = 0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /**\r\n * Gets or sets whether Bulge is enabled.\r\n * Default is false.\r\n */\r\n @serialize()\r\n public bulgeEnabled = false;\r\n\r\n /**\r\n * Gets or sets the Bulge Height.\r\n */\r\n @serialize()\r\n public bulgeHeight = -0.323;\r\n\r\n /**\r\n * Gets or sets the Bulge Radius.\r\n */\r\n @serialize()\r\n public bulgeRadius = 0.73;\r\n\r\n /**\r\n * Gets or sets the Sun Intensity.\r\n */\r\n @serialize()\r\n public sunIntensity = 1.102;\r\n\r\n /**\r\n * Gets or sets the Sun Theta.\r\n */\r\n @serialize()\r\n public sunTheta = 0.76;\r\n\r\n /**\r\n * Gets or sets the Sun Phi.\r\n */\r\n @serialize()\r\n public sunPhi = 0.526;\r\n\r\n /**\r\n * Gets or sets the Indirect Diffuse.\r\n */\r\n @serialize()\r\n public indirectDiffuse = 0.658;\r\n\r\n /**\r\n * Gets or sets the base albedo.\r\n */\r\n @serialize()\r\n public albedo = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the Specular value.\r\n */\r\n @serialize()\r\n public specular = 0;\r\n\r\n /**\r\n * Gets or sets the Shininess value.\r\n */\r\n @serialize()\r\n public shininess = 10;\r\n\r\n /**\r\n * Gets or sets the Sharpness value.\r\n */\r\n @serialize()\r\n public sharpness = 0;\r\n\r\n /**\r\n * Gets or sets the Subsurface value.\r\n */\r\n @serialize()\r\n public subsurface = 0;\r\n\r\n /**\r\n * Gets or sets the left gradient color.\r\n */\r\n @serialize()\r\n public leftGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the right gradient color.\r\n */\r\n @serialize()\r\n public rightGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the reflection value.\r\n */\r\n @serialize()\r\n public reflection = 0.749;\r\n\r\n /**\r\n * Gets or sets the front reflect value.\r\n */\r\n @serialize()\r\n public frontReflect = 0;\r\n\r\n /**\r\n * Gets or sets the edge reflect value.\r\n */\r\n @serialize()\r\n public edgeReflect = 0.09;\r\n\r\n /**\r\n * Gets or sets the power value.\r\n */\r\n @serialize()\r\n public power = 8.13;\r\n\r\n /**\r\n * Gets or sets the sky color.\r\n */\r\n @serialize()\r\n public skyColor = new Color4(0.0117647, 0.964706, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon color.\r\n */\r\n @serialize()\r\n public horizonColor = new Color4(0.0117647, 0.333333, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the ground color.\r\n */\r\n @serialize()\r\n public groundColor = new Color4(0, 0.254902, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon power value.\r\n */\r\n @serialize()\r\n public horizonPower = 1;\r\n\r\n /**\r\n * Gets or sets the finger occlusion width value.\r\n */\r\n @serialize()\r\n public width = 0.02;\r\n\r\n /**\r\n * Gets or sets the finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public fuzz = 0.5;\r\n\r\n /**\r\n * Gets or sets the minimum finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public minFuzz = 0.001;\r\n\r\n /**\r\n * Gets or sets the finger occlusion clip fade value.\r\n */\r\n @serialize()\r\n public clipFade = 0.01;\r\n\r\n /**\r\n * Gets or sets the hue shift value.\r\n */\r\n @serialize()\r\n public hueShift = 0;\r\n\r\n /**\r\n * Gets or sets the saturation shift value.\r\n */\r\n @serialize()\r\n public saturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the value shift.\r\n */\r\n @serialize()\r\n public valueShift = 0;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition = new Vector3(0, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the intensity of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobIntensity = 0.5;\r\n\r\n /**\r\n * Gets or sets the near size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobNearSize = 0.01;\r\n /**\r\n * Gets or sets the far size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobFarSize = 0.03;\r\n\r\n /**\r\n * Gets or sets the distance considered \"near\" to the mesh, which controls the size of the hover glow effect (see blobNearSize).\r\n */\r\n @serialize()\r\n public blobNearDistance = 0;\r\n\r\n /**\r\n * Gets or sets the distance considered \"far\" from the mesh, which controls the size of the hover glow effect (see blobFarSize).\r\n */\r\n @serialize()\r\n public blobFarDistance = 0.08;\r\n\r\n /**\r\n * Gets or sets the length of the hover glow effect fade.\r\n */\r\n @serialize()\r\n public blobFadeLength = 0.576;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the left pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the left pointer (0.0 - 1.0). Default is 0.\r\n */\r\n @serialize()\r\n public blobFade = 1;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition2 = new Vector3(0.2, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the size of the hover glow effect when the right pointer is considered \"near\" to the mesh (see blobNearDistance).\r\n */\r\n @serialize()\r\n public blobNearSize2 = 0.01;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the right pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse2 = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the right pointer (0.0 - 1.0). Default is 1.\r\n */\r\n @serialize()\r\n public blobFade2 = 1;\r\n\r\n /**\r\n * Gets or sets the texture of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobTexture = new Texture(\"\", this.getScene());\r\n\r\n /**\r\n * Gets or sets the finger position for left index.\r\n */\r\n @serialize()\r\n public leftIndexPosition = new Vector3(0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the finger position for right index.\r\n */\r\n @serialize()\r\n public rightIndexPosition = new Vector3(-1, -1, -1);\r\n\r\n /**\r\n * Gets or sets the finger position for left index middle position.\r\n */\r\n @serialize()\r\n public leftIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the finger position for right index middle position.\r\n */\r\n @serialize()\r\n public rightIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the Decal Scle for XY.\r\n */\r\n @serialize()\r\n public decalScaleXY = new Vector2(1.5, 1.5);\r\n\r\n /**\r\n * Gets or sets decalFrontOnly\r\n * Default is true\r\n */\r\n @serialize()\r\n public decalFrontOnly = true;\r\n\r\n /**\r\n * Gets or sets the Rim Light intensity.\r\n */\r\n @serialize()\r\n public rimIntensity = 0.287;\r\n\r\n /**\r\n * Gets or sets the Rim Light hue shift value.\r\n */\r\n @serialize()\r\n public rimHueShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light saturation shift value.\r\n */\r\n @serialize()\r\n public rimSaturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light value shift.\r\n */\r\n @serialize()\r\n public rimValueShift = -1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalLeftIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalRightIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globaRightIndexTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftThumbTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightThumbTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexMiddlePosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexMiddlePosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n this._blueGradientTexture = new Texture(MRDLSliderBarMaterial.BLUE_GRADIENT_TEXTURE_URL, this.getScene(), true, false, Texture.NEAREST_SAMPLINGMODE);\r\n this._decalTexture = new Texture(\"\", this.getScene());\r\n this._reflectionMapTexture = new Texture(\"\", this.getScene());\r\n this._indirectEnvTexture = new Texture(\"\", this.getScene());\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean {\r\n const drawWrapper = subMesh._drawWrapper;\r\n\r\n if (this.isFrozen) {\r\n if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLSliderBarMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLSliderBarMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlSliderBar\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Radius_\",\r\n \"_Bevel_Front_\",\r\n \"_Bevel_Front_Stretch_\",\r\n \"_Bevel_Back_\",\r\n \"_Bevel_Back_Stretch_\",\r\n \"_Radius_Top_Left_\",\r\n \"_Radius_Top_Right_\",\r\n \"_Radius_Bottom_Left_\",\r\n \"_Radius_Bottom_Right_\",\r\n \"_Bulge_Enabled_\",\r\n \"_Bulge_Height_\",\r\n \"_Bulge_Radius_\",\r\n \"_Sun_Intensity_\",\r\n \"_Sun_Theta_\",\r\n \"_Sun_Phi_\",\r\n \"_Indirect_Diffuse_\",\r\n \"_Albedo_\",\r\n \"_Specular_\",\r\n \"_Shininess_\",\r\n \"_Sharpness_\",\r\n \"_Subsurface_\",\r\n \"_Left_Color_\",\r\n \"_Right_Color_\",\r\n \"_Reflection_\",\r\n \"_Front_Reflect_\",\r\n \"_Edge_Reflect_\",\r\n \"_Power_\",\r\n \"_Sky_Color_\",\r\n \"_Horizon_Color_\",\r\n \"_Ground_Color_\",\r\n \"_Horizon_Power_\",\r\n \"_Reflection_Map_\",\r\n \"_Indirect_Environment_\",\r\n \"_Width_\",\r\n \"_Fuzz_\",\r\n \"_Min_Fuzz_\",\r\n \"_Clip_Fade_\",\r\n \"_Hue_Shift_\",\r\n \"_Saturation_Shift_\",\r\n \"_Value_Shift_\",\r\n \"_Blob_Position_\",\r\n \"_Blob_Intensity_\",\r\n \"_Blob_Near_Size_\",\r\n \"_Blob_Far_Size_\",\r\n \"_Blob_Near_Distance_\",\r\n \"_Blob_Far_Distance_\",\r\n \"_Blob_Fade_Length_\",\r\n \"_Blob_Pulse_\",\r\n \"_Blob_Fade_\",\r\n \"_Blob_Texture_\",\r\n \"_Blob_Position_2_\",\r\n \"_Blob_Near_Size_2_\",\r\n \"_Blob_Pulse_2_\",\r\n \"_Blob_Fade_2_\",\r\n \"_Left_Index_Pos_\",\r\n \"_Right_Index_Pos_\",\r\n \"_Left_Index_Middle_Pos_\",\r\n \"_Right_Index_Middle_Pos_\",\r\n \"_Decal_\",\r\n \"_Decal_Scale_XY_\",\r\n \"_Decal_Front_Only_\",\r\n \"_Rim_Intensity_\",\r\n \"_Rim_Texture_\",\r\n \"_Rim_Hue_Shift_\",\r\n \"_Rim_Saturation_Shift_\",\r\n \"_Rim_Value_Shift_\",\r\n \"_Iridescence_Intensity_\",\r\n \"_Iridescence_Texture_\",\r\n \"Use_Global_Left_Index\",\r\n \"Use_Global_Right_Index\",\r\n \"Global_Left_Index_Tip_Position\",\r\n \"Global_Right_Index_Tip_Position\",\r\n \"Global_Left_Thumb_Tip_Position\",\r\n \"Global_Right_Thumb_Tip_Position\",\r\n \"Global_Left_Index_Middle_Position;\",\r\n \"Global_Right_Index_Middle_Position\",\r\n \"Global_Left_Index_Tip_Proximity\",\r\n \"Global_Right_Index_Tip_Proximity\",\r\n ];\r\n const samplers: string[] = [\"_Rim_Texture_\", \"_Iridescence_Texture_\"];\r\n const uniformBuffers: string[] = [];\r\n\r\n PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4,\r\n });\r\n\r\n subMesh.setEffect(\r\n scene.getEngine().createEffect(\r\n shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 },\r\n },\r\n engine\r\n ),\r\n defines,\r\n this._materialContext\r\n );\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n drawWrapper._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLSliderBarMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Bevel_Front_\", this.bevelFront);\r\n this._activeEffect.setFloat(\"_Bevel_Front_Stretch_\", this.bevelFrontStretch);\r\n this._activeEffect.setFloat(\"_Bevel_Back_\", this.bevelBack);\r\n this._activeEffect.setFloat(\"_Bevel_Back_Stretch_\", this.bevelBackStretch);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Bulge\"\r\n this._activeEffect.setFloat(\"_Bulge_Enabled_\", this.bulgeEnabled ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Bulge_Height_\", this.bulgeHeight);\r\n this._activeEffect.setFloat(\"_Bulge_Radius_\", this.bulgeRadius);\r\n\r\n // \"Sun\"\r\n this._activeEffect.setFloat(\"_Sun_Intensity_\", this.sunIntensity);\r\n this._activeEffect.setFloat(\"_Sun_Theta_\", this.sunTheta);\r\n this._activeEffect.setFloat(\"_Sun_Phi_\", this.sunPhi);\r\n this._activeEffect.setFloat(\"_Indirect_Diffuse_\", this.indirectDiffuse);\r\n\r\n // \"Diffuse And Specular\"\r\n this._activeEffect.setDirectColor4(\"_Albedo_\", this.albedo);\r\n this._activeEffect.setFloat(\"_Specular_\", this.specular);\r\n this._activeEffect.setFloat(\"_Shininess_\", this.shininess);\r\n this._activeEffect.setFloat(\"_Sharpness_\", this.sharpness);\r\n this._activeEffect.setFloat(\"_Subsurface_\", this.subsurface);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Left_Color_\", this.leftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Right_Color_\", this.rightGradientColor);\r\n\r\n // \"Reflection\"\r\n this._activeEffect.setFloat(\"_Reflection_\", this.reflection);\r\n this._activeEffect.setFloat(\"_Front_Reflect_\", this.frontReflect);\r\n this._activeEffect.setFloat(\"_Edge_Reflect_\", this.edgeReflect);\r\n this._activeEffect.setFloat(\"_Power_\", this.power);\r\n\r\n // \"Sky Environment\"\r\n //define SKY_ENABLED true;\r\n this._activeEffect.setDirectColor4(\"_Sky_Color_\", this.skyColor);\r\n this._activeEffect.setDirectColor4(\"_Horizon_Color_\", this.horizonColor);\r\n this._activeEffect.setDirectColor4(\"_Ground_Color_\", this.groundColor);\r\n this._activeEffect.setFloat(\"_Horizon_Power_\", this.horizonPower);\r\n\r\n // \"Mapped Environment\"\r\n //define ENV_ENABLE false;\r\n this._activeEffect.setTexture(\"_Reflection_Map_\", this._reflectionMapTexture);\r\n this._activeEffect.setTexture(\"_Indirect_Environment_\", this._indirectEnvTexture);\r\n\r\n // \"FingerOcclusion\"\r\n //define OCCLUSION_ENABLED false;\r\n this._activeEffect.setFloat(\"_Width_\", this.width);\r\n this._activeEffect.setFloat(\"_Fuzz_\", this.fuzz);\r\n this._activeEffect.setFloat(\"_Min_Fuzz_\", this.minFuzz);\r\n this._activeEffect.setFloat(\"_Clip_Fade_\", this.clipFade);\r\n\r\n // \"View Based Color Shift\"\r\n this._activeEffect.setFloat(\"_Hue_Shift_\", this.hueShift);\r\n this._activeEffect.setFloat(\"_Saturation_Shift_\", this.saturationShift);\r\n this._activeEffect.setFloat(\"_Value_Shift_\", this.valueShift);\r\n\r\n // \"Blob\"\r\n //define BLOB_ENABLE false;\r\n this._activeEffect.setVector3(\"_Blob_Position_\", this.blobPosition);\r\n this._activeEffect.setFloat(\"_Blob_Intensity_\", this.blobIntensity);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_\", this.blobNearSize);\r\n this._activeEffect.setFloat(\"_Blob_Far_Size_\", this.blobFarSize);\r\n this._activeEffect.setFloat(\"_Blob_Near_Distance_\", this.blobNearDistance);\r\n this._activeEffect.setFloat(\"_Blob_Far_Distance_\", this.blobFarDistance);\r\n this._activeEffect.setFloat(\"_Blob_Fade_Length_\", this.blobFadeLength);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_\", this.blobPulse);\r\n this._activeEffect.setFloat(\"_Blob_Fade_\", this.blobFade);\r\n\r\n // \"Blob Texture\"\r\n this._activeEffect.setTexture(\"_Blob_Texture_\", this.blobTexture);\r\n\r\n // \"Blob 2\"\r\n //define BLOB_ENABLE_2 true;\r\n this._activeEffect.setVector3(\"_Blob_Position_2_\", this.blobPosition2);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_2_\", this.blobNearSize2);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_2_\", this.blobPulse2);\r\n this._activeEffect.setFloat(\"_Blob_Fade_2_\", this.blobFade2);\r\n\r\n // \"Finger Positions\"\r\n this._activeEffect.setVector3(\"_Left_Index_Pos_\", this.leftIndexPosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Pos_\", this.rightIndexPosition);\r\n this._activeEffect.setVector3(\"_Left_Index_Middle_Pos_\", this.leftIndexMiddlePosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Middle_Pos_\", this.rightIndexMiddlePosition);\r\n\r\n // \"Decal Texture\"\r\n //define DECAL_ENABLE false;\r\n this._activeEffect.setTexture(\"_Decal_\", this._decalTexture);\r\n this._activeEffect.setVector2(\"_Decal_Scale_XY_\", this.decalScaleXY);\r\n this._activeEffect.setFloat(\"_Decal_Front_Only_\", this.decalFrontOnly ? 1.0 : 0.0);\r\n\r\n // \"Rim Light\"\r\n this._activeEffect.setFloat(\"_Rim_Intensity_\", this.rimIntensity);\r\n this._activeEffect.setTexture(\"_Rim_Texture_\", this._blueGradientTexture);\r\n this._activeEffect.setFloat(\"_Rim_Hue_Shift_\", this.rimHueShift);\r\n this._activeEffect.setFloat(\"_Rim_Saturation_Shift_\", this.rimSaturationShift);\r\n this._activeEffect.setFloat(\"_Rim_Value_Shift_\", this.rimValueShift);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLED true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setTexture(\"_Iridescence_Texture_\", this._blueGradientTexture);\r\n\r\n // Global inputs\r\n this._activeEffect.setFloat(\"Use_Global_Left_Index\", this.useGlobalLeftIndex);\r\n this._activeEffect.setFloat(\"Use_Global_Right_Index\", this.useGlobalRightIndex);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Tip_Position\", this.globalLeftIndexTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Tip_Position\", this.globaRightIndexTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Thumb_Tip_Position\", this.globalLeftThumbTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Thumb_Tip_Position\", this.globalRightThumbTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Middle_Position\", this.globalLeftIndexMiddlePosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Middle_Position\", this.globalRightIndexMiddlePosition);\r\n\r\n this._activeEffect.setFloat(\"Global_Left_Index_Tip_Proximity\", this.globalLeftIndexTipProximity);\r\n this._activeEffect.setFloat(\"Global_Right_Index_Tip_Proximity\", this.globalRightIndexTipProximity);\r\n\r\n this._afterBind(mesh, this._activeEffect, subMesh);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n this._reflectionMapTexture.dispose();\r\n this._indirectEnvTexture.dispose();\r\n this._blueGradientTexture.dispose();\r\n this._decalTexture.dispose();\r\n }\r\n\r\n public clone(name: string): MRDLSliderBarMaterial {\r\n return SerializationHelper.Clone(() => new MRDLSliderBarMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLSliderBarMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLSliderBarMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderBarMaterial {\r\n return SerializationHelper.Parse(() => new MRDLSliderBarMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLSliderBarMaterial\", MRDLSliderBarMaterial);\r\n"]}
@@ -1,5 +1,6 @@
1
1
  import { __decorate } from "@babylonjs/core/tslib.es6.js";
2
- import { SerializationHelper, serialize } from "@babylonjs/core/Misc/decorators.js";
2
+ import { serialize } from "@babylonjs/core/Misc/decorators.js";
3
+ import { SerializationHelper } from "@babylonjs/core/Misc/decorators.serialization.js";
3
4
  import { Vector2, Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
4
5
  import { Texture } from "@babylonjs/core/Materials/Textures/texture.js";
5
6
  import { MaterialDefines } from "@babylonjs/core/Materials/materialDefines.js";
@@ -1 +1 @@
1
- {"version":3,"file":"mrdlSliderThumbMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlSliderThumbMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nimport type { Nullable } from \"core/types\";\r\nimport { SerializationHelper, serialize } from \"core/Misc/decorators\";\r\nimport type { Matrix } from \"core/Maths/math.vector\";\r\nimport { Vector2, Vector3, Vector4 } from \"core/Maths/math.vector\";\r\nimport type { IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport type { BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport type { IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\nimport type { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport type { SubMesh } from \"core/Meshes/subMesh\";\r\nimport type { Mesh } from \"core/Meshes/mesh\";\r\nimport type { Scene } from \"core/scene\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { Constants } from \"core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlSliderThumb.fragment\";\r\nimport \"./shaders/mrdlSliderThumb.vertex\";\r\nimport { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from \"core/Materials/materialHelper.functions\";\r\n\r\n/** @internal */\r\nclass MRDLSliderThumbMaterialDefines extends MaterialDefines {\r\n /*\r\n \"SKY_ENABLED\", \"BLOB_ENABLE_2\", \"IRIDESCENCE_ENABLED\"\r\n */\r\n public SKY_ENABLED = true;\r\n public BLOB_ENABLE_2 = true;\r\n public IRIDESCENCE_ENABLED = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this._needUVs = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render Slider Thumb material with MRDL\r\n */\r\nexport class MRDLSliderThumbMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static BLUE_GRADIENT_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-blue-gradient.png\";\r\n private _blueGradientTexture: Texture;\r\n private _decalTexture: Texture;\r\n private _reflectionMapTexture: Texture;\r\n private _indirectEnvTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner Radius on the slider thumb.\r\n */\r\n @serialize()\r\n public radius = 0.157;\r\n\r\n /**\r\n * Gets or sets the Bevel Front on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelFront = 0.065;\r\n\r\n /**\r\n * Gets or sets the Bevel Front Stretch on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelFrontStretch = 0.077;\r\n\r\n /**\r\n * Gets or sets the Bevel Back on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelBack = 0.031;\r\n\r\n /**\r\n * Gets or sets the Bevel Back Stretch on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelBackStretch = 0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /**\r\n * Gets or sets whether Bulge is enabled.\r\n * Default is false.\r\n */\r\n @serialize()\r\n public bulgeEnabled = false;\r\n\r\n /**\r\n * Gets or sets the Bulge Height.\r\n */\r\n @serialize()\r\n public bulgeHeight = -0.323;\r\n\r\n /**\r\n * Gets or sets the Bulge Radius.\r\n */\r\n @serialize()\r\n public bulgeRadius = 0.73;\r\n\r\n /**\r\n * Gets or sets the Sun Intensity.\r\n */\r\n @serialize()\r\n public sunIntensity = 2;\r\n\r\n /**\r\n * Gets or sets the Sun Theta.\r\n */\r\n @serialize()\r\n public sunTheta = 0.937;\r\n\r\n /**\r\n * Gets or sets the Sun Phi.\r\n */\r\n @serialize()\r\n public sunPhi = 0.555;\r\n\r\n /**\r\n * Gets or sets the Indirect Diffuse.\r\n */\r\n @serialize()\r\n public indirectDiffuse = 1;\r\n\r\n /**\r\n * Gets or sets the base albedo.\r\n */\r\n @serialize()\r\n public albedo = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the Specular value.\r\n */\r\n @serialize()\r\n public specular = 0;\r\n\r\n /**\r\n * Gets or sets the Shininess value.\r\n */\r\n @serialize()\r\n public shininess = 10;\r\n\r\n /**\r\n * Gets or sets the Sharpness value.\r\n */\r\n @serialize()\r\n public sharpness = 0;\r\n\r\n /**\r\n * Gets or sets the Subsurface value.\r\n */\r\n @serialize()\r\n public subsurface = 0.31;\r\n\r\n /**\r\n * Gets or sets the left gradient color.\r\n */\r\n @serialize()\r\n public leftGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the right gradient color.\r\n */\r\n @serialize()\r\n public rightGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the reflection value.\r\n */\r\n @serialize()\r\n public reflection = 0.749;\r\n\r\n /**\r\n * Gets or sets the front reflect value.\r\n */\r\n @serialize()\r\n public frontReflect = 0;\r\n\r\n /**\r\n * Gets or sets the edge reflect value.\r\n */\r\n @serialize()\r\n public edgeReflect = 0.09;\r\n\r\n /**\r\n * Gets or sets the power value.\r\n */\r\n @serialize()\r\n public power = 8.1;\r\n\r\n /**\r\n * Gets or sets the sky color.\r\n */\r\n @serialize()\r\n public skyColor = new Color4(0.0117647, 0.960784, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon color.\r\n */\r\n @serialize()\r\n public horizonColor = new Color4(0.0117647, 0.333333, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the ground color.\r\n */\r\n @serialize()\r\n public groundColor = new Color4(0, 0.254902, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon power value.\r\n */\r\n @serialize()\r\n public horizonPower = 1;\r\n\r\n /**\r\n * Gets or sets the finger occlusion width value.\r\n */\r\n @serialize()\r\n public width = 0.02;\r\n\r\n /**\r\n * Gets or sets the finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public fuzz = 0.5;\r\n\r\n /**\r\n * Gets or sets the minimum finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public minFuzz = 0.001;\r\n\r\n /**\r\n * Gets or sets the finger occlusion clip fade value.\r\n */\r\n @serialize()\r\n public clipFade = 0.01;\r\n\r\n /**\r\n * Gets or sets the hue shift value.\r\n */\r\n @serialize()\r\n public hueShift = 0;\r\n\r\n /**\r\n * Gets or sets the saturation shift value.\r\n */\r\n @serialize()\r\n public saturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the value shift.\r\n */\r\n @serialize()\r\n public valueShift = 0;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition = new Vector3(0, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the intensity of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobIntensity = 0.5;\r\n\r\n /**\r\n * Gets or sets the near size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobNearSize = 0.01;\r\n\r\n /**\r\n * Gets or sets the far size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobFarSize = 0.03;\r\n\r\n /**\r\n * Gets or sets the distance considered \"near\" to the mesh, which controls the size of the hover glow effect (see blobNearSize).\r\n */\r\n @serialize()\r\n public blobNearDistance = 0;\r\n\r\n /**\r\n * Gets or sets the distance considered \"far\" from the mesh, which controls the size of the hover glow effect (see blobFarSize).\r\n */\r\n @serialize()\r\n public blobFarDistance = 0.08;\r\n\r\n /**\r\n * Gets or sets the length of the hover glow effect fade.\r\n */\r\n @serialize()\r\n public blobFadeLength = 0.576;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the left pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the left pointer (0.0 - 1.0). Default is 0.\r\n */\r\n @serialize()\r\n public blobFade = 1;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition2 = new Vector3(0.2, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the size of the hover glow effect when the right pointer is considered \"near\" to the mesh (see blobNearDistance).\r\n */\r\n @serialize()\r\n public blobNearSize2 = 0.01;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the right pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse2 = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the right pointer (0.0 - 1.0). Default is 1.\r\n */\r\n @serialize()\r\n public blobFade2 = 1;\r\n\r\n /**\r\n * Gets or sets the texture of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobTexture = new Texture(\"\", this.getScene());\r\n\r\n /**\r\n * Gets or sets the finger position for left index.\r\n */\r\n @serialize()\r\n public leftIndexPosition = new Vector3(0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the finger position for right index.\r\n */\r\n @serialize()\r\n public rightIndexPosition = new Vector3(-1, -1, -1);\r\n\r\n /**\r\n * Gets or sets the finger position for left index middle position.\r\n */\r\n @serialize()\r\n public leftIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the finger position for right index middle position.\r\n */\r\n @serialize()\r\n public rightIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the Decal Scale for XY.\r\n */\r\n @serialize()\r\n public decalScaleXY = new Vector2(1.5, 1.5);\r\n\r\n /**\r\n * Gets or sets decalFrontOnly\r\n * Default is true\r\n */\r\n @serialize()\r\n public decalFrontOnly = true;\r\n\r\n /**\r\n * Gets or sets the Rim Light intensity.\r\n */\r\n @serialize()\r\n public rimIntensity = 0.287;\r\n\r\n /**\r\n * Gets or sets the Rim Light hue shift value.\r\n */\r\n @serialize()\r\n public rimHueShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light saturation shift value.\r\n */\r\n @serialize()\r\n public rimSaturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light value shift.\r\n */\r\n @serialize()\r\n public rimValueShift = -1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalLeftIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalRightIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globaRightIndexTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftThumbTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightThumbTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexMiddlePosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexMiddlePosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n this._blueGradientTexture = new Texture(MRDLSliderThumbMaterial.BLUE_GRADIENT_TEXTURE_URL, scene, true, false, Texture.NEAREST_SAMPLINGMODE);\r\n this._decalTexture = new Texture(\"\", this.getScene());\r\n this._reflectionMapTexture = new Texture(\"\", this.getScene());\r\n this._indirectEnvTexture = new Texture(\"\", this.getScene());\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean {\r\n const drawWrapper = subMesh._drawWrapper;\r\n\r\n if (this.isFrozen) {\r\n if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLSliderThumbMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLSliderThumbMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlSliderThumb\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Radius_\",\r\n \"_Bevel_Front_\",\r\n \"_Bevel_Front_Stretch_\",\r\n \"_Bevel_Back_\",\r\n \"_Bevel_Back_Stretch_\",\r\n \"_Radius_Top_Left_\",\r\n \"_Radius_Top_Right_\",\r\n \"_Radius_Bottom_Left_\",\r\n \"_Radius_Bottom_Right_\",\r\n \"_Bulge_Enabled_\",\r\n \"_Bulge_Height_\",\r\n \"_Bulge_Radius_\",\r\n \"_Sun_Intensity_\",\r\n \"_Sun_Theta_\",\r\n \"_Sun_Phi_\",\r\n \"_Indirect_Diffuse_\",\r\n \"_Albedo_\",\r\n \"_Specular_\",\r\n \"_Shininess_\",\r\n \"_Sharpness_\",\r\n \"_Subsurface_\",\r\n \"_Left_Color_\",\r\n \"_Right_Color_\",\r\n \"_Reflection_\",\r\n \"_Front_Reflect_\",\r\n \"_Edge_Reflect_\",\r\n \"_Power_\",\r\n \"_Sky_Color_\",\r\n \"_Horizon_Color_\",\r\n \"_Ground_Color_\",\r\n \"_Horizon_Power_\",\r\n \"_Reflection_Map_\",\r\n \"_Indirect_Environment_\",\r\n \"_Width_\",\r\n \"_Fuzz_\",\r\n \"_Min_Fuzz_\",\r\n \"_Clip_Fade_\",\r\n \"_Hue_Shift_\",\r\n \"_Saturation_Shift_\",\r\n \"_Value_Shift_\",\r\n \"_Blob_Position_\",\r\n \"_Blob_Intensity_\",\r\n \"_Blob_Near_Size_\",\r\n \"_Blob_Far_Size_\",\r\n \"_Blob_Near_Distance_\",\r\n \"_Blob_Far_Distance_\",\r\n \"_Blob_Fade_Length_\",\r\n \"_Blob_Pulse_\",\r\n \"_Blob_Fade_\",\r\n \"_Blob_Texture_\",\r\n \"_Blob_Position_2_\",\r\n \"_Blob_Near_Size_2_\",\r\n \"_Blob_Pulse_2_\",\r\n \"_Blob_Fade_2_\",\r\n \"_Left_Index_Pos_\",\r\n \"_Right_Index_Pos_\",\r\n \"_Left_Index_Middle_Pos_\",\r\n \"_Right_Index_Middle_Pos_\",\r\n \"_Decal_\",\r\n \"_Decal_Scale_XY_\",\r\n \"_Decal_Front_Only_\",\r\n \"_Rim_Intensity_\",\r\n \"_Rim_Texture_\",\r\n \"_Rim_Hue_Shift_\",\r\n \"_Rim_Saturation_Shift_\",\r\n \"_Rim_Value_Shift_\",\r\n \"_Iridescence_Intensity_\",\r\n \"_Iridescence_Texture_\",\r\n \"Use_Global_Left_Index\",\r\n \"Use_Global_Right_Index\",\r\n \"Global_Left_Index_Tip_Position\",\r\n \"Global_Right_Index_Tip_Position\",\r\n \"Global_Left_Thumb_Tip_Position\",\r\n \"Global_Right_Thumb_Tip_Position\",\r\n \"Global_Left_Index_Middle_Position;\",\r\n \"Global_Right_Index_Middle_Position\",\r\n \"Global_Left_Index_Tip_Proximity\",\r\n \"Global_Right_Index_Tip_Proximity\",\r\n ];\r\n const samplers: string[] = [\"_Rim_Texture_\", \"_Iridescence_Texture_\"];\r\n const uniformBuffers: string[] = [];\r\n\r\n PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4,\r\n });\r\n\r\n subMesh.setEffect(\r\n scene.getEngine().createEffect(\r\n shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 },\r\n },\r\n engine\r\n ),\r\n defines\r\n );\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n drawWrapper._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLSliderThumbMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Bevel_Front_\", this.bevelFront);\r\n this._activeEffect.setFloat(\"_Bevel_Front_Stretch_\", this.bevelFrontStretch);\r\n this._activeEffect.setFloat(\"_Bevel_Back_\", this.bevelBack);\r\n this._activeEffect.setFloat(\"_Bevel_Back_Stretch_\", this.bevelBackStretch);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Bulge\"\r\n this._activeEffect.setFloat(\"_Bulge_Enabled_\", this.bulgeEnabled ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Bulge_Height_\", this.bulgeHeight);\r\n this._activeEffect.setFloat(\"_Bulge_Radius_\", this.bulgeRadius);\r\n\r\n // \"Sun\"\r\n this._activeEffect.setFloat(\"_Sun_Intensity_\", this.sunIntensity);\r\n this._activeEffect.setFloat(\"_Sun_Theta_\", this.sunTheta);\r\n this._activeEffect.setFloat(\"_Sun_Phi_\", this.sunPhi);\r\n this._activeEffect.setFloat(\"_Indirect_Diffuse_\", this.indirectDiffuse);\r\n\r\n // \"Diffuse And Specular\"\r\n this._activeEffect.setDirectColor4(\"_Albedo_\", this.albedo);\r\n this._activeEffect.setFloat(\"_Specular_\", this.specular);\r\n this._activeEffect.setFloat(\"_Shininess_\", this.shininess);\r\n this._activeEffect.setFloat(\"_Sharpness_\", this.sharpness);\r\n this._activeEffect.setFloat(\"_Subsurface_\", this.subsurface);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Left_Color_\", this.leftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Right_Color_\", this.rightGradientColor);\r\n\r\n // \"Reflection\"\r\n this._activeEffect.setFloat(\"_Reflection_\", this.reflection);\r\n this._activeEffect.setFloat(\"_Front_Reflect_\", this.frontReflect);\r\n this._activeEffect.setFloat(\"_Edge_Reflect_\", this.edgeReflect);\r\n this._activeEffect.setFloat(\"_Power_\", this.power);\r\n\r\n // \"Sky Environment\"\r\n //define SKY_ENABLED true;\r\n this._activeEffect.setDirectColor4(\"_Sky_Color_\", this.skyColor);\r\n this._activeEffect.setDirectColor4(\"_Horizon_Color_\", this.horizonColor);\r\n this._activeEffect.setDirectColor4(\"_Ground_Color_\", this.groundColor);\r\n this._activeEffect.setFloat(\"_Horizon_Power_\", this.horizonPower);\r\n\r\n // \"Mapped Environment\"\r\n //define ENV_ENABLE false;\r\n this._activeEffect.setTexture(\"_Reflection_Map_\", this._reflectionMapTexture);\r\n this._activeEffect.setTexture(\"_Indirect_Environment_\", this._indirectEnvTexture);\r\n\r\n // \"FingerOcclusion\"\r\n //define OCCLUSION_ENABLED false;\r\n this._activeEffect.setFloat(\"_Width_\", this.width);\r\n this._activeEffect.setFloat(\"_Fuzz_\", this.fuzz);\r\n this._activeEffect.setFloat(\"_Min_Fuzz_\", this.minFuzz);\r\n this._activeEffect.setFloat(\"_Clip_Fade_\", this.clipFade);\r\n\r\n // \"View Based Color Shift\"\r\n this._activeEffect.setFloat(\"_Hue_Shift_\", this.hueShift);\r\n this._activeEffect.setFloat(\"_Saturation_Shift_\", this.saturationShift);\r\n this._activeEffect.setFloat(\"_Value_Shift_\", this.valueShift);\r\n\r\n // \"Blob\"\r\n //define BLOB_ENABLE false;\r\n this._activeEffect.setVector3(\"_Blob_Position_\", this.blobPosition);\r\n this._activeEffect.setFloat(\"_Blob_Intensity_\", this.blobIntensity);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_\", this.blobNearSize);\r\n this._activeEffect.setFloat(\"_Blob_Far_Size_\", this.blobFarSize);\r\n this._activeEffect.setFloat(\"_Blob_Near_Distance_\", this.blobNearDistance);\r\n this._activeEffect.setFloat(\"_Blob_Far_Distance_\", this.blobFarDistance);\r\n this._activeEffect.setFloat(\"_Blob_Fade_Length_\", this.blobFadeLength);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_\", this.blobPulse);\r\n this._activeEffect.setFloat(\"_Blob_Fade_\", this.blobFade);\r\n\r\n // \"Blob Texture\"\r\n this._activeEffect.setTexture(\"_Blob_Texture_\", this.blobTexture);\r\n\r\n // \"Blob 2\"\r\n //define BLOB_ENABLE_2 true;\r\n this._activeEffect.setVector3(\"_Blob_Position_2_\", this.blobPosition2);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_2_\", this.blobNearSize2);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_2_\", this.blobPulse2);\r\n this._activeEffect.setFloat(\"_Blob_Fade_2_\", this.blobFade2);\r\n\r\n // \"Finger Positions\"\r\n this._activeEffect.setVector3(\"_Left_Index_Pos_\", this.leftIndexPosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Pos_\", this.rightIndexPosition);\r\n this._activeEffect.setVector3(\"_Left_Index_Middle_Pos_\", this.leftIndexMiddlePosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Middle_Pos_\", this.rightIndexMiddlePosition);\r\n\r\n // \"Decal Texture\"\r\n //define DECAL_ENABLE false;\r\n this._activeEffect.setTexture(\"_Decal_\", this._decalTexture);\r\n this._activeEffect.setVector2(\"_Decal_Scale_XY_\", this.decalScaleXY);\r\n this._activeEffect.setFloat(\"_Decal_Front_Only_\", this.decalFrontOnly ? 1.0 : 0.0);\r\n\r\n // \"Rim Light\"\r\n this._activeEffect.setFloat(\"_Rim_Intensity_\", this.rimIntensity);\r\n this._activeEffect.setTexture(\"_Rim_Texture_\", this._blueGradientTexture);\r\n this._activeEffect.setFloat(\"_Rim_Hue_Shift_\", this.rimHueShift);\r\n this._activeEffect.setFloat(\"_Rim_Saturation_Shift_\", this.rimSaturationShift);\r\n this._activeEffect.setFloat(\"_Rim_Value_Shift_\", this.rimValueShift);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLED true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setTexture(\"_Iridescence_Texture_\", this._blueGradientTexture);\r\n\r\n // Global inputs\r\n this._activeEffect.setFloat(\"Use_Global_Left_Index\", this.useGlobalLeftIndex);\r\n this._activeEffect.setFloat(\"Use_Global_Right_Index\", this.useGlobalRightIndex);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Tip_Position\", this.globalLeftIndexTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Tip_Position\", this.globaRightIndexTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Thumb_Tip_Position\", this.globalLeftThumbTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Thumb_Tip_Position\", this.globalRightThumbTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Middle_Position\", this.globalLeftIndexMiddlePosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Middle_Position\", this.globalRightIndexMiddlePosition);\r\n\r\n this._activeEffect.setFloat(\"Global_Left_Index_Tip_Proximity\", this.globalLeftIndexTipProximity);\r\n this._activeEffect.setFloat(\"Global_Right_Index_Tip_Proximity\", this.globalRightIndexTipProximity);\r\n\r\n this._afterBind(mesh, this._activeEffect, subMesh);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n this._reflectionMapTexture.dispose();\r\n this._indirectEnvTexture.dispose();\r\n this._blueGradientTexture.dispose();\r\n this._decalTexture.dispose();\r\n }\r\n\r\n public clone(name: string): MRDLSliderThumbMaterial {\r\n return SerializationHelper.Clone(() => new MRDLSliderThumbMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLSliderThumbMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLSliderThumbMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderThumbMaterial {\r\n return SerializationHelper.Parse(() => new MRDLSliderThumbMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLSliderThumbMaterial\", MRDLSliderThumbMaterial);\r\n"]}
1
+ {"version":3,"file":"mrdlSliderThumbMaterial.js","sourceRoot":"","sources":["../../../../../../dev/gui/src/3D/materials/mrdl/mrdlSliderThumbMaterial.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nimport type { Nullable } from \"core/types\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\nimport { SerializationHelper } from \"core/Misc/decorators.serialization\";\r\nimport type { Matrix } from \"core/Maths/math.vector\";\r\nimport { Vector2, Vector3, Vector4 } from \"core/Maths/math.vector\";\r\nimport type { IAnimatable } from \"core/Animations/animatable.interface\";\r\nimport type { BaseTexture } from \"core/Materials/Textures/baseTexture\";\r\nimport { Texture } from \"core/Materials/Textures/texture\";\r\nimport { MaterialDefines } from \"core/Materials/materialDefines\";\r\nimport type { IEffectCreationOptions } from \"core/Materials/effect\";\r\nimport { PushMaterial } from \"core/Materials/pushMaterial\";\r\nimport { VertexBuffer } from \"core/Buffers/buffer\";\r\nimport type { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\nimport type { SubMesh } from \"core/Meshes/subMesh\";\r\nimport type { Mesh } from \"core/Meshes/mesh\";\r\nimport type { Scene } from \"core/scene\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Color4 } from \"core/Maths/math.color\";\r\nimport { EffectFallbacks } from \"core/Materials/effectFallbacks\";\r\nimport { Constants } from \"core/Engines/constants\";\r\n\r\nimport \"./shaders/mrdlSliderThumb.fragment\";\r\nimport \"./shaders/mrdlSliderThumb.vertex\";\r\nimport { HandleFallbacksForShadows, PrepareAttributesForInstances, PrepareDefinesForAttributes, PrepareUniformsAndSamplersList } from \"core/Materials/materialHelper.functions\";\r\n\r\n/** @internal */\r\nclass MRDLSliderThumbMaterialDefines extends MaterialDefines {\r\n /*\r\n \"SKY_ENABLED\", \"BLOB_ENABLE_2\", \"IRIDESCENCE_ENABLED\"\r\n */\r\n public SKY_ENABLED = true;\r\n public BLOB_ENABLE_2 = true;\r\n public IRIDESCENCE_ENABLED = true;\r\n\r\n constructor() {\r\n super();\r\n this._needNormals = true;\r\n this._needUVs = true;\r\n this.rebuild();\r\n }\r\n}\r\n\r\n/**\r\n * Class used to render Slider Thumb material with MRDL\r\n */\r\nexport class MRDLSliderThumbMaterial extends PushMaterial {\r\n /**\r\n * URL pointing to the texture used to define the coloring for the Iridescent Map effect.\r\n */\r\n public static BLUE_GRADIENT_TEXTURE_URL = \"https://assets.babylonjs.com/meshes/MRTK/MRDL/mrtk-mrdl-blue-gradient.png\";\r\n private _blueGradientTexture: Texture;\r\n private _decalTexture: Texture;\r\n private _reflectionMapTexture: Texture;\r\n private _indirectEnvTexture: Texture;\r\n\r\n /**\r\n * Gets or sets the corner Radius on the slider thumb.\r\n */\r\n @serialize()\r\n public radius = 0.157;\r\n\r\n /**\r\n * Gets or sets the Bevel Front on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelFront = 0.065;\r\n\r\n /**\r\n * Gets or sets the Bevel Front Stretch on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelFrontStretch = 0.077;\r\n\r\n /**\r\n * Gets or sets the Bevel Back on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelBack = 0.031;\r\n\r\n /**\r\n * Gets or sets the Bevel Back Stretch on the slider thumb.\r\n */\r\n @serialize()\r\n public bevelBackStretch = 0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusTopRight = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomLeft = 1.0;\r\n\r\n /**\r\n * Gets or sets the top left Radii Multiplier.\r\n */\r\n @serialize()\r\n public radiusBottomRight = 1.0;\r\n\r\n /**\r\n * Gets or sets whether Bulge is enabled.\r\n * Default is false.\r\n */\r\n @serialize()\r\n public bulgeEnabled = false;\r\n\r\n /**\r\n * Gets or sets the Bulge Height.\r\n */\r\n @serialize()\r\n public bulgeHeight = -0.323;\r\n\r\n /**\r\n * Gets or sets the Bulge Radius.\r\n */\r\n @serialize()\r\n public bulgeRadius = 0.73;\r\n\r\n /**\r\n * Gets or sets the Sun Intensity.\r\n */\r\n @serialize()\r\n public sunIntensity = 2;\r\n\r\n /**\r\n * Gets or sets the Sun Theta.\r\n */\r\n @serialize()\r\n public sunTheta = 0.937;\r\n\r\n /**\r\n * Gets or sets the Sun Phi.\r\n */\r\n @serialize()\r\n public sunPhi = 0.555;\r\n\r\n /**\r\n * Gets or sets the Indirect Diffuse.\r\n */\r\n @serialize()\r\n public indirectDiffuse = 1;\r\n\r\n /**\r\n * Gets or sets the base albedo.\r\n */\r\n @serialize()\r\n public albedo = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the Specular value.\r\n */\r\n @serialize()\r\n public specular = 0;\r\n\r\n /**\r\n * Gets or sets the Shininess value.\r\n */\r\n @serialize()\r\n public shininess = 10;\r\n\r\n /**\r\n * Gets or sets the Sharpness value.\r\n */\r\n @serialize()\r\n public sharpness = 0;\r\n\r\n /**\r\n * Gets or sets the Subsurface value.\r\n */\r\n @serialize()\r\n public subsurface = 0.31;\r\n\r\n /**\r\n * Gets or sets the left gradient color.\r\n */\r\n @serialize()\r\n public leftGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the right gradient color.\r\n */\r\n @serialize()\r\n public rightGradientColor = new Color4(0.0117647, 0.505882, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the reflection value.\r\n */\r\n @serialize()\r\n public reflection = 0.749;\r\n\r\n /**\r\n * Gets or sets the front reflect value.\r\n */\r\n @serialize()\r\n public frontReflect = 0;\r\n\r\n /**\r\n * Gets or sets the edge reflect value.\r\n */\r\n @serialize()\r\n public edgeReflect = 0.09;\r\n\r\n /**\r\n * Gets or sets the power value.\r\n */\r\n @serialize()\r\n public power = 8.1;\r\n\r\n /**\r\n * Gets or sets the sky color.\r\n */\r\n @serialize()\r\n public skyColor = new Color4(0.0117647, 0.960784, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon color.\r\n */\r\n @serialize()\r\n public horizonColor = new Color4(0.0117647, 0.333333, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the ground color.\r\n */\r\n @serialize()\r\n public groundColor = new Color4(0, 0.254902, 0.996078, 1);\r\n\r\n /**\r\n * Gets or sets the horizon power value.\r\n */\r\n @serialize()\r\n public horizonPower = 1;\r\n\r\n /**\r\n * Gets or sets the finger occlusion width value.\r\n */\r\n @serialize()\r\n public width = 0.02;\r\n\r\n /**\r\n * Gets or sets the finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public fuzz = 0.5;\r\n\r\n /**\r\n * Gets or sets the minimum finger occlusion fuzz value.\r\n */\r\n @serialize()\r\n public minFuzz = 0.001;\r\n\r\n /**\r\n * Gets or sets the finger occlusion clip fade value.\r\n */\r\n @serialize()\r\n public clipFade = 0.01;\r\n\r\n /**\r\n * Gets or sets the hue shift value.\r\n */\r\n @serialize()\r\n public hueShift = 0;\r\n\r\n /**\r\n * Gets or sets the saturation shift value.\r\n */\r\n @serialize()\r\n public saturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the value shift.\r\n */\r\n @serialize()\r\n public valueShift = 0;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition = new Vector3(0, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the intensity of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobIntensity = 0.5;\r\n\r\n /**\r\n * Gets or sets the near size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobNearSize = 0.01;\r\n\r\n /**\r\n * Gets or sets the far size of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobFarSize = 0.03;\r\n\r\n /**\r\n * Gets or sets the distance considered \"near\" to the mesh, which controls the size of the hover glow effect (see blobNearSize).\r\n */\r\n @serialize()\r\n public blobNearDistance = 0;\r\n\r\n /**\r\n * Gets or sets the distance considered \"far\" from the mesh, which controls the size of the hover glow effect (see blobFarSize).\r\n */\r\n @serialize()\r\n public blobFarDistance = 0.08;\r\n\r\n /**\r\n * Gets or sets the length of the hover glow effect fade.\r\n */\r\n @serialize()\r\n public blobFadeLength = 0.576;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the left pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the left pointer (0.0 - 1.0). Default is 0.\r\n */\r\n @serialize()\r\n public blobFade = 1;\r\n\r\n /**\r\n * Gets or sets the position of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobPosition2 = new Vector3(0.2, 0, 0.1);\r\n\r\n /**\r\n * Gets or sets the size of the hover glow effect when the right pointer is considered \"near\" to the mesh (see blobNearDistance).\r\n */\r\n @serialize()\r\n public blobNearSize2 = 0.01;\r\n\r\n /**\r\n * Gets or sets the progress of the hover glow effect selection animation corresponding to the right pointer (0.0 - 1.0).\r\n */\r\n @serialize()\r\n public blobPulse2 = 0;\r\n\r\n /**\r\n * Gets or sets the opacity of the hover glow effect corresponding to the right pointer (0.0 - 1.0). Default is 1.\r\n */\r\n @serialize()\r\n public blobFade2 = 1;\r\n\r\n /**\r\n * Gets or sets the texture of the hover glow effect.\r\n */\r\n @serialize()\r\n public blobTexture = new Texture(\"\", this.getScene());\r\n\r\n /**\r\n * Gets or sets the finger position for left index.\r\n */\r\n @serialize()\r\n public leftIndexPosition = new Vector3(0, 0, 1);\r\n\r\n /**\r\n * Gets or sets the finger position for right index.\r\n */\r\n @serialize()\r\n public rightIndexPosition = new Vector3(-1, -1, -1);\r\n\r\n /**\r\n * Gets or sets the finger position for left index middle position.\r\n */\r\n @serialize()\r\n public leftIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the finger position for right index middle position.\r\n */\r\n @serialize()\r\n public rightIndexMiddlePosition = new Vector3(0, 0, 0);\r\n\r\n /**\r\n * Gets or sets the Decal Scale for XY.\r\n */\r\n @serialize()\r\n public decalScaleXY = new Vector2(1.5, 1.5);\r\n\r\n /**\r\n * Gets or sets decalFrontOnly\r\n * Default is true\r\n */\r\n @serialize()\r\n public decalFrontOnly = true;\r\n\r\n /**\r\n * Gets or sets the Rim Light intensity.\r\n */\r\n @serialize()\r\n public rimIntensity = 0.287;\r\n\r\n /**\r\n * Gets or sets the Rim Light hue shift value.\r\n */\r\n @serialize()\r\n public rimHueShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light saturation shift value.\r\n */\r\n @serialize()\r\n public rimSaturationShift = 0;\r\n\r\n /**\r\n * Gets or sets the Rim Light value shift.\r\n */\r\n @serialize()\r\n public rimValueShift = -1;\r\n\r\n /**\r\n * Gets or sets the intensity of the iridescence effect.\r\n */\r\n @serialize()\r\n public iridescenceIntensity = 0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalLeftIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public useGlobalRightIndex = 1.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexTipProximity = 0.0;\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globaRightIndexTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftThumbTipPosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightThumbTipPosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalLeftIndexMiddlePosition = new Vector4(0.5, 0.0, -0.55, 1.0);\r\n\r\n /**\r\n * @internal\r\n */\r\n public globalRightIndexMiddlePosition = new Vector4(0.0, 0.0, 0.0, 1.0);\r\n\r\n constructor(name: string, scene?: Scene) {\r\n super(name, scene);\r\n this.alphaMode = Constants.ALPHA_DISABLE;\r\n this.backFaceCulling = false;\r\n this._blueGradientTexture = new Texture(MRDLSliderThumbMaterial.BLUE_GRADIENT_TEXTURE_URL, scene, true, false, Texture.NEAREST_SAMPLINGMODE);\r\n this._decalTexture = new Texture(\"\", this.getScene());\r\n this._reflectionMapTexture = new Texture(\"\", this.getScene());\r\n this._indirectEnvTexture = new Texture(\"\", this.getScene());\r\n }\r\n\r\n public needAlphaBlending(): boolean {\r\n return false;\r\n }\r\n\r\n public needAlphaTesting(): boolean {\r\n return false;\r\n }\r\n\r\n public getAlphaTestTexture(): Nullable<BaseTexture> {\r\n return null;\r\n }\r\n\r\n // Methods\r\n public isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh): boolean {\r\n const drawWrapper = subMesh._drawWrapper;\r\n\r\n if (this.isFrozen) {\r\n if (drawWrapper.effect && drawWrapper._wasPreviouslyReady) {\r\n return true;\r\n }\r\n }\r\n\r\n if (!subMesh.materialDefines) {\r\n subMesh.materialDefines = new MRDLSliderThumbMaterialDefines();\r\n }\r\n\r\n const defines = <MRDLSliderThumbMaterialDefines>subMesh.materialDefines;\r\n const scene = this.getScene();\r\n\r\n if (this._isReadyForSubMesh(subMesh)) {\r\n return true;\r\n }\r\n\r\n const engine = scene.getEngine();\r\n\r\n // Attribs\r\n PrepareDefinesForAttributes(mesh, defines, false, false);\r\n\r\n // Get correct effect\r\n if (defines.isDirty) {\r\n defines.markAsProcessed();\r\n\r\n scene.resetCachedMaterial();\r\n\r\n // Fallbacks\r\n const fallbacks = new EffectFallbacks();\r\n if (defines.FOG) {\r\n fallbacks.addFallback(1, \"FOG\");\r\n }\r\n\r\n HandleFallbacksForShadows(defines, fallbacks);\r\n\r\n defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;\r\n\r\n //Attributes\r\n const attribs = [VertexBuffer.PositionKind];\r\n\r\n if (defines.NORMAL) {\r\n attribs.push(VertexBuffer.NormalKind);\r\n }\r\n\r\n if (defines.UV1) {\r\n attribs.push(VertexBuffer.UVKind);\r\n }\r\n\r\n if (defines.UV2) {\r\n attribs.push(VertexBuffer.UV2Kind);\r\n }\r\n\r\n if (defines.VERTEXCOLOR) {\r\n attribs.push(VertexBuffer.ColorKind);\r\n }\r\n\r\n if (defines.TANGENT) {\r\n attribs.push(VertexBuffer.TangentKind);\r\n }\r\n\r\n PrepareAttributesForInstances(attribs, defines);\r\n\r\n // Legacy browser patch\r\n const shaderName = \"mrdlSliderThumb\";\r\n const join = defines.toString();\r\n\r\n const uniforms = [\r\n \"world\",\r\n \"viewProjection\",\r\n \"cameraPosition\",\r\n \"_Radius_\",\r\n \"_Bevel_Front_\",\r\n \"_Bevel_Front_Stretch_\",\r\n \"_Bevel_Back_\",\r\n \"_Bevel_Back_Stretch_\",\r\n \"_Radius_Top_Left_\",\r\n \"_Radius_Top_Right_\",\r\n \"_Radius_Bottom_Left_\",\r\n \"_Radius_Bottom_Right_\",\r\n \"_Bulge_Enabled_\",\r\n \"_Bulge_Height_\",\r\n \"_Bulge_Radius_\",\r\n \"_Sun_Intensity_\",\r\n \"_Sun_Theta_\",\r\n \"_Sun_Phi_\",\r\n \"_Indirect_Diffuse_\",\r\n \"_Albedo_\",\r\n \"_Specular_\",\r\n \"_Shininess_\",\r\n \"_Sharpness_\",\r\n \"_Subsurface_\",\r\n \"_Left_Color_\",\r\n \"_Right_Color_\",\r\n \"_Reflection_\",\r\n \"_Front_Reflect_\",\r\n \"_Edge_Reflect_\",\r\n \"_Power_\",\r\n \"_Sky_Color_\",\r\n \"_Horizon_Color_\",\r\n \"_Ground_Color_\",\r\n \"_Horizon_Power_\",\r\n \"_Reflection_Map_\",\r\n \"_Indirect_Environment_\",\r\n \"_Width_\",\r\n \"_Fuzz_\",\r\n \"_Min_Fuzz_\",\r\n \"_Clip_Fade_\",\r\n \"_Hue_Shift_\",\r\n \"_Saturation_Shift_\",\r\n \"_Value_Shift_\",\r\n \"_Blob_Position_\",\r\n \"_Blob_Intensity_\",\r\n \"_Blob_Near_Size_\",\r\n \"_Blob_Far_Size_\",\r\n \"_Blob_Near_Distance_\",\r\n \"_Blob_Far_Distance_\",\r\n \"_Blob_Fade_Length_\",\r\n \"_Blob_Pulse_\",\r\n \"_Blob_Fade_\",\r\n \"_Blob_Texture_\",\r\n \"_Blob_Position_2_\",\r\n \"_Blob_Near_Size_2_\",\r\n \"_Blob_Pulse_2_\",\r\n \"_Blob_Fade_2_\",\r\n \"_Left_Index_Pos_\",\r\n \"_Right_Index_Pos_\",\r\n \"_Left_Index_Middle_Pos_\",\r\n \"_Right_Index_Middle_Pos_\",\r\n \"_Decal_\",\r\n \"_Decal_Scale_XY_\",\r\n \"_Decal_Front_Only_\",\r\n \"_Rim_Intensity_\",\r\n \"_Rim_Texture_\",\r\n \"_Rim_Hue_Shift_\",\r\n \"_Rim_Saturation_Shift_\",\r\n \"_Rim_Value_Shift_\",\r\n \"_Iridescence_Intensity_\",\r\n \"_Iridescence_Texture_\",\r\n \"Use_Global_Left_Index\",\r\n \"Use_Global_Right_Index\",\r\n \"Global_Left_Index_Tip_Position\",\r\n \"Global_Right_Index_Tip_Position\",\r\n \"Global_Left_Thumb_Tip_Position\",\r\n \"Global_Right_Thumb_Tip_Position\",\r\n \"Global_Left_Index_Middle_Position;\",\r\n \"Global_Right_Index_Middle_Position\",\r\n \"Global_Left_Index_Tip_Proximity\",\r\n \"Global_Right_Index_Tip_Proximity\",\r\n ];\r\n const samplers: string[] = [\"_Rim_Texture_\", \"_Iridescence_Texture_\"];\r\n const uniformBuffers: string[] = [];\r\n\r\n PrepareUniformsAndSamplersList(<IEffectCreationOptions>{\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: defines,\r\n maxSimultaneousLights: 4,\r\n });\r\n\r\n subMesh.setEffect(\r\n scene.getEngine().createEffect(\r\n shaderName,\r\n <IEffectCreationOptions>{\r\n attributes: attribs,\r\n uniformsNames: uniforms,\r\n uniformBuffersNames: uniformBuffers,\r\n samplers: samplers,\r\n defines: join,\r\n fallbacks: fallbacks,\r\n onCompiled: this.onCompiled,\r\n onError: this.onError,\r\n indexParameters: { maxSimultaneousLights: 4 },\r\n },\r\n engine\r\n ),\r\n defines\r\n );\r\n }\r\n if (!subMesh.effect || !subMesh.effect.isReady()) {\r\n return false;\r\n }\r\n\r\n defines._renderId = scene.getRenderId();\r\n drawWrapper._wasPreviouslyReady = true;\r\n\r\n return true;\r\n }\r\n\r\n public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {\r\n const defines = <MRDLSliderThumbMaterialDefines>subMesh.materialDefines;\r\n if (!defines) {\r\n return;\r\n }\r\n\r\n const effect = subMesh.effect;\r\n if (!effect) {\r\n return;\r\n }\r\n\r\n this._activeEffect = effect;\r\n\r\n // Matrices\r\n this.bindOnlyWorldMatrix(world);\r\n this._activeEffect.setMatrix(\"viewProjection\", this.getScene().getTransformMatrix());\r\n this._activeEffect.setVector3(\"cameraPosition\", this.getScene().activeCamera!.position);\r\n\r\n // \"Round Rect\"\r\n this._activeEffect.setFloat(\"_Radius_\", this.radius);\r\n this._activeEffect.setFloat(\"_Bevel_Front_\", this.bevelFront);\r\n this._activeEffect.setFloat(\"_Bevel_Front_Stretch_\", this.bevelFrontStretch);\r\n this._activeEffect.setFloat(\"_Bevel_Back_\", this.bevelBack);\r\n this._activeEffect.setFloat(\"_Bevel_Back_Stretch_\", this.bevelBackStretch);\r\n\r\n // \"Radii Multipliers\"\r\n this._activeEffect.setFloat(\"_Radius_Top_Left_\", this.radiusTopLeft);\r\n this._activeEffect.setFloat(\"_Radius_Top_Right_\", this.radiusTopRight);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Left_\", this.radiusBottomLeft);\r\n this._activeEffect.setFloat(\"_Radius_Bottom_Right_\", this.radiusBottomRight);\r\n\r\n // \"Bulge\"\r\n this._activeEffect.setFloat(\"_Bulge_Enabled_\", this.bulgeEnabled ? 1.0 : 0.0);\r\n this._activeEffect.setFloat(\"_Bulge_Height_\", this.bulgeHeight);\r\n this._activeEffect.setFloat(\"_Bulge_Radius_\", this.bulgeRadius);\r\n\r\n // \"Sun\"\r\n this._activeEffect.setFloat(\"_Sun_Intensity_\", this.sunIntensity);\r\n this._activeEffect.setFloat(\"_Sun_Theta_\", this.sunTheta);\r\n this._activeEffect.setFloat(\"_Sun_Phi_\", this.sunPhi);\r\n this._activeEffect.setFloat(\"_Indirect_Diffuse_\", this.indirectDiffuse);\r\n\r\n // \"Diffuse And Specular\"\r\n this._activeEffect.setDirectColor4(\"_Albedo_\", this.albedo);\r\n this._activeEffect.setFloat(\"_Specular_\", this.specular);\r\n this._activeEffect.setFloat(\"_Shininess_\", this.shininess);\r\n this._activeEffect.setFloat(\"_Sharpness_\", this.sharpness);\r\n this._activeEffect.setFloat(\"_Subsurface_\", this.subsurface);\r\n\r\n // \"Gradient\"\r\n this._activeEffect.setDirectColor4(\"_Left_Color_\", this.leftGradientColor);\r\n this._activeEffect.setDirectColor4(\"_Right_Color_\", this.rightGradientColor);\r\n\r\n // \"Reflection\"\r\n this._activeEffect.setFloat(\"_Reflection_\", this.reflection);\r\n this._activeEffect.setFloat(\"_Front_Reflect_\", this.frontReflect);\r\n this._activeEffect.setFloat(\"_Edge_Reflect_\", this.edgeReflect);\r\n this._activeEffect.setFloat(\"_Power_\", this.power);\r\n\r\n // \"Sky Environment\"\r\n //define SKY_ENABLED true;\r\n this._activeEffect.setDirectColor4(\"_Sky_Color_\", this.skyColor);\r\n this._activeEffect.setDirectColor4(\"_Horizon_Color_\", this.horizonColor);\r\n this._activeEffect.setDirectColor4(\"_Ground_Color_\", this.groundColor);\r\n this._activeEffect.setFloat(\"_Horizon_Power_\", this.horizonPower);\r\n\r\n // \"Mapped Environment\"\r\n //define ENV_ENABLE false;\r\n this._activeEffect.setTexture(\"_Reflection_Map_\", this._reflectionMapTexture);\r\n this._activeEffect.setTexture(\"_Indirect_Environment_\", this._indirectEnvTexture);\r\n\r\n // \"FingerOcclusion\"\r\n //define OCCLUSION_ENABLED false;\r\n this._activeEffect.setFloat(\"_Width_\", this.width);\r\n this._activeEffect.setFloat(\"_Fuzz_\", this.fuzz);\r\n this._activeEffect.setFloat(\"_Min_Fuzz_\", this.minFuzz);\r\n this._activeEffect.setFloat(\"_Clip_Fade_\", this.clipFade);\r\n\r\n // \"View Based Color Shift\"\r\n this._activeEffect.setFloat(\"_Hue_Shift_\", this.hueShift);\r\n this._activeEffect.setFloat(\"_Saturation_Shift_\", this.saturationShift);\r\n this._activeEffect.setFloat(\"_Value_Shift_\", this.valueShift);\r\n\r\n // \"Blob\"\r\n //define BLOB_ENABLE false;\r\n this._activeEffect.setVector3(\"_Blob_Position_\", this.blobPosition);\r\n this._activeEffect.setFloat(\"_Blob_Intensity_\", this.blobIntensity);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_\", this.blobNearSize);\r\n this._activeEffect.setFloat(\"_Blob_Far_Size_\", this.blobFarSize);\r\n this._activeEffect.setFloat(\"_Blob_Near_Distance_\", this.blobNearDistance);\r\n this._activeEffect.setFloat(\"_Blob_Far_Distance_\", this.blobFarDistance);\r\n this._activeEffect.setFloat(\"_Blob_Fade_Length_\", this.blobFadeLength);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_\", this.blobPulse);\r\n this._activeEffect.setFloat(\"_Blob_Fade_\", this.blobFade);\r\n\r\n // \"Blob Texture\"\r\n this._activeEffect.setTexture(\"_Blob_Texture_\", this.blobTexture);\r\n\r\n // \"Blob 2\"\r\n //define BLOB_ENABLE_2 true;\r\n this._activeEffect.setVector3(\"_Blob_Position_2_\", this.blobPosition2);\r\n this._activeEffect.setFloat(\"_Blob_Near_Size_2_\", this.blobNearSize2);\r\n this._activeEffect.setFloat(\"_Blob_Pulse_2_\", this.blobPulse2);\r\n this._activeEffect.setFloat(\"_Blob_Fade_2_\", this.blobFade2);\r\n\r\n // \"Finger Positions\"\r\n this._activeEffect.setVector3(\"_Left_Index_Pos_\", this.leftIndexPosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Pos_\", this.rightIndexPosition);\r\n this._activeEffect.setVector3(\"_Left_Index_Middle_Pos_\", this.leftIndexMiddlePosition);\r\n this._activeEffect.setVector3(\"_Right_Index_Middle_Pos_\", this.rightIndexMiddlePosition);\r\n\r\n // \"Decal Texture\"\r\n //define DECAL_ENABLE false;\r\n this._activeEffect.setTexture(\"_Decal_\", this._decalTexture);\r\n this._activeEffect.setVector2(\"_Decal_Scale_XY_\", this.decalScaleXY);\r\n this._activeEffect.setFloat(\"_Decal_Front_Only_\", this.decalFrontOnly ? 1.0 : 0.0);\r\n\r\n // \"Rim Light\"\r\n this._activeEffect.setFloat(\"_Rim_Intensity_\", this.rimIntensity);\r\n this._activeEffect.setTexture(\"_Rim_Texture_\", this._blueGradientTexture);\r\n this._activeEffect.setFloat(\"_Rim_Hue_Shift_\", this.rimHueShift);\r\n this._activeEffect.setFloat(\"_Rim_Saturation_Shift_\", this.rimSaturationShift);\r\n this._activeEffect.setFloat(\"_Rim_Value_Shift_\", this.rimValueShift);\r\n\r\n // \"Iridescence\"\r\n //define IRIDESCENCE_ENABLED true;\r\n this._activeEffect.setFloat(\"_Iridescence_Intensity_\", this.iridescenceIntensity);\r\n this._activeEffect.setTexture(\"_Iridescence_Texture_\", this._blueGradientTexture);\r\n\r\n // Global inputs\r\n this._activeEffect.setFloat(\"Use_Global_Left_Index\", this.useGlobalLeftIndex);\r\n this._activeEffect.setFloat(\"Use_Global_Right_Index\", this.useGlobalRightIndex);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Tip_Position\", this.globalLeftIndexTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Tip_Position\", this.globaRightIndexTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Thumb_Tip_Position\", this.globalLeftThumbTipPosition);\r\n this._activeEffect.setVector4(\"Global_Right_Thumb_Tip_Position\", this.globalRightThumbTipPosition);\r\n\r\n this._activeEffect.setVector4(\"Global_Left_Index_Middle_Position\", this.globalLeftIndexMiddlePosition);\r\n this._activeEffect.setVector4(\"Global_Right_Index_Middle_Position\", this.globalRightIndexMiddlePosition);\r\n\r\n this._activeEffect.setFloat(\"Global_Left_Index_Tip_Proximity\", this.globalLeftIndexTipProximity);\r\n this._activeEffect.setFloat(\"Global_Right_Index_Tip_Proximity\", this.globalRightIndexTipProximity);\r\n\r\n this._afterBind(mesh, this._activeEffect, subMesh);\r\n }\r\n\r\n /**\r\n * Get the list of animatables in the material.\r\n * @returns the list of animatables object used in the material\r\n */\r\n public getAnimatables(): IAnimatable[] {\r\n return [];\r\n }\r\n\r\n public dispose(forceDisposeEffect?: boolean): void {\r\n super.dispose(forceDisposeEffect);\r\n this._reflectionMapTexture.dispose();\r\n this._indirectEnvTexture.dispose();\r\n this._blueGradientTexture.dispose();\r\n this._decalTexture.dispose();\r\n }\r\n\r\n public clone(name: string): MRDLSliderThumbMaterial {\r\n return SerializationHelper.Clone(() => new MRDLSliderThumbMaterial(name, this.getScene()), this);\r\n }\r\n\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.customType = \"BABYLON.MRDLSliderThumbMaterial\";\r\n return serializationObject;\r\n }\r\n\r\n public getClassName(): string {\r\n return \"MRDLSliderThumbMaterial\";\r\n }\r\n\r\n // Statics\r\n public static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderThumbMaterial {\r\n return SerializationHelper.Parse(() => new MRDLSliderThumbMaterial(source.name, scene), source, scene, rootUrl);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.MRDLSliderThumbMaterial\", MRDLSliderThumbMaterial);\r\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/gui",
3
- "version": "6.45.1",
3
+ "version": "6.46.1",
4
4
  "main": "index.js",
5
5
  "module": "index.js",
6
6
  "types": "index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "postcompile": "build-tools -c add-js-to-es6"
19
19
  },
20
20
  "devDependencies": {
21
- "@babylonjs/core": "^6.45.1",
21
+ "@babylonjs/core": "^6.46.1",
22
22
  "@dev/build-tools": "^1.0.0",
23
23
  "@lts/gui": "1.0.0"
24
24
  },