Script: Flight Helmet demo

Flight Helmet demo picture
Type
Blockly logo indicatorblockly
Date Created
Oct 17, 2022, 7:35:34 PM
Last Edit Date
Oct 2, 2025, 3:31:53 PM

Project Information

Try loading this amazing looking asset from BABYLON JS team

View Full Project

Script Code

<xml xmlns="https://developers.google.com/blockly/xml">
 <variables>
  <variable id="/,iv!i$qO}pg^#PYU#!v">result</variable>
  <variable id="c2-[L8KoAr}FvumtT.ps">timeElapsedFromPreviousFrame</variable>
 </variables>
 <block type="bitbybit.babylon.scene.enableSkybox" id="mP11Da{A.N=`r;Ck4!Tr" x="-22" y="-448">
  <value name="Skybox">
   <block type="bitbybit.babylon.enums.skyboxEnum" id="#YY=vG;R%Jky;xJswab=">
    <field name="bitbybit.babylon.enums.skyboxEnum">'clearSky'</field>
   </block>
  </value>
  <value name="Size">
   <block type="math_number" id="m/4:osf8;oR2Fd$Do5++">
    <field name="NUM">1000</field>
   </block>
  </value>
  <value name="Blur">
   <block type="math_number" id="4:/LRMEsb0_}.nB!-hr)">
    <field name="NUM">0.4</field>
   </block>
  </value>
  <value name="EnvironmentIntensity">
   <block type="math_number" id="k%~GC%AUOA={2f/Q,Mqj">
    <field name="NUM">0.8</field>
   </block>
  </value>
  <next>
   <block type="bitbybit.babylon.scene.adjustActiveArcRotateCamera" id=".XO1P3~,^2U/O($Mw1:h">
    <value name="Position">
     <block type="bitbybit.point.pointXYZ" id="6Ey}e$uJi9i@pY9JdgFW">
      <value name="X">
       <block type="math_number" id="DO?XLIeVPRWuxw6{r#fS">
        <field name="NUM">-5</field>
       </block>
      </value>
      <value name="Y">
       <block type="math_number" id="`/SCD^0Cby?=Bl:CvH(O">
        <field name="NUM">6</field>
       </block>
      </value>
      <value name="Z">
       <block type="math_number" id="=u^rZWOXX0b;bL6LAJ.;">
        <field name="NUM">-12</field>
       </block>
      </value>
     </block>
    </value>
    <value name="LookAt">
     <block type="bitbybit.point.pointXYZ" id="%ql~W?)}}~as)1RnFs+V">
      <value name="X">
       <block type="math_number" id="~wH`xPE1v$%W,!1mx|d7">
        <field name="NUM">0</field>
       </block>
      </value>
      <value name="Y">
       <block type="math_number" id="IZm_:im|14@,NS*RN0iz">
        <field name="NUM">3</field>
       </block>
      </value>
      <value name="Z">
       <block type="math_number" id="FM!5p3O;*!LfwvgR}H2S">
        <field name="NUM">0</field>
       </block>
      </value>
     </block>
    </value>
    <value name="MaxZ">
     <block type="math_number" id="VAn%*qLtW2](lL5P9/=p">
      <field name="NUM">10000</field>
     </block>
    </value>
    <value name="PanningSensibility">
     <block type="math_number" id="yeS9X$mz.@l}Kah-QHX.">
      <field name="NUM">1000</field>
     </block>
    </value>
    <value name="WheelPrecision">
     <block type="math_number" id="V_aRR~q5t(jK,c+v?Z-P">
      <field name="NUM">3</field>
     </block>
    </value>
    <next>
     <block type="bitbybit.draw.drawGridMeshNoReturn" id="(8[FGwg8z|:,lpL;bGBQ">
      <value name="Width">
       <block type="math_number" id="r~1Nq(M4E7DNu9S``E6z">
        <field name="NUM">400</field>
       </block>
      </value>
      <value name="Height">
       <block type="math_number" id="F+/T2ih(cZ=BmcUEz=}K">
        <field name="NUM">400</field>
       </block>
      </value>
      <value name="Subdivisions">
       <block type="math_number" id="n!p`zoeKr#Z!(Bd/p4=:">
        <field name="NUM">10</field>
       </block>
      </value>
      <value name="MajorUnitFrequency">
       <block type="math_number" id="llZATwGSk5,l1p/g,g8$">
        <field name="NUM">10</field>
       </block>
      </value>
      <value name="MinorUnitVisibility">
       <block type="math_number" id="nUMwgY`B(TO@S:-[t@@}">
        <field name="NUM">0.45</field>
       </block>
      </value>
      <value name="GridRatio">
       <block type="math_number" id="I!(*qq3xp8]P.^ls{kIL">
        <field name="NUM">0.5</field>
       </block>
      </value>
      <value name="Opacity">
       <block type="math_number" id="v)m3ag_yyWAx]62K/s`y">
        <field name="NUM">0.5</field>
       </block>
      </value>
      <value name="BackFaceCulling">
       <block type="logic_boolean" id="m0N+Tky6%EBuMr7u1!8|">
        <field name="BOOL">FALSE</field>
       </block>
      </value>
      <value name="MainColor">
       <block type="colour_picker" id="inXZ=h*(mIOQLy_+XM:D">
        <field name="COLOUR">#ffffff</field>
       </block>
      </value>
      <value name="SecondaryColor">
       <block type="colour_picker" id="i8(/f+AUh5SrPr)sIxf|">
        <field name="COLOUR">#ffffff</field>
       </block>
      </value>
      <next>
       <block type="bitbybit.babylon.scene.drawDirectionalLightNoReturn" id="L#M(zsbIg46o9M_69One">
        <value name="Direction">
         <block type="bitbybit.vector.vectorXYZ" id="GiZtJI9nhTO,F^zzf%I+">
          <value name="X">
           <block type="math_number" id="ZEFq^YIUuu2~X*R8#_(v">
            <field name="NUM">-100</field>
           </block>
          </value>
          <value name="Y">
           <block type="math_number" id="|d#?H~,]{EKorps7g^_^">
            <field name="NUM">-100</field>
           </block>
          </value>
          <value name="Z">
           <block type="math_number" id=";!I@cQL#((`m`yt_wlaB">
            <field name="NUM">-100</field>
           </block>
          </value>
         </block>
        </value>
        <value name="Intensity">
         <block type="math_number" id="#nX?:%i9B:64y0.6$t*z">
          <field name="NUM">0.5</field>
         </block>
        </value>
        <value name="Diffuse">
         <block type="colour_picker" id="MBb@[^*Y`wPEWZ|+^EOm">
          <field name="COLOUR">#ffffff</field>
         </block>
        </value>
        <value name="Specular">
         <block type="colour_picker" id="lr?Wk#Zs-lyrJHfS_}qn">
          <field name="COLOUR">#ffffff</field>
         </block>
        </value>
        <value name="ShadowGeneratorMapSize">
         <block type="math_number" id="V-.ae|yRVq@wQi)auf(C">
          <field name="NUM">1024</field>
         </block>
        </value>
        <value name="EnableShadows">
         <block type="logic_boolean" id="sEVqgc(cT}!hLwyqbMZ1">
          <field name="BOOL">TRUE</field>
         </block>
        </value>
        <value name="ShadowDarkness">
         <block type="math_number" id="dd0rH`tF;;MxX@H7gX_$">
          <field name="NUM">0</field>
         </block>
        </value>
        <value name="ShadowUsePercentageCloserFiltering">
         <block type="logic_boolean" id="aia~MS0P1F/Yx5?KiJSe">
          <field name="BOOL">TRUE</field>
         </block>
        </value>
        <value name="ShadowContactHardeningLightSizeUVRatio">
         <block type="math_number" id="D`)I!y]/hIiMtK~v:zFS">
          <field name="NUM">0.2</field>
         </block>
        </value>
        <value name="ShadowBias">
         <block type="math_number" id="RZ2BoNC{C][#*EOxKGB(">
          <field name="NUM">0.0001</field>
         </block>
        </value>
        <value name="ShadowNormalBias">
         <block type="math_number" id="jhSK)zz~)!YPP$%SCjO.">
          <field name="NUM">0.002</field>
         </block>
        </value>
        <value name="ShadowMaxZ">
         <block type="math_number" id="q/dJq1(TlP-Pdv|A[,Z!">
          <field name="NUM">1000</field>
         </block>
        </value>
        <value name="ShadowMinZ">
         <block type="math_number" id="r0Q5d.z!n)k4I`t,.@aT">
          <field name="NUM">0</field>
         </block>
        </value>
        <next>
         <block type="base_time_then" id="+M+vaoP!p:I[[X^6Q0y#">
          <field name="Result" id="/,iv!i$qO}pg^#PYU#!v">result</field>
          <value name="Promise">
           <block type="bitbybit.babylon.io.loadAssetIntoSceneFromRootUrl" id="BYBMyL9r?E_8(Dfq)`gc">
            <value name="AssetFile">
             <block type="text" id="DtAL%zh8`i{,}nXIl9Ax">
              <field name="TEXT">FlightHelmet_Materials.gltf</field>
             </block>
            </value>
            <value name="RootUrl">
             <block type="text" id="h@8c|Uo:Sne%@5_)$50s">
              <field name="TEXT">https://www.babylonjs.com/Assets/FlightHelmet/glTF/</field>
             </block>
            </value>
           </block>
          </value>
          <statement name="Then">
           <block type="bitbybit.babylon.mesh.setScale" id="nGxZ4Aa+|P!bN-sRhWWv">
            <value name="BabylonMesh">
             <block type="lists_getIndex" id="SyC1psxB7?~-g(~YC[v|">
              <mutation statement="false" at="false">
              </mutation>
              <field name="MODE">GET</field>
              <field name="WHERE">FIRST</field>
              <value name="VALUE">
               <block type="bitbybit.babylon.mesh.getMeshesWhereNameContains" id="Jf^d{LpzH%0}43n%)on6">
                <value name="Name">
                 <block type="text" id="@!.WGg*^;%SdGlsWq/_K">
                  <field name="TEXT">__root__</field>
                 </block>
                </value>
               </block>
              </value>
             </block>
            </value>
            <value name="Scale">
             <block type="bitbybit.point.pointXYZ" id="n;X!i]%7%#5Dl:wG3CaD">
              <value name="X">
               <block type="math_number" id="[%*hyjRX`2D]/Jp.s97.">
                <field name="NUM">0.2</field>
               </block>
              </value>
              <value name="Y">
               <block type="math_number" id="DOr:-vXnaW5j@Y)fiV([">
                <field name="NUM">0.2</field>
               </block>
              </value>
              <value name="Z">
               <block type="math_number" id="+~M`a.mL93C6~NHln/n1">
                <field name="NUM">0.2</field>
               </block>
              </value>
             </block>
            </value>
            <next>
             <block type="base_time_update" id="Rb@]r.dqxG/1g=PJe=sn">
              <field name="TimePassedMs" id="c2-[L8KoAr}FvumtT.ps">timeElapsedFromPreviousFrame</field>
              <statement name="Update">
               <block type="bitbybit.babylon.mesh.yaw" id="p$]x}w;z:a:E#ScBPNgx">
                <value name="BabylonMesh">
                 <block type="variables_get" id="=RYYb)0B,aMJrX3M{:84">
                  <field name="VAR" id="/,iv!i$qO}pg^#PYU#!v">result</field>
                 </block>
                </value>
                <value name="Rotate">
                 <block type="math_number" id="EMlu|q2,8L[MrH,oby,O">
                  <field name="NUM">-0.15</field>
                 </block>
                </value>
               </block>
              </statement>
             </block>
            </next>
           </block>
          </statement>
          <next>
           <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="nM,x[Q2*Z)+k7zlvtW#1">
            <value name="Entity">
             <block type="bitbybit.jscad.shapes.cuboid" id="pY.3E/!qKjmvEMqd5YO(">
              <value name="Center">
               <block type="bitbybit.point.pointXYZ" id="1C^.ccR,ONp1;PY:7)gI">
                <value name="X">
                 <block type="math_number" id="h|a`7,$mBQ`.YajW7-T;">
                  <field name="NUM">0</field>
                 </block>
                </value>
                <value name="Y">
                 <block type="math_number" id="o(5elB8dwuC:SLa(aT?M">
                  <field name="NUM">0</field>
                 </block>
                </value>
                <value name="Z">
                 <block type="math_number" id="/vtjlR:g-9riieQVk.Fh">
                  <field name="NUM">0</field>
                 </block>
                </value>
               </block>
              </value>
              <value name="Width">
               <block type="math_number" id="Rl8OQ5ja7e2Swx#FnFEM">
                <field name="NUM">30</field>
               </block>
              </value>
              <value name="Length">
               <block type="math_number" id="UtBsBbX:L)BtQTF[MA8$">
                <field name="NUM">30</field>
               </block>
              </value>
              <value name="Height">
               <block type="math_number" id="DGY(-)kL{F]OOH]pM/x%">
                <field name="NUM">0.1</field>
               </block>
              </value>
             </block>
            </value>
            <value name="Options">
             <block type="bitbybit.draw.optionsSimple" id="6.7aG:#8VTEVj_P9Kw~$">
              <value name="Colours">
               <block type="colour_picker" id="KnUUy$Id-quqWY3W:Wf(">
                <field name="COLOUR">#ffffff</field>
               </block>
              </value>
              <value name="Size">
               <block type="math_number" id="OEKA0Er1_+KP)xlw,b6r">
                <field name="NUM">3</field>
               </block>
              </value>
              <value name="Opacity">
               <block type="math_number" id="R:B5{@U3i?rJSCNsT.,{">
                <field name="NUM">1</field>
               </block>
              </value>
              <value name="Updatable">
               <block type="logic_boolean" id="~eSUEVYcS}OMFD.BM`SZ">
                <field name="BOOL">FALSE</field>
               </block>
              </value>
             </block>
            </value>
           </block>
          </next>
         </block>
        </next>
       </block>
      </next>
     </block>
    </next>
   </block>
  </next>
 </block>
</xml>