<p dir="auto">Is there any existing feature for printing the scene tree to the console, e.g. for debugging? I'm finding it a bit time-consuming to expand <code class="notranslate">node.children</code> recursively in the JS Console. If not, I wanted to propose something along the lines of:</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="SceneUtils.log( node );"><pre class="notranslate"><span class="pl-v">SceneUtils</span><span class="pl-kos">.</span><span class="pl-en">log</span><span class="pl-kos">(</span> <span class="pl-s1">node</span> <span class="pl-kos">)</span><span class="pl-kos">;</span></pre></div>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=". &lt;Scene&gt;
├── &lt;Object3D&gt;
│   └── joint_1 &lt;Bone&gt;
│       └── joint_2 &lt;Bone&gt;
│           └── joint_3 &lt;Bone&gt;
├── fancy_character &lt;SkinnedMesh&gt;
├── &lt;PointLight&gt;
├── &lt;AmbientLight&gt;
└── bookshelf &lt;Mesh&gt;"><pre class="notranslate"><code class="notranslate">. &lt;Scene&gt;
├── &lt;Object3D&gt;
│   └── joint_1 &lt;Bone&gt;
│       └── joint_2 &lt;Bone&gt;
│           └── joint_3 &lt;Bone&gt;
├── fancy_character &lt;SkinnedMesh&gt;
├── &lt;PointLight&gt;
├── &lt;AmbientLight&gt;
└── bookshelf &lt;Mesh&gt;
</code></pre></div>
<p dir="auto"><strong>Describe the bug</strong></p>
<p dir="auto">JPEG textures in an input GLB get exported as PNG, causing such models to grow enormously in size.</p>
<p dir="auto"><strong>To Reproduce</strong></p>
<p dir="auto">Steps to reproduce the behavior:</p>
<ol dir="auto">
<li>Go to <a href="https://threejs.org/editor/" rel="nofollow">https://threejs.org/editor/</a></li>
<li>Import <a href="https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/DamagedHelmet/glTF-Binary">DamagedHelment.glb</a></li>
<li>Export as GLB</li>
<li>Note the original was 3.8 Mb, while the new is 17.9 Mb</li>
</ol>
<p dir="auto"><strong>Expected behavior</strong></p>
<p dir="auto">The exported model should be pretty close to the same size as the original. I understand it won't be identical, which is fine, but this is pretty unusable.</p>
<p dir="auto"><strong>Cause</strong></p>
<p dir="auto"><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1118375356" data-permission-text="Title is private" data-url="https://github.com/mrdoob/three.js/issues/23385" data-hovercard-type="pull_request" data-hovercard-url="/mrdoob/three.js/pull/23385/hovercard" href="https://github.com/mrdoob/three.js/pull/23385">#23385</a> is sort of the culprit, but really it was <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1102180015" data-permission-text="Title is private" data-url="https://github.com/mrdoob/three.js/issues/23228" data-hovercard-type="pull_request" data-hovercard-url="/mrdoob/three.js/pull/23228/hovercard" href="https://github.com/mrdoob/three.js/pull/23228">#23228</a> where the RGBFormat was removed and this was the only way we had to tell if a texture had been a JPG or a PNG. <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Mugen87/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Mugen87">@Mugen87</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/donmccurdy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/donmccurdy">@donmccurdy</a> This is blocking model-viewer's update to r137/r138 because it affects our editor the same as yours. Can anyone think of a quick work-around?</p>