Difference between revisions of "Tips for Verge3D devs"

From Verge3D Wiki
Jump to navigationJump to search
(21 intermediate revisions by the same user not shown)
Line 64: Line 64:
These short links can be very helpful for debugging mobile devices.
These short links can be very helpful for debugging mobile devices.


* [https://v3d.net/ar v3d.net/ar] — launch '''A'''ugmented '''R'''eality demo.
* [https://v3d.net/c v3d.net/c] — launch basic '''C'''ube demo.
* [https://v3d.net/g v3d.net/g] — launch '''G'''lobal Illumination demo.
* [https://v3d.net/g v3d.net/g] — launch '''G'''lobal Illumination demo.
* [https://v3d.net/j v3d.net/j] — launch '''J'''ewelry Configurator.
* [https://v3d.net/j v3d.net/j] — launch '''J'''ewelry Configurator.
* [https://v3d.net/l v3d.net/l] — redirect to '''l'''ocal App Manager (http://localhost:8668/)
* [https://v3d.net/l v3d.net/l] — redirect to '''l'''ocal App Manager (http://localhost:8668/).
* [https://v3d.net/m v3d.net/m] — open Verge3D User '''M'''anual.
* [https://v3d.net/m v3d.net/m] — open Verge3D User '''M'''anual.
* [https://v3d.net/r v3d.net/r] — launch Industrial '''R'''obot Demo.
* [https://v3d.net/r v3d.net/r] — launch Industrial '''R'''obot Demo.
Line 72: Line 74:
* [https://v3d.net/t v3d.net/t] — '''T'''eapot Heater.
* [https://v3d.net/t v3d.net/t] — '''T'''eapot Heater.
* [https://v3d.net/v v3d.net/v] — W3C Markup '''V'''alidation Service.
* [https://v3d.net/v v3d.net/v] — W3C Markup '''V'''alidation Service.
* [https://v3d.net/vr v3d.net/vr] — launch '''V'''irtual '''R'''eality demo.
* [https://v3d.net/w v3d.net/w] — '''W'''ebGL System Report.
* [https://v3d.net/w v3d.net/w] — '''W'''ebGL System Report.


Line 90: Line 93:
| Blender 2.93 LTS || 2021 || 3.9.2 || T || Dropped Windows 7 support (Windows 8.1 is OK)
| Blender 2.93 LTS || 2021 || 3.9.2 || T || Dropped Windows 7 support (Windows 8.1 is OK)
|-
|-
| Blender 3.0 || 2021 || 3.9.7 || T ||
| Blender 3.0 || 2021 || 3.9.7 || T || Used in Ubuntu 22.04
|-
|-
| Blender 3.1 || 2022 || 3.10.2 || T ||
| Blender 3.1 || 2022 || 3.10.2 || T ||
Line 98: Line 101:
| Blender 3.3 LTS || 2022 || 3.10.2 || T ||
| Blender 3.3 LTS || 2022 || 3.10.2 || T ||
|-
|-
| Blender 3.4 || 2022 || 3.10.2 || T ||
| Blender 3.4 || 2022 || 3.10.8 || T ||
|-
|-
| 3ds Max 2020 (22.0) || 2019 || 2.7.15 || P || VS 2017, Platform Toolset v141, Windows SDK 10.0.17134.0
| Blender 3.5 || 2023 || 3.10.9 || T ||
|-
| Blender 3.6 LTS || 2023 || 3.10.9 || T ||
|-
| Blender 4.0 || 2023 || 3.10.11 || T ||
|-
|-
| 3ds Max 2021 (23.0) || 2020 || 3.7.6 || P || VS 2017, Platform Toolset v141, Windows SDK 10.0.17134.0. Dropped Windows 7-8.1 support. Arnold by default.
| 3ds Max 2021 (23.0) || 2020 || 3.7.6 || P || VS 2017, Platform Toolset v141, Windows SDK 10.0.17134.0. Dropped Windows 7-8.1 support. Arnold by default.
Line 108: Line 115:
| 3ds Max 2023 (25.0) || 2022 || 3.9.7 || P || VS 2019, Platform Toolset v142, Windows SDK 10.0.19041.0
| 3ds Max 2023 (25.0) || 2022 || 3.9.7 || P || VS 2019, Platform Toolset v142, Windows SDK 10.0.19041.0
|-
|-
| Maya 2019 || 2018 || 2.7.11 || P ||
| 3ds Max 2024 (26.0) || 2024 || 3.10.8 || P || VS 2019, Platform Toolset v142, Windows SDK 10.0.19041.0
|-
|-
| Maya 2020 || 2019 || 2.7.11 || P ||
| Maya 2022 || 2021 || 3.7.7 || T || Arnold optional. Dropped Windows 7, Windows 8.1 never officially supported.
|-
|-
| Maya 2022 || 2021 || 3.7.7 || T || Dropped Windows 7 support
| Maya 2023 || 2022 || 3.9.7 || T || Arnold optional.
|-
|-
| Maya 2023 || 2022 || 3.9.7 || T ||
| Maya 2024 || 2023 || 3.10.8 || T || Arnold optional.
|}
|}
* Python 3.8 is last supported version on Windows 7


== App Manager undocumented features ==
== App Manager undocumented features ==
Line 128: Line 136:


* [http://localhost:8668/reset localhost:8668/reset] — reset server settings.
* [http://localhost:8668/reset localhost:8668/reset] — reset server settings.
== Restoring console functions ==
<syntaxhighlight lang="javascript">
const i = document.createElement('iframe');
i.style.display = 'none';
document.body.appendChild(i);
window.console = i.contentWindow.console;
</syntaxhighlight>
== Downloading Electron builds ==
gh release download v19.0.4 -D v19.0.4 -p 'electron-*64.zip' -p 'electron-*32.zip' -p 'SHASUMS256.txt' -R electron/electron

Revision as of 09:18, 1 June 2023

This page contains random tips and code snippets that Verge3D devs or Verge3D DevKit users may find useful for their work.

Getting v3d namespace from iframe

document.getElementsByTagName("iframe")[0].contentWindow.v3d

e.g. to print performance profile from the iframe:

document.getElementsByTagName("iframe")[0].contentWindow.v3d.apps[0].printPerformanceInfo()

or to enable FPS counter:

document.getElementsByTagName("iframe")[0].contentWindow.v3d.apps[0].showFPS()

Debugging Verge3D render target

Use the following code to create a plane with the output of the given render target:

// DONT FORGET TO REMOVE IT!
var texture = renderTarget.texture
var geometry = new v3d.PlaneBufferGeometry(3, 3);
var material = new v3d.MeshBasicMaterial();
material.map = texture;
var planeMesh = new v3d.Mesh(geometry, material);
planeMesh.position.x = 6;
v3d.apps[0].scene.add(planeMesh);

Code Indentation Style

The K&R style, 4 spaces:

function someFun() {
    const someConst = 10;
    const alwaysTrue = true;

    for (let i = 0; i < someConst; i++) {
        if (alwaysTrue) {
            console.log(`Hello ${i}!`);
        }
    }
}

Key Triplets

There are several key triplets supported by Verge3D which are useful for debugging. To execute a triplet, wait until a Verge3D app finishes its loading, then press the same key thrice very quickly.

  • PPP — print performance profile. See here for more info.
  • FFF — show/hide FPS counter in the upper left corner of the rendered canvas.
  • HHH — halt/continue application rendering.

Short Links

These short links can be very helpful for debugging mobile devices.

Supported modelling suites

Suite Release year Python AM Build Info / Notes
Blender 2.83 LTS 2020 3.7.4 T
Blender 2.90 2020 3.7.7 T
Blender 2.91 2020 3.7.7 T
Blender 2.92 2021 3.7.7 T
Blender 2.93 LTS 2021 3.9.2 T Dropped Windows 7 support (Windows 8.1 is OK)
Blender 3.0 2021 3.9.7 T Used in Ubuntu 22.04
Blender 3.1 2022 3.10.2 T
Blender 3.2 2022 3.10.2 T
Blender 3.3 LTS 2022 3.10.2 T
Blender 3.4 2022 3.10.8 T
Blender 3.5 2023 3.10.9 T
Blender 3.6 LTS 2023 3.10.9 T
Blender 4.0 2023 3.10.11 T
3ds Max 2021 (23.0) 2020 3.7.6 P VS 2017, Platform Toolset v141, Windows SDK 10.0.17134.0. Dropped Windows 7-8.1 support. Arnold by default.
3ds Max 2022 (24.0) 2021 3.7.9 P VS 2017, Platform Toolset v141, Windows SDK 10.0.17134.0
3ds Max 2023 (25.0) 2022 3.9.7 P VS 2019, Platform Toolset v142, Windows SDK 10.0.19041.0
3ds Max 2024 (26.0) 2024 3.10.8 P VS 2019, Platform Toolset v142, Windows SDK 10.0.19041.0
Maya 2022 2021 3.7.7 T Arnold optional. Dropped Windows 7, Windows 8.1 never officially supported.
Maya 2023 2022 3.9.7 T Arnold optional.
Maya 2024 2023 3.10.8 T Arnold optional.
  • Python 3.8 is last supported version on Windows 7

App Manager undocumented features

Restoring console functions

const i = document.createElement('iframe');
i.style.display = 'none';
document.body.appendChild(i);
window.console = i.contentWindow.console;

Downloading Electron builds

gh release download v19.0.4 -D v19.0.4 -p 'electron-*64.zip' -p 'electron-*32.zip' -p 'SHASUMS256.txt' -R electron/electron