mirror of
https://github.com/nerfstudio-project/nerfstudio.git
synced 2026-11-13 03:14:00 +08:00
* Copy in `viser` communication infrastructure * Update background image * Add build directory to fix viser HTTP server May want to remove these later * Copy in `viser` communication infrastructure * Update background image * Pass dataset vis using viser * initial impl of ViewerParameter * idk what i did but brent and matt know * Suppress eslint typescript warnings * implement ViewerElement base class, then ViewerButton, ViewerSlider, etc * client -> server message setup * multi folder stuff * Stream controls over viser * import * add types to viewer_param.py * Move another message to viser * Update folder color * Use non throttled messages * multiple folders works * Cleanup, more porting * starting impl of control panel in viser * More porting * scenebox to viser * Cleanup * Fix render updates * More cleanup, docs, typing * start control_panel.py * set_hidden logic but not merged in * control_panel replicates behavior of existing control panel (visually), except for setting the list of output options. not yet integrated with viewer_utils.py for logic flow. also implemented set_disabled and set_hidden in javscript/ViewerElement side * Remove some original leva components * add some train util logic, attempt set_value, doesn't work on javascript side fully yet (value updates but not slider visually * bye zmq * missing call to decoder * 'gui_set' works properly, control panel now replicates behavior of original * remove print * Fix status viewer message * More cleanup * support set_options in dropdown * hiding buttons works correctly * fix set_options, switch from cur_value to get_value() * Fix slowdown * output options * colormap logic converted * add handle to cb_hook * fix some lambda bugs * cleanup * Save checkpoint logic readded * Cleanup and minor fixes * snappier ui * Refactoring * Fix state update bugs * Bug fixes * Write less to redux * added comments to reducer code * Render state machine (#1727) * state machine works, but train step throttling not implemented * more step logic, cleanup * remove random try catcH * mutex logic for render * Update lock logic * types and docs * added some state machine logic to help rerenders * merge --------- Co-authored-by: Justin <justin.g.kerr@gmail.com> * Refactor and cleanup * More cleanup and docs * docstring to gui_utils * docstrings, rename viewer_param.py to viewer_elements.py * Fix viewer, remove bridge stuff * Render on connect * Fix lint errors * More eslint fixes * render_freq logic * better rerender logic for crop * More cleanup * Purge * Cleanup * Lint fixes * Fix cache * better parsing logic * Fix infinite test * More cleanup * typo * Update webdocs * Update docs * rerender on custom hooks * add more docs * Use shared utilities in `viser.infra` * rework callback to use elements instead of handles * Fix ESlint errors * change naming of handle to element, add setter for value * cleanup --------- Co-authored-by: Matt Tancik <mattt4001@gmail.com> Co-authored-by: Justin <justin.g.kerr@gmail.com> Co-authored-by: Ethan Weber <eweb0124@gmail.com> Co-authored-by: Matthew Tancik <tancik@berkeley.edu>
63 lines
1.4 KiB
Markdown
63 lines
1.4 KiB
Markdown
# Local Server
|
|
|
|
If you are unable to connect to `https://viewer.nerf.studio`, want to use Safari, or want develop the viewer codebase, you can launch your own local viewer.
|
|
|
|
## Installing Dependencies
|
|
|
|
```shell
|
|
cd nerfstudio/viewer/app
|
|
```
|
|
|
|
Install npm (to install yarn) and yarn
|
|
|
|
```shell
|
|
sudo apt-get install npm
|
|
npm install --global yarn
|
|
```
|
|
|
|
Install nvm and set the node version
|
|
Install nvm with [instructions](https://heynode.com/tutorial/install-nodejs-locally-nvm/).
|
|
|
|
```shell
|
|
nvm install 17.8.0
|
|
```
|
|
|
|
Now running `node --version` in the shell should print "v17.8.0".
|
|
Install package.json dependencies and start the client viewer app:
|
|
|
|
```shell
|
|
yarn install
|
|
```
|
|
|
|
## Launch the web client
|
|
|
|
From the `nerfstudio/viewer/app` folder, run:
|
|
|
|
```shell
|
|
yarn start
|
|
```
|
|
|
|
The local webserver runs on port 4000 by default,
|
|
so when `ns-train` is running, you can connect to the viewer locally at
|
|
[http://localhost:4000/?websocket_url=ws://localhost:7007](http://localhost:4000/?websocket_url=ws://localhost:7007)
|
|
|
|
## FAQ
|
|
|
|
### Engine node incompatible
|
|
|
|
While running `yarn install`, you run into: `The engine "node" is incompatible with this module.`
|
|
|
|
**Solution**:
|
|
|
|
Install nvm with instructions at [instructions](https://heynode.com/tutorial/install-nodejs-locally-nvm/).
|
|
|
|
```shell
|
|
nvm install 17.8.0
|
|
```
|
|
|
|
If you cannot install nvm, try ignoring the engines
|
|
|
|
```shell
|
|
yarn install --ignore-engines
|
|
```
|