Below are answered some common questions with regard to using Verge3D.

Licensing and Support

On how many computers can Verge3D be installed? How many users can use a single license?

The license is assigned on the per person (Personal) or per entity (Team, Enterprise) basis. The number of installations is not limited. In case of the Personal option, only one individual can use Verge3D. On the other hand, there is no limitation on the number of users within the company or organization.

What are the limitations / restrictions of the Verge3D Trial? Can I do ... ?

Quick answer to that question would be to quote our License Agreement. The Verge3D EULA states: "The trial version of this software available for free download from the Soft8Soft website is intended for testing purposes only. Any use in production environments, for commercial or non-commercial purposes is prohibited."

Basically, you can do whatever you want (and for how long) provided you don't create apps for production use. For example, you can use it to create basic samples for practicing purposes, to develop your personal skills, or to create a mock-up presentation for your managers. You are not allowed to use it for education (feel free to reach us to request a special Educational license at reduced price) or to create your own portfolio (this qualifies as production use, so be sure to purchase the Verge3D Personal license in such a case).

How do I obtain technical support?

If you own a Verge3D Team or Personal license, or still evaluating Verge3D, you can purchase our support plan. Support services are also offered as part of the Verge3D Enterprise package.

General Questions

Do I need Internet connection to work with Verge3D?

Verge3D is a pure offline toolkit which operates on local files stored on a computer's hard drive. Finished projects can be deployed on your own website, converted to a mobile or desktop application or served via local network. The only feature that requires Internet connection is publishing on Verge3D Network.

My app does not load when I open it in Chrome - yet it works when running from the App Manager or if opened in Firefox...

Due to security policy imposed by browser vendors, web applications cannot access data loaded from another domain, including from a local file system (with Firefox being an exception here). Therefore, you should use the App Manager (which comes with a local server) for development, or publish your Verge3D apps on a web server (or upload to the Verge3D Network) to be able to run it.

If you need a desktop or mobile application instead, you can convert your Verge3D apps to those platforms using third-party software (such Electron or Cordova).

Cannot load app when I launch it by clicking on the .html file.

See the answer on the question above.

Can I export my scene to a standalone all-in HTML file?

Nope, there is no all-in HTML format offered by Verge3D. If you need a standalone executable you can try to convert it with Electron.

Any plans to support Maxon Cinema 4D? May be Autodesk Maya?

See the answer to this question on the forums.

Do Verge3D apps work in Internet Explorer 11?

Yes. Enable IE 11 compatibility module in the app creation panel.

How can I copy Puzzles into another project?

You can use the Library feature for that.

Sound is not played on iOS...

See how to fix that here.

What 3D formats can be used with Verge3D?

Verge3D is able to load various formats including glTF, OBJ, FBX, COLLADA, STL and PLY. Still, the preferred way to create 3D web content is to use glTF 2.0 format which is supported by both 3ds Max and Blender exporters.

Also, the script of the Standard application template is based on the App class which supports loading glTF files only. For loading some other formats, use the corresponding loaders instead.

Programming Questions

You say Verge3D is based on Three.js. Is it compatible with Three.js API?

To create Verge3D we modified Three.js code base a lot and thus we decided to use "v3d" prefix for our APIs. However, we'll try to maintain source code compatibility with Three.js. Most of the Three.js-based applications and examples should work in Verge3D without any modifications.

Why are there meta viewport tags in examples?

<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">

These tags control viewport size and scale for mobile browsers (where page content may be rendered at different size than visible viewport).


How can scene scale be preserved on resize?

We want all objects, regardless of their distance from the camera, to appear the same size, even as the window is resized. The key equation to solving this is this formula for the visible height at a given distance: visible_height = 2 * Math.tan((Math.PI / 180) * camera.fov / 2) * distance_from_camera; If we increase the window height by a certain percentage, then what we want is the visible height at all distances to increase by the same percentage. This can not be done by changing the camera position. Instead you have to change the camera field-of-view. Example.

Why is part of my object invisible?

This could be because of face culling. Faces have an orientation that decides which side is which. And the culling removes the backside in normal circumstances. To see if this is your problem, change the material side to v3d.DoubleSide. material.side = v3d.DoubleSide

My app window grows endlessly on iOS devices. How to fix it?

If you embed a Verge3D application inside an iframe element, you may run into a specific issue on iOS devices, which causes iframes to constantly increase in size beyond the boundaries of the browser window. This in turn can lead to a WebGL crash.

To deal with this issue you can use the following snippet, which resizes the iframe to the page's body preventing the said iframe from extending beyond it.

<script> if (/(iPad|iPhone|iPod)/g.test(navigator.userAgent)) { var iframe = document.getElementById('myIframe'); function resize() { iframe.style.width = getComputedStyle(document.body).width; iframe.style.height = getComputedStyle(document.body).height; iframe.setAttribute('scrolling', 'no'); } iframe.addEventListener('resize', function(e) { resize(); }); resize(); } </script>

Keyboard controls does not work for the app embedded in iframe

It happens when some other HTML on your page gets the focus. To fix this issue try the following code: document.getElementById("my_iframe_id").focus(); Where my_iframe_id is the ID of your iframe element.