Skip to content

Commit 05c6904

Browse files
committed
FAQ update
1 parent ee999e3 commit 05c6904

1 file changed

Lines changed: 64 additions & 1 deletion

File tree

documentation/reference/faq.md

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,17 @@ If you're still not receiving emails, there may be a service disruption. Check o
158158

159159
## Can I remove the Needle Engine logo and branding (white-labelling)?
160160

161-
Yes, the Needle Engine logo and branding can be removed with a [PRO license](https://www.needle.tools/pricing). This allows you to fully white-label your web experiences with your own branding.
161+
Yes, the Needle Engine logo and branding can be removed with an [EDU, PRO, or Enterprise license](https://www.needle.tools/pricing). This allows you to fully white-label your web experiences with your own branding.
162+
163+
The logo appears in the **NeedleMenu** — the bottom-center toolbar in your web experience. In Unity, this is controlled by the `NeedleMenu` component. In code, you can access it via `this.context.menu`.
164+
165+
With a qualifying license, the Needle logo and branding button are automatically removed from the menu.
166+
167+
## How do I remove the bottom bar / NeedleMenu?
168+
169+
The bottom-center toolbar is the **NeedleMenu**. To remove it entirely, delete or disable the `NeedleMenu` component in Unity. In code, you can access it via `this.context.menu`.
170+
171+
Note that removing the Needle branding button from the menu requires an [EDU, PRO, or Enterprise license](https://www.needle.tools/pricing). With a Basic license the branding button must remain visible.
162172

163173
# Installation & Setup
164174

@@ -261,6 +271,36 @@ Then run `npm install` to install the overridden version and restart your dev se
261271

262272
Once you're done testing, remove the `npm:` prefix and restore the original version, or update your Unity/Blender package to match.
263273

274+
## I get 'Failed to resolve import "./register_types.js"' after upgrading from Needle Engine 3.x to 5.x
275+
276+
If you see an error like this after opening your web project:
277+
278+
```
279+
Failed to resolve import "./register_types.js" from "src/generated/gen.js". Does the file exist?
280+
```
281+
282+
This is caused by your web project still using **Vite 4**, which is incompatible with Needle Engine 4.x and later. You need to update your project's build tooling to **Vite 8**.
283+
284+
**Update the following in your `package.json`:**
285+
286+
```json
287+
{
288+
"devDependencies": {
289+
"vite": "^8.0.0",
290+
"@vitejs/plugin-basic-ssl": "2",
291+
"vite-plugin-compression2": "^2.5.2"
292+
}
293+
}
294+
```
295+
296+
::: tip
297+
If your project previously used `vite-plugin-compression` (v1), replace it with `vite-plugin-compression2` and update any imports in your `vite.config.js` accordingly.
298+
:::
299+
300+
After updating `package.json`, delete your `node_modules` folder and `package-lock.json`, then run `npm install` again.
301+
302+
You can use the [Vite template](https://github.com/needle-engine/vite-template) as a reference for the correct project setup and dependencies.
303+
264304
## What are package.json and package-lock.json?
265305

266306
See [Project Structure – package.json](/docs/explanation/core-concepts/project-structure#understanding-files-and-folders-in-the-web-project) for a full explanation of these files and how they relate to your project.
@@ -410,6 +450,29 @@ Both cause the component compiler to generate `public UnityEngine.Font font;` in
410450

411451
# Rendering & Visuals
412452

453+
## Can I use camera stacking (URP overlay cameras) to render UI without post-processing?
454+
455+
No, Unity's URP camera stacking is not supported in Needle Engine. The overlay camera concept does not translate to the three.js rendering pipeline used under the hood.
456+
457+
**Alternatives for rendering world-space UI above the 3D scene without post-processing:**
458+
459+
- **HTML/CSS overlay:** Use HTML elements positioned over the 3D canvas. This naturally bypasses post-processing since it's outside the WebGL context and is the recommended approach for most UI.
460+
- **Custom render pass:** Implement a second render pass using three.js render layers with `autoClear` disabled in a custom component.
461+
462+
## I can't set camera clear flags or priority in Unity (URP)
463+
464+
In Unity's Universal Render Pipeline, clear flags and camera priority cannot be configured from the Inspector UI for Needle Engine export. These settings must be set from code at runtime.
465+
466+
In your TypeScript component, you can access the camera's clear flags via the three.js camera and renderer:
467+
468+
```ts
469+
// Example: set clear flags in code
470+
this.context.renderer.autoClear = false;
471+
this.context.renderer.setClearColor(0x000000, 0); // transparent background
472+
```
473+
474+
Camera stacking and overlay cameras from URP are [not supported](#can-i-use-camera-stacking-urp-overlay-cameras-to-render-ui-without-post-processing).
475+
413476
## My objects are white after export
414477
This usually happens when you're using custom shaders or materials and their properties don't cleanly translate to known property names for glTF export.
415478
You can either make sure you're using glTF-compatible materials and shaders, or mark shaders as "custom" to export them directly.

0 commit comments

Comments
 (0)