├── .gitignore ├── INSTALL.md ├── LICENSE ├── README.md ├── editor ├── .gitignore ├── config.json ├── css │ ├── drive.css │ ├── extra │ │ └── jquery.jscrollpane.css │ ├── litegraph-editor.css │ ├── litegraph.css │ ├── litegui.css │ ├── litegui_.css │ ├── simple.css │ ├── style.css │ ├── style_visor.css │ └── ui-lightness │ │ ├── images │ │ ├── ui-bg_diagonals-thick_18_b81900_40x40.png │ │ ├── ui-bg_diagonals-thick_20_666666_40x40.png │ │ ├── ui-bg_flat_10_000000_40x100.png │ │ ├── ui-bg_glass_100_f6f6f6_1x400.png │ │ ├── ui-bg_glass_100_fdf5ce_1x400.png │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ ├── ui-bg_gloss-wave_35_f6a828_500x100.png │ │ ├── ui-bg_highlight-soft_100_eeeeee_1x100.png │ │ ├── ui-bg_highlight-soft_75_ffe45c_1x100.png │ │ ├── ui-icons_222222_256x240.png │ │ ├── ui-icons_228ef1_256x240.png │ │ ├── ui-icons_ef8c08_256x240.png │ │ ├── ui-icons_ffd27a_256x240.png │ │ └── ui-icons_ffffff_256x240.png │ │ └── jquery-ui-1.8.17.custom.css ├── data │ ├── bell.wav │ └── shaders.xml ├── favicon.ico ├── favicon.png ├── imgs │ ├── close-icon.png │ ├── dragger-icon.png │ ├── gizmo-camera.png │ ├── gizmo-light.png │ ├── gizmo-reflection.png │ ├── grid.png │ ├── icon-folder.png │ ├── icon-gear.png │ ├── icon-less.png │ ├── icon-plus.png │ ├── icons-timeline.png │ ├── litegraph_grid.png │ ├── loader.gif │ ├── mini-cog.png │ ├── mini-icon-ball.png │ ├── mini-icon-bg.png │ ├── mini-icon-billboard.png │ ├── mini-icon-brush.png │ ├── mini-icon-camera.png │ ├── mini-icon-cameracontroller.png │ ├── mini-icon-center.png │ ├── mini-icon-circle.png │ ├── mini-icon-clock.png │ ├── mini-icon-cloner.png │ ├── mini-icon-collider.png │ ├── mini-icon-colorpicker.png │ ├── mini-icon-component.png │ ├── mini-icon-cube.png │ ├── mini-icon-cursor.png │ ├── mini-icon-daynight.png │ ├── mini-icon-depth.png │ ├── mini-icon-dome.png │ ├── mini-icon-file.png │ ├── mini-icon-file2.png │ ├── mini-icon-film.png │ ├── mini-icon-finger.png │ ├── mini-icon-fog.png │ ├── mini-icon-folder.png │ ├── mini-icon-follow.png │ ├── mini-icon-frame.png │ ├── mini-icon-fx.png │ ├── mini-icon-gear.png │ ├── mini-icon-gizmo.png │ ├── mini-icon-graph.png │ ├── mini-icon-grid.png │ ├── mini-icon-gui.png │ ├── mini-icon-hand.png │ ├── mini-icon-hdp.png │ ├── mini-icon-js.png │ ├── mini-icon-knob.png │ ├── mini-icon-light.png │ ├── mini-icon-lightfx.png │ ├── mini-icon-lines.png │ ├── mini-icon-local-coords.png │ ├── mini-icon-lookAt.png │ ├── mini-icon-mask.png │ ├── mini-icon-material.png │ ├── mini-icon-materialres.png │ ├── mini-icon-mesh.png │ ├── mini-icon-meshres.png │ ├── mini-icon-node.png │ ├── mini-icon-orbit.png │ ├── mini-icon-particles.png │ ├── mini-icon-photo.png │ ├── mini-icon-play.png │ ├── mini-icon-points.png │ ├── mini-icon-points_tool.png │ ├── mini-icon-question.png │ ├── mini-icon-reflector.png │ ├── mini-icon-refresh.png │ ├── mini-icon-rotate.png │ ├── mini-icon-rotator.png │ ├── mini-icon-scale.png │ ├── mini-icon-script.png │ ├── mini-icon-shapes.png │ ├── mini-icon-sprite.png │ ├── mini-icon-stickman.png │ ├── mini-icon-teapot.png │ ├── mini-icon-terrain.png │ ├── mini-icon-test.png │ ├── mini-icon-tetra.png │ ├── mini-icon-text.png │ ├── mini-icon-texture.png │ ├── mini-icon-tool.png │ ├── mini-icon-trash.png │ ├── mini-icon-tree.png │ ├── mini-icon-video.png │ ├── mini-icon-world-coords.png │ ├── tabicon-code.png │ ├── tabicon-debug.png │ ├── tabicon-drive.png │ ├── tabicon-graph.png │ ├── tabicon-player.png │ ├── tabicon-profiling.png │ ├── tabicon-scene.png │ ├── tabicon-settings.png │ ├── tabicon-shaders.png │ ├── tabicon-timeline.png │ ├── tabicon-user.png │ ├── tree_lines_16x16.png │ └── webglstudio-icon.png ├── imports.json ├── index.html ├── js │ ├── core.js │ ├── extra │ │ ├── Canvas2DtoWebGL.js │ │ ├── canvas-to-blob.js │ │ ├── codemirror │ │ │ ├── blackboard.css │ │ │ ├── clike.js │ │ │ ├── codemirror.css │ │ │ ├── codemirror.js │ │ │ ├── css.js │ │ │ ├── hint │ │ │ │ ├── anyword-hint.js │ │ │ │ ├── css-hint.js │ │ │ │ ├── html-hint.js │ │ │ │ ├── javascript-hint.js │ │ │ │ ├── show-hint.css │ │ │ │ ├── show-hint.js │ │ │ │ ├── sql-hint.js │ │ │ │ └── xml-hint.js │ │ │ ├── javascript.js │ │ │ ├── lint │ │ │ │ └── javascript-lint.js │ │ │ ├── scroll │ │ │ │ ├── annotatescrollbar.js │ │ │ │ ├── scrollpastend.js │ │ │ │ ├── simplescrollbars.css │ │ │ │ └── simplescrollbars.js │ │ │ ├── search │ │ │ │ ├── jump-to-line.js │ │ │ │ ├── match-highlighter.js │ │ │ │ ├── matchesonscrollbar.css │ │ │ │ ├── matchesonscrollbar.js │ │ │ │ ├── search.js │ │ │ │ └── searchcursor.js │ │ │ ├── selection │ │ │ │ ├── active-line.js │ │ │ │ ├── mark-selection.js │ │ │ │ └── selection-pointer.js │ │ │ └── xml.js │ │ ├── gl-matrix-min.js │ │ ├── jscolor │ │ │ ├── arrow.gif │ │ │ ├── cross.gif │ │ │ ├── demo.html │ │ │ ├── hs.png │ │ │ ├── hv.png │ │ │ └── jscolor.js │ │ ├── jszip.js │ │ ├── jszip.min.js │ │ ├── litefileserver.js │ │ ├── litegl.js │ │ ├── litegl.min.js │ │ ├── litegraph.core.js │ │ ├── litegraph.core.min.js │ │ ├── litegraph.js │ │ ├── litegraph.min.js │ │ ├── litegraph_mini.js │ │ ├── litegraph_mini.min.js │ │ ├── litegui.css │ │ ├── litegui.js │ │ ├── litegui.min.js │ │ ├── onecore.js │ │ ├── onecore.min.js │ │ ├── pako.js │ │ └── sillyclient.js │ ├── modules │ │ ├── about.js │ │ ├── actions.js │ │ ├── actors.js │ │ ├── animation.js │ │ ├── annotation.js │ │ ├── cameraTools.js │ │ ├── capture.js │ │ ├── coding.js │ │ ├── collaborate.js │ │ ├── componentEditors.js │ │ ├── cubemapTools.js │ │ ├── drive.js │ │ ├── editor.js │ │ ├── editorView.js │ │ ├── export.js │ │ ├── fpsCounter.js │ │ ├── generic.js │ │ ├── graph.js │ │ ├── importer.js │ │ ├── interface.js │ │ ├── intro.js │ │ ├── lab.js │ │ ├── lfsbridge.js │ │ ├── lightmaps.js │ │ ├── localFilesBridge.js │ │ ├── materialEditors.js │ │ ├── meshPainter.js │ │ ├── meshTools.js │ │ ├── notify.js │ │ ├── packTools.js │ │ ├── play.js │ │ ├── plugins.js │ │ ├── preferences.js │ │ ├── profile.js │ │ ├── profiling.js │ │ ├── projectImporter.js │ │ ├── quickbar.js │ │ ├── render.js │ │ ├── sceneStorage.js │ │ ├── selection.js │ │ ├── shaders.js │ │ ├── textureTools.js │ │ ├── tools.js │ │ └── undo.js │ ├── tools │ │ ├── addPoints.js │ │ ├── camera.js │ │ ├── colorPicker.js │ │ ├── drag.js │ │ ├── generic.js │ │ ├── manipulate.js │ │ ├── move.js │ │ ├── parenting.js │ │ ├── rotate.js │ │ ├── scale.js │ │ ├── select.js │ │ ├── testCollisions.js │ │ └── volume.js │ ├── utils │ │ └── utils.js │ └── widgets │ │ ├── canvas │ │ ├── cameraGizmo.js │ │ ├── cameraPreview.js │ │ ├── canvasElement.js │ │ ├── canvasManager.js │ │ └── texturePreview.js │ │ ├── layoutViewport.js │ │ └── ui │ │ ├── codingPad.js │ │ ├── codingTabsWidget.js │ │ ├── collaborateWidget.js │ │ ├── consoleWidget.js │ │ ├── genericTabs.js │ │ ├── graphWidget.js │ │ ├── inspectorWidget.js │ │ ├── profilingWidget.js │ │ ├── resourcesPanel.js │ │ ├── sceneTree.js │ │ ├── sceneTreeCanvas.js │ │ ├── textureAreasWidget.js │ │ └── timeline.js ├── media │ ├── back_button.png │ ├── download.png │ ├── icons │ │ ├── mini-icon-brush.png │ │ ├── mini-icon-camera.png │ │ ├── mini-icon-cursor.png │ │ ├── mini-icon-file.png │ │ ├── mini-icon-fov.png │ │ ├── mini-icon-gear.png │ │ ├── mini-icon-gizmo.png │ │ ├── mini-icon-light.png │ │ ├── mini-icon-mesh.png │ │ ├── mini-icon-orbit.png │ │ ├── mini-icon-rotate.png │ │ └── mini-icon-scale.png │ ├── mini-icons.png │ ├── tree_lines_16x16.png │ └── tree_lines_bold_16x16.png ├── mobile.html └── player.html ├── guides ├── README.md ├── components.md ├── creating_shaders.md ├── editor_architecture.md ├── editor_scripts.md ├── file_system.md ├── graphs.md ├── imgs │ ├── readme.md │ ├── tutorial_shaders_1.png │ ├── tutorial_shaders_2.png │ ├── tutorial_shaders_3.png │ └── webglstudio_interface.png ├── plugins.md ├── tools.md └── tutorial.md ├── plugins ├── list.json └── scripts │ ├── ctmparser.js │ ├── daylight.js │ ├── deployer.js │ ├── extra │ ├── ctm.js │ └── lzma.js │ ├── fbxconv.js │ ├── mitsuba.js │ ├── recorder.js │ ├── retargeting.js │ ├── spritesheet.js │ └── unknownMesh.js ├── press └── images │ ├── interface.jpg │ └── logo.png ├── serverapps ├── fbxconv │ ├── README.md │ ├── fbx-conv-lin64 │ ├── fbxconv.php │ └── libfbxsdk.so ├── mitsuba │ ├── main.js │ ├── mitsuba.js │ ├── package-lock.json │ └── temp │ │ └── user_test │ │ ├── @RINS-9f5980-11d2e1-1f30fb6-46.obj │ │ ├── @RINS-9f5980-2083-1b5fd4d-4e.obj │ │ ├── @RINS-9f5980-2084-168b701-4f.obj │ │ ├── @RINS-9f5980-2084-1900798-50.obj │ │ ├── @RINS-9f5980-2084-19e42ff-52.obj │ │ ├── @RINS-9f5980-2084-1c3af86-53.obj │ │ ├── @RINS-9f5980-2084-1f915a1-51.obj │ │ ├── @RINS-9f5980-2714-169785e-f.obj │ │ ├── @RINS-9f5980-32d8-15f26e2-35.obj │ │ ├── @RINS-9f5980-35bb98d-107e017-57.obj │ │ ├── @RINS-9f5980-35ca2fa-118abd3-5c.obj │ │ ├── @RINS-9f5980-60fe1-1613676-3f.obj │ │ ├── @RINS-9f5980-67be1-19a1ad1-4a.obj │ │ ├── @RINS-9f5980-71f79-17c094e-50.obj │ │ ├── @RINS-9f5980-9510-1ea3b7d-37.obj │ │ ├── @RINS-9f5980-d96-1e203fb-32.obj │ │ ├── @RINS-9f5980-e58-164c7a8-41.obj │ │ ├── @RINS-9f5980-e5a-12e250a-43.obj │ │ ├── @RINS-9f5980-e5a-1a12c28-42.obj │ │ ├── @RINS-9f5980-e5a-1efb0b5-44.obj │ │ ├── @RINS-9f5980-eb7-13b13e7-33.obj │ │ ├── @RINS-9f5980-ee1-19e4455-32.obj │ │ ├── @RINS-d245a9-ddb-19adc4d-33.obj │ │ ├── @RINS-f9d3c2-94459-1702d5e-13.obj │ │ ├── @RINS-f9d3c2-96b38-1a3eb01-18.obj │ │ ├── @RINS-f9d3c2-97a1e-13204bf-1d.obj │ │ ├── @RINS-f9d3c2-99f61-1c772ee-21.obj │ │ ├── data.zip │ │ ├── guest │ │ └── meshes │ │ │ ├── Lee-normalmap-tangent.jpg │ │ │ ├── Lee.jpg │ │ │ ├── Lee.mip │ │ │ ├── Lee_spec.jpg │ │ │ └── lee_normal.obj.wbin.obj │ │ ├── scene.exr │ │ ├── scene.png │ │ └── scene.xml └── project_deployer │ ├── config.php │ ├── config.sample.php │ ├── deploy │ ├── 0fccbb99e8b3c7396b1bada3c5d17a72.json │ ├── 7a77fbaaa86bc65fb066c8661bfcf9af.json │ ├── c0d9421521b3502dcd6662abedd765c4.json │ ├── d37bd27143a3e73ed394d62548db0391.json │ └── testfoo2 │ │ ├── guest │ │ └── prefabs │ │ │ ├── furniture │ │ │ ├── mesa.wbin │ │ │ └── silla.wbin │ │ │ └── room.wbin │ │ └── scene.json │ └── deployer.php └── utils ├── repack.sh └── search.sh /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | -------------------------------------------------------------------------------- /INSTALL.md: -------------------------------------------------------------------------------- 1 | # Install 2 | 3 | First remember that to use WebGLStudio you need to install it in a server that has a http server installed to host websites. 4 | Also you will need to have shell access to that server to execute some scripts. 5 | 6 | ## Requirements 7 | 8 | You need to have installed an HTTP Server (Apache or nginx) with PHP support and MySQL. 9 | 10 | ## Download 11 | You need to download two projects from github: 12 | - LiteFileServer.js [ZIP](https://github.com/jagenjo/litefilesystem.js/archive/master.zip) 13 | - WebGLstudio.js [ZIP](https://github.com/jagenjo/webglstudio.js/archive/master.zip) 14 | 15 | ## Unpack 16 | Upload the files to your server and unpack them following the next steps: 17 | 18 | - Unpack the webglstudio ```editor/``` folder in a folder inside a public folder in your server. 19 | - Create a folder called ```fileserver/``` inside that folder 20 | - Unpack the litefileserver inside the ```fileserver/``` folder created 21 | 22 | ## Install LiteFileServer 23 | 24 | To install litefileserver follow this guide: [Guide to install LiteFileSystem](https://github.com/jagenjo/litefilesystem.js/blob/master/INSTALL.md) 25 | 26 | Check that your installation works by entering to the ```fileserver/``` folder from your browser. 27 | 28 | ## Configure 29 | 30 | Now we need to configure WebGLStudio, edit the config.json to specify where is the fileserver located ( the ```fileserver/``` folder ) and where are the files ( the ```fileserver/files``` folder ). 31 | By default they should have that name. 32 | 33 | ## Ready 34 | 35 | If everything was done propertly you should be able to enter to the webglstudio in your server and see everything working. 36 | 37 | 38 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright 2015 Javi Agenjo 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | WebGLStudio 3 |

4 | 5 | # OnEdit 6 | 7 | OnEdit is an open-source, browser-based 3D graphics suite. You can edit scenes and materials, design effects and shaders, code behaviours, and share your work - all within a browser using standard web technologies. 8 | 9 | Some important OnEdit features: 10 | 11 | * A full 3D graphics engine ([OneCore](https://github.com/onedit/onecore)) that supports multiple lights, shadowmaps, realtime reflections, custom materials, postFX, skinning, animation, and much more. 12 | * An easily extended, component-based system for controlling the rendering pipeline and interaction event hooks 13 | * An easy to use, what you see is what you get (WYSIWYG) editor that provides a single interface for all coding, graph compositing and timeline features. 14 | * A graph editor for controlling behaviours, shaders and post-processing effects, using [LiteGraph.js](https://github.com/jagenjo/litegraph.js). 15 | * Supports the [LiteFileSystem.js](https://github.com/jagenjo/litefilesystem.js), a virtual file system that allows drag-and-drop storage of resources on the web, with configurable quotas, users and shared folders. 16 | * Export and share your work by sending a single link. 17 | 18 | For more information, visit http:/onedit.org 19 | 20 | ![Interface](press/images/interface.jpg "Interface") 21 | 22 | Features missing: 23 | * Mesh editing, you cannot select faces and move them 24 | * Support for FBX, it has some sort of support but not fully functional 25 | * Physics 26 | 27 | 28 | Installing 29 | ---------- 30 | 31 | To install WebGLStudio.js, copy the editor files to your server, then install [LiteFileSystem.js](https://github.com/jagenjo/litefilesystem.js) into a `fileserver/` folder within the `editor/` directory. 32 | LiteFileSystem is a library that handles remote file storage. For more information, see the `/INSTALL.md` file and the [LiteFileSystem.js](https://github.com/jagenjo/litefilesystem.js) documentation. 33 | 34 | Feedback 35 | -------- 36 | 37 | Send all feedback to javi.agenjo@gmail.com 38 | -------------------------------------------------------------------------------- /editor/.gitignore: -------------------------------------------------------------------------------- 1 | fileserver 2 | fileserver/* 3 | -------------------------------------------------------------------------------- /editor/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "version":"0.6", 3 | "server":"fileserver/src/", 4 | "resources":"fileserver/files/", 5 | "proxy":"@/proxy.php?url=", 6 | "plugins":"js/plugins", 7 | "nocache": false, 8 | "scene_url":"scene.json" 9 | } 10 | -------------------------------------------------------------------------------- /editor/css/drive.css: -------------------------------------------------------------------------------- 1 | .drive-info { 2 | font-size: 1.4em; 3 | padding: 20px; 4 | } 5 | 6 | .drive-info h2 { 7 | color: white; 8 | } 9 | 10 | .drive-info h2 button { 11 | font-size: 1em; 12 | margin-left: 20px; 13 | } 14 | 15 | .drive-info .unit-item { 16 | width: 100%; 17 | background-color: #368; 18 | border-radius: 8px; 19 | margin: 10px; 20 | padding: 0.4em; 21 | cursor: pointer; 22 | } 23 | 24 | .drive-info .unit-item .title { 25 | color: white; 26 | font-size: 1.4em; 27 | width: 40%; 28 | display: inline-block; 29 | overflow: hidden; 30 | } 31 | 32 | .drive-info .unit-item .info { 33 | color: #FEFEFE; 34 | background-color: #222; 35 | padding: 2px 10px ; 36 | margin-left: 10px; 37 | border-radius: 4px; 38 | } 39 | 40 | ul.file-list li.file-item span.progress { 41 | position: absolute; 42 | top: 20px; 43 | left: 0; 44 | width: 100%; 45 | height: 0%; 46 | background-color: #AEF; 47 | display: block; 48 | } 49 | 50 | .resources-panel .unit { 51 | font-size: 1.3em; 52 | background-color: #1d1d1d; 53 | color: #93b3bd !important; 54 | border-top: 2px solid black; 55 | } 56 | 57 | .resources-panel .selected .unit { 58 | background-color: #2d2d2d; 59 | } 60 | 61 | -------------------------------------------------------------------------------- /editor/css/extra/jquery.jscrollpane.css: -------------------------------------------------------------------------------- 1 | /* 2 | * CSS Styles that are needed by jScrollPane for it to operate correctly. 3 | * 4 | * Include this stylesheet in your site or copy and paste the styles below into your stylesheet - jScrollPane 5 | * may not operate correctly without them. 6 | */ 7 | 8 | .jspContainer 9 | { 10 | overflow: hidden; 11 | position: relative; 12 | } 13 | 14 | .jspPane 15 | { 16 | position: absolute; 17 | } 18 | 19 | .jspVerticalBar 20 | { 21 | position: absolute; 22 | top: 0; 23 | right: 0; 24 | width: 16px; 25 | height: 100%; 26 | /*background: red;*/ 27 | } 28 | 29 | .jspHorizontalBar 30 | { 31 | position: absolute; 32 | bottom: 0; 33 | left: 0; 34 | width: 100%; 35 | height: 16px; 36 | /*background: red;*/ 37 | } 38 | 39 | .jspVerticalBar *, 40 | .jspHorizontalBar * 41 | { 42 | margin: 0; 43 | padding: 0; 44 | } 45 | 46 | .jspCap 47 | { 48 | display: none; 49 | } 50 | 51 | .jspHorizontalBar .jspCap 52 | { 53 | float: left; 54 | } 55 | 56 | .jspTrack 57 | { 58 | background: #333; 59 | position: relative; 60 | } 61 | 62 | .jspDrag 63 | { 64 | background: #89A; 65 | position: relative; 66 | top: 0; 67 | left: 0; 68 | cursor: pointer; 69 | margin-left: 2px; 70 | margin-right: 2px; 71 | } 72 | 73 | .jspHorizontalBar .jspTrack, 74 | .jspHorizontalBar .jspDrag 75 | { 76 | float: left; 77 | height: 100%; 78 | } 79 | 80 | .jspArrow 81 | { 82 | background: #50506d; 83 | text-indent: -20000px; 84 | display: block; 85 | cursor: pointer; 86 | } 87 | 88 | .jspArrow.jspDisabled 89 | { 90 | cursor: default; 91 | background: #80808d; 92 | } 93 | 94 | .jspVerticalBar .jspArrow 95 | { 96 | height: 16px; 97 | } 98 | 99 | .jspHorizontalBar .jspArrow 100 | { 101 | width: 16px; 102 | float: left; 103 | height: 100%; 104 | } 105 | 106 | .jspVerticalBar .jspArrow:focus 107 | { 108 | outline: none; 109 | } 110 | 111 | .jspCorner 112 | { 113 | background: #eeeef4; 114 | float: left; 115 | height: 100%; 116 | } 117 | 118 | /* Yuk! CSS Hack for IE6 3 pixel bug :( */ 119 | * html .jspCorner 120 | { 121 | margin: 0 -3px 0 0; 122 | } -------------------------------------------------------------------------------- /editor/css/simple.css: -------------------------------------------------------------------------------- 1 | html, body, #visor, h1,h2 { 2 | width: 100%; 3 | height: 100%; 4 | margin: 0; 5 | padding: 0; 6 | } 7 | 8 | body { 9 | font-family: Arial; 10 | color: white; 11 | } 12 | 13 | 14 | ul,li { margin: 0; padding: 0; list-style-type: none; } 15 | 16 | #menu, #topmenu { 17 | position: absolute; 18 | top: 0; 19 | left:0; 20 | } 21 | 22 | ul.icons { 23 | padding: 10px; 24 | } 25 | 26 | .icon { 27 | opacity: 0.5; 28 | transition: all 0.5s; 29 | height: 64px; 30 | cursor: pointer; 31 | } 32 | 33 | .icon:hover { 34 | opacity: 1; 35 | transition: all 0.5s; 36 | } 37 | 38 | #menu { 39 | left: -100px; 40 | width: 84px; 41 | height: 100%; 42 | background-color: rgba(0,0,0,0.5); 43 | transition: all 0.5s; 44 | } 45 | 46 | #scenes, #settings { 47 | display: none; 48 | position: absolute; 49 | top: 0; 50 | left:0; 51 | height: 100%; 52 | overflow: auto; 53 | } 54 | 55 | #scenes { 56 | background-color: #111; 57 | width: 100%; 58 | } 59 | 60 | #scenes, #settings { 61 | margin-left: 80px; 62 | } 63 | 64 | #scenes .list { 65 | } 66 | 67 | #scenes .scene { 68 | position: relative; 69 | display: inline-block; 70 | margin: 20px 8px; 71 | box-shadow: 2px 2px 4px black; 72 | cursor: pointer; 73 | border-radius: 4px; 74 | width: 200px; 75 | min-height: 256px; 76 | overflow: hidden; 77 | background-color: black; 78 | transition: 0.2s all; 79 | background-repeat: no-repeat; 80 | } 81 | 82 | .scene .title { 83 | position: absolute; 84 | bottom: 0; 85 | left: 0; 86 | width: 100%; 87 | padding: 10px; 88 | padding-bottom: 2px; 89 | color: rgba(255,255,255,0.5); 90 | background-color: rgba(0,0,0,0.5); 91 | font-size: 1.2em; 92 | /*text-shadow: 1px 1px 0 black;*/ 93 | background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.4) 80%, rgba(0,0,0,0) 100%); 94 | transition: 0.2s all; 95 | } 96 | 97 | .scene:hover { 98 | z-index: 1; 99 | transform: scale(1.2); 100 | -webkit-transform: scale(1.1,1.1); 101 | } 102 | 103 | .scene:hover .title { 104 | color: rgba(255,255,255,0.9); 105 | /*background-color: rgba(100,100,100,1);*/ 106 | } 107 | 108 | #loading { 109 | display: none; 110 | position: fixed; 111 | top: 0; 112 | left: 0; 113 | width: 40px; 114 | height: 40px; 115 | background: #333333 url('../imgs/loader.gif') no-repeat 4px 4px; 116 | border-radius: 4px; 117 | } 118 | 119 | #settings .content { 120 | width: 400px; 121 | height: 100%; 122 | overflow: hidden; 123 | background-color: rgba(0,0,0,0.5); 124 | transition: all linear 0.5s; 125 | } -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-icons_228ef1_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-icons_228ef1_256x240.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-icons_ef8c08_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-icons_ef8c08_256x240.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-icons_ffd27a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-icons_ffd27a_256x240.png -------------------------------------------------------------------------------- /editor/css/ui-lightness/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/css/ui-lightness/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /editor/data/bell.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/data/bell.wav -------------------------------------------------------------------------------- /editor/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/favicon.ico -------------------------------------------------------------------------------- /editor/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/favicon.png -------------------------------------------------------------------------------- /editor/imgs/close-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/close-icon.png -------------------------------------------------------------------------------- /editor/imgs/dragger-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/dragger-icon.png -------------------------------------------------------------------------------- /editor/imgs/gizmo-camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/gizmo-camera.png -------------------------------------------------------------------------------- /editor/imgs/gizmo-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/gizmo-light.png -------------------------------------------------------------------------------- /editor/imgs/gizmo-reflection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/gizmo-reflection.png -------------------------------------------------------------------------------- /editor/imgs/grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/grid.png -------------------------------------------------------------------------------- /editor/imgs/icon-folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/icon-folder.png -------------------------------------------------------------------------------- /editor/imgs/icon-gear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/icon-gear.png -------------------------------------------------------------------------------- /editor/imgs/icon-less.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/icon-less.png -------------------------------------------------------------------------------- /editor/imgs/icon-plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/icon-plus.png -------------------------------------------------------------------------------- /editor/imgs/icons-timeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/icons-timeline.png -------------------------------------------------------------------------------- /editor/imgs/litegraph_grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/litegraph_grid.png -------------------------------------------------------------------------------- /editor/imgs/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/loader.gif -------------------------------------------------------------------------------- /editor/imgs/mini-cog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-cog.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-ball.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-ball.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-bg.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-billboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-billboard.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-brush.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-brush.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-camera.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-cameracontroller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-cameracontroller.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-center.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-center.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-circle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-circle.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-clock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-clock.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-cloner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-cloner.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-collider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-collider.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-colorpicker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-colorpicker.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-component.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-component.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-cube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-cube.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-cursor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-cursor.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-daynight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-daynight.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-depth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-depth.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-dome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-dome.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-file.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-file2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-file2.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-film.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-film.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-finger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-finger.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-fog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-fog.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-folder.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-follow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-follow.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-frame.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-fx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-fx.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-gear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-gear.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-gizmo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-gizmo.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-graph.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-grid.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-gui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-gui.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-hand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-hand.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-hdp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-hdp.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-js.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-js.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-knob.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-knob.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-light.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-lightfx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-lightfx.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-lines.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-lines.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-local-coords.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-local-coords.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-lookAt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-lookAt.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-mask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-mask.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-material.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-material.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-materialres.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-materialres.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-mesh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-mesh.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-meshres.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-meshres.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-node.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-orbit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-orbit.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-particles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-particles.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-photo.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-play.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-points.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-points.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-points_tool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-points_tool.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-question.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-question.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-reflector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-reflector.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-refresh.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-rotate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-rotate.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-rotator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-rotator.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-scale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-scale.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-script.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-script.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-shapes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-shapes.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-sprite.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-stickman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-stickman.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-teapot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-teapot.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-terrain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-terrain.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-test.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-tetra.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-tetra.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-text.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-texture.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-tool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-tool.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-trash.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-tree.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-tree.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-video.png -------------------------------------------------------------------------------- /editor/imgs/mini-icon-world-coords.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/mini-icon-world-coords.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-code.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-debug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-debug.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-drive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-drive.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-graph.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-player.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-player.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-profiling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-profiling.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-scene.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-scene.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-settings.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-shaders.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-shaders.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-timeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-timeline.png -------------------------------------------------------------------------------- /editor/imgs/tabicon-user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tabicon-user.png -------------------------------------------------------------------------------- /editor/imgs/tree_lines_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/tree_lines_16x16.png -------------------------------------------------------------------------------- /editor/imgs/webglstudio-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/imgs/webglstudio-icon.png -------------------------------------------------------------------------------- /editor/imports.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 0.64, 3 | "imports":[ 4 | "js/extra/gl-matrix-min.js", 5 | "js/extra/litegl.js", 6 | "js/extra/litegraph.js", 7 | "js/extra/onecore.js", 8 | "js/extra/litefileserver.js", 9 | "js/extra/Canvas2DtoWebGL.js", 10 | "js/modules/interface.js", 11 | "js/widgets/layoutViewport.js", 12 | "js/modules/render.js", 13 | "js/modules/editor.js", 14 | "js/modules/actions.js", 15 | "js/modules/editorView.js", 16 | "js/modules/sceneStorage.js", 17 | "js/modules/selection.js", 18 | "js/modules/tools.js", 19 | "js/widgets/canvas/canvasManager.js", 20 | "js/widgets/canvas/canvasElement.js", 21 | "js/widgets/canvas/texturePreview.js", 22 | "js/widgets/canvas/cameraPreview.js", 23 | "js/tools/camera.js", 24 | "js/tools/move.js", 25 | "js/tools/rotate.js", 26 | "js/tools/scale.js", 27 | "js/tools/select.js", 28 | "js/tools/manipulate.js", 29 | "js/tools/parenting.js", 30 | "js/tools/addPoints.js", 31 | "js/tools/testCollisions.js", 32 | "js/tools/colorPicker.js", 33 | "js/tools/drag.js", 34 | "js/tools/volume.js", 35 | "js/tools/generic.js", 36 | "js/widgets/ui/sceneTreeCanvas.js", 37 | "js/widgets/ui/timeline.js", 38 | "js/widgets/ui/resourcesPanel.js", 39 | "js/widgets/ui/inspectorWidget.js", 40 | "js/widgets/ui/graphWidget.js", 41 | "js/widgets/ui/codingPad.js", 42 | "js/widgets/ui/codingTabsWidget.js", 43 | "js/widgets/ui/profilingWidget.js", 44 | "js/widgets/ui/textureAreasWidget.js", 45 | "js/widgets/ui/genericTabs.js", 46 | "js/widgets/ui/collaborateWidget.js", 47 | "js/widgets/ui/consoleWidget.js", 48 | "js/modules/intro.js", 49 | "js/modules/cameraTools.js", 50 | "js/modules/notify.js", 51 | "js/modules/preferences.js", 52 | "js/modules/drive.js", 53 | "js/modules/play.js", 54 | "js/modules/profile.js", 55 | "js/modules/componentEditors.js", 56 | "js/modules/materialEditors.js", 57 | "js/modules/lfsbridge.js", 58 | "js/modules/localFilesBridge.js", 59 | "js/modules/importer.js", 60 | "js/modules/projectImporter.js", 61 | "js/modules/plugins.js", 62 | "js/modules/fpsCounter.js", 63 | "js/widgets/canvas/cameraGizmo.js", 64 | "js/modules/coding.js", 65 | "js/modules/graph.js", 66 | "js/modules/quickbar.js", 67 | "js/modules/packTools.js", 68 | "js/modules/capture.js", 69 | "js/modules/generic.js", 70 | "js/modules/lab.js", 71 | "js/modules/shaders.js", 72 | "js/modules/profiling.js", 73 | "js/modules/export.js", 74 | "js/modules/animation.js", 75 | "js/modules/undo.js", 76 | "js/modules/collaborate.js", 77 | "js/modules/about.js" 78 | ], 79 | "async": [ 80 | "js/modules/meshPainter.js", 81 | "js/modules/meshTools.js", 82 | "js/modules/textureTools.js", 83 | "js/modules/lightmaps.js", 84 | "js/modules/annotation.js", 85 | "js/modules/actors.js", 86 | "js/modules/cubemapTools.js" 87 | ] 88 | } 89 | -------------------------------------------------------------------------------- /editor/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | WebGLStudio 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/blackboard.css: -------------------------------------------------------------------------------- 1 | /* Port of TextMate's Blackboard theme */ 2 | 3 | .cm-s-blackboard.CodeMirror { background: #1D1D1D; color: #F8F8F8; } /* #111 */ 4 | .cm-s-blackboard .CodeMirror-selected { background: #253B76; } /* */ 5 | .cm-s-blackboard .CodeMirror-gutters { background: #0C1021; border-right: 0; } /* */ 6 | .cm-s-blackboard .CodeMirror-linenumber { color: #717175; } 7 | .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7 !important; } 8 | .cm-s-blackboard .CodeMirror-activeline { background: #303030 !important; } 9 | 10 | .cm-s-blackboard .cm-keyword { color: #FBDE2D; } 11 | .cm-s-blackboard .cm-atom { color: #D8FA3C; } 12 | .cm-s-blackboard .cm-number { color: #D8FA3C; } 13 | .cm-s-blackboard .cm-def { color: #8DA6CE; } 14 | .cm-s-blackboard .cm-variable { color: #FF6400; } 15 | .cm-s-blackboard .cm-operator { color: #FBDE2D;} 16 | .cm-s-blackboard .cm-comment { color: #AEAEAE; } 17 | .cm-s-blackboard .cm-string { color: #61CE3C; } 18 | .cm-s-blackboard .cm-string-2 { color: #61CE3C; } 19 | .cm-s-blackboard .cm-meta { color: #D8FA3C; } 20 | .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; } 21 | .cm-s-blackboard .cm-builtin { color: #8DA6CE; } 22 | .cm-s-blackboard .cm-tag { color: #8DA6CE; } 23 | .cm-s-blackboard .cm-attribute { color: #8DA6CE; } 24 | .cm-s-blackboard .cm-header { color: #FF6400; } 25 | .cm-s-blackboard .cm-hr { color: #AEAEAE; } 26 | .cm-s-blackboard .cm-link { color: #8DA6CE; } 27 | 28 | 29 | /* TAMAT */ 30 | 31 | .CodeMirror { 32 | /*font-family: Source Code !important;*/ 33 | color: #AAA !important; 34 | font-size: 15px; 35 | height: 100% !important; 36 | } 37 | 38 | .CodeMirror-scroll { 39 | height: 100%; 40 | background-color: transparent; 41 | } 42 | 43 | /* 44 | .cm-s-blackboard .CodeMirror-gutter { background-color: #1a1a1a !important; z-index: 0; } 45 | .cm-s-blackboard .CodeMirror-linenumber { color: #444; } 46 | .cm-s-blackboard .cm-comment { color: #64614e !important; } 47 | .cm-s-blackboard .cm-keyword { color: #be275e !important; } 48 | .cm-s-blackboard .cm-string { color: #FF88FF !important; } 49 | .cm-s-blackboard .cm-def { color: #AAFFAA !important; } 50 | .cm-s-blackboard .cm-variable { color: #AAAAFF !important; } 51 | .cm-s-blackboard .cm-property { color: #AAAAAA !important; } 52 | .cm-s-blackboard .cm-variable-2 { color: #B99 !important; } 53 | */ 54 | 55 | /* smooth */ 56 | .cm-s-blackboard .CodeMirror-gutter { background-color: #303030 !important; z-index: 0; } 57 | .cm-s-blackboard .CodeMirror-linenumber { color: #717175; } 58 | .cm-s-blackboard .cm-comment { color: #7bad7c !important; } 59 | .cm-s-blackboard .cm-keyword { color: #fed6af !important; } 60 | .cm-s-blackboard .cm-string { color: #d68686 !important; } 61 | .cm-s-blackboard .cm-def { color: #ffb5ff !important; } 62 | .cm-s-blackboard .cm-variable { color: #bed6ff !important; } 63 | .cm-s-blackboard .cm-property { color: #d8d8d8 !important; } 64 | .cm-s-blackboard .cm-variable-2 { color: #B99 !important; } 65 | .cm-s-blackboard .cm-number { color: #ffb5ff !important; } 66 | 67 | 68 | 69 | .CodeMirror-hints { 70 | background-color: black; 71 | color: #AAA; 72 | border-radius: 0; 73 | border: 0; 74 | } 75 | 76 | span.CodeMirror-matchhighlight { background: rgba(50,50,80,0.5); border-radius: 2px; outline: 1px solid #889; } 77 | 78 | .CodeMirror pre { 79 | /*z-index: auto !important;*/ 80 | } 81 | 82 | .CodeMirror-activeline-background { 83 | background-color: inherit; 84 | } -------------------------------------------------------------------------------- /editor/js/extra/codemirror/hint/anyword-hint.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | var WORD = /[\w$]+/, RANGE = 500; 15 | 16 | CodeMirror.registerHelper("hint", "anyword", function(editor, options) { 17 | var word = options && options.word || WORD; 18 | var range = options && options.range || RANGE; 19 | var cur = editor.getCursor(), curLine = editor.getLine(cur.line); 20 | var end = cur.ch, start = end; 21 | while (start && word.test(curLine.charAt(start - 1))) --start; 22 | var curWord = start != end && curLine.slice(start, end); 23 | 24 | var list = options && options.list || [], seen = {}; 25 | var re = new RegExp(word.source, "g"); 26 | for (var dir = -1; dir <= 1; dir += 2) { 27 | var line = cur.line, endLine = Math.min(Math.max(line + dir * range, editor.firstLine()), editor.lastLine()) + dir; 28 | for (; line != endLine; line += dir) { 29 | var text = editor.getLine(line), m; 30 | while (m = re.exec(text)) { 31 | if (line == cur.line && m[0] === curWord) continue; 32 | if ((!curWord || m[0].lastIndexOf(curWord, 0) == 0) && !Object.prototype.hasOwnProperty.call(seen, m[0])) { 33 | seen[m[0]] = true; 34 | list.push(m[0]); 35 | } 36 | } 37 | } 38 | } 39 | return {list: list, from: CodeMirror.Pos(cur.line, start), to: CodeMirror.Pos(cur.line, end)}; 40 | }); 41 | }); 42 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/hint/css-hint.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror"), require("../../mode/css/css")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror", "../../mode/css/css"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | var pseudoClasses = {link: 1, visited: 1, active: 1, hover: 1, focus: 1, 15 | "first-letter": 1, "first-line": 1, "first-child": 1, 16 | before: 1, after: 1, lang: 1}; 17 | 18 | CodeMirror.registerHelper("hint", "css", function(cm) { 19 | var cur = cm.getCursor(), token = cm.getTokenAt(cur); 20 | var inner = CodeMirror.innerMode(cm.getMode(), token.state); 21 | if (inner.mode.name != "css") return; 22 | 23 | if (token.type == "keyword" && "!important".indexOf(token.string) == 0) 24 | return {list: ["!important"], from: CodeMirror.Pos(cur.line, token.start), 25 | to: CodeMirror.Pos(cur.line, token.end)}; 26 | 27 | var start = token.start, end = cur.ch, word = token.string.slice(0, end - start); 28 | if (/[^\w$_-]/.test(word)) { 29 | word = ""; start = end = cur.ch; 30 | } 31 | 32 | var spec = CodeMirror.resolveMode("text/css"); 33 | 34 | var result = []; 35 | function add(keywords) { 36 | for (var name in keywords) 37 | if (!word || name.lastIndexOf(word, 0) == 0) 38 | result.push(name); 39 | } 40 | 41 | var st = inner.state.state; 42 | if (st == "pseudo" || token.type == "variable-3") { 43 | add(pseudoClasses); 44 | } else if (st == "block" || st == "maybeprop") { 45 | add(spec.propertyKeywords); 46 | } else if (st == "prop" || st == "parens" || st == "at" || st == "params") { 47 | add(spec.valueKeywords); 48 | add(spec.colorKeywords); 49 | } else if (st == "media" || st == "media_parens") { 50 | add(spec.mediaTypes); 51 | add(spec.mediaFeatures); 52 | } 53 | 54 | if (result.length) return { 55 | list: result, 56 | from: CodeMirror.Pos(cur.line, start), 57 | to: CodeMirror.Pos(cur.line, end) 58 | }; 59 | }); 60 | }); 61 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/hint/show-hint.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-hints { 2 | position: absolute; 3 | z-index: 10; 4 | overflow: hidden; 5 | list-style: none; 6 | 7 | margin: 0; 8 | padding: 2px; 9 | 10 | -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 11 | -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 12 | box-shadow: 2px 3px 5px rgba(0,0,0,.2); 13 | border-radius: 3px; 14 | border: 1px solid silver; 15 | 16 | background: white; 17 | font-size: 90%; 18 | font-family: monospace; 19 | 20 | max-height: 20em; 21 | overflow-y: auto; 22 | } 23 | 24 | .CodeMirror-hint { 25 | margin: 0; 26 | padding: 0 4px; 27 | border-radius: 2px; 28 | max-width: 19em; 29 | overflow: hidden; 30 | white-space: pre; 31 | color: black; 32 | cursor: pointer; 33 | } 34 | 35 | li.CodeMirror-hint-active { 36 | background: #08f; 37 | color: white; 38 | } 39 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/scroll/scrollpastend.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | CodeMirror.defineOption("scrollPastEnd", false, function(cm, val, old) { 15 | if (old && old != CodeMirror.Init) { 16 | cm.off("change", onChange); 17 | cm.off("refresh", updateBottomMargin); 18 | cm.display.lineSpace.parentNode.style.paddingBottom = ""; 19 | cm.state.scrollPastEndPadding = null; 20 | } 21 | if (val) { 22 | cm.on("change", onChange); 23 | cm.on("refresh", updateBottomMargin); 24 | updateBottomMargin(cm); 25 | } 26 | }); 27 | 28 | function onChange(cm, change) { 29 | if (CodeMirror.changeEnd(change).line == cm.lastLine()) 30 | updateBottomMargin(cm); 31 | } 32 | 33 | function updateBottomMargin(cm) { 34 | var padding = ""; 35 | if (cm.lineCount() > 1) { 36 | var totalH = cm.display.scroller.clientHeight - 30, 37 | lastLineH = cm.getLineHandle(cm.lastLine()).height; 38 | padding = (totalH - lastLineH) + "px"; 39 | } 40 | if (cm.state.scrollPastEndPadding != padding) { 41 | cm.state.scrollPastEndPadding = padding; 42 | cm.display.lineSpace.parentNode.style.paddingBottom = padding; 43 | cm.setSize(); 44 | } 45 | } 46 | }); 47 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/scroll/simplescrollbars.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-simplescroll-horizontal div, .CodeMirror-simplescroll-vertical div { 2 | position: absolute; 3 | background: #ccc; 4 | -moz-box-sizing: border-box; 5 | box-sizing: border-box; 6 | border: 1px solid #bbb; 7 | border-radius: 2px; 8 | } 9 | 10 | .CodeMirror-simplescroll-horizontal, .CodeMirror-simplescroll-vertical { 11 | position: absolute; 12 | z-index: 6; 13 | background: #eee; 14 | } 15 | 16 | .CodeMirror-simplescroll-horizontal { 17 | bottom: 0; left: 0; 18 | height: 8px; 19 | } 20 | .CodeMirror-simplescroll-horizontal div { 21 | bottom: 0; 22 | height: 100%; 23 | } 24 | 25 | .CodeMirror-simplescroll-vertical { 26 | right: 0; top: 0; 27 | width: 8px; 28 | } 29 | .CodeMirror-simplescroll-vertical div { 30 | right: 0; 31 | width: 100%; 32 | } 33 | 34 | 35 | .CodeMirror-overlayscroll .CodeMirror-scrollbar-filler, .CodeMirror-overlayscroll .CodeMirror-gutter-filler { 36 | display: none; 37 | } 38 | 39 | .CodeMirror-overlayscroll-horizontal div, .CodeMirror-overlayscroll-vertical div { 40 | position: absolute; 41 | background: #bcd; 42 | border-radius: 3px; 43 | } 44 | 45 | .CodeMirror-overlayscroll-horizontal, .CodeMirror-overlayscroll-vertical { 46 | position: absolute; 47 | z-index: 6; 48 | } 49 | 50 | .CodeMirror-overlayscroll-horizontal { 51 | bottom: 0; left: 0; 52 | height: 6px; 53 | } 54 | .CodeMirror-overlayscroll-horizontal div { 55 | bottom: 0; 56 | height: 100%; 57 | } 58 | 59 | .CodeMirror-overlayscroll-vertical { 60 | right: 0; top: 0; 61 | width: 6px; 62 | } 63 | .CodeMirror-overlayscroll-vertical div { 64 | right: 0; 65 | width: 100%; 66 | } 67 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/search/jump-to-line.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | // Defines jumpToLine command. Uses dialog.js if present. 5 | 6 | (function(mod) { 7 | if (typeof exports == "object" && typeof module == "object") // CommonJS 8 | mod(require("../../lib/codemirror"), require("../dialog/dialog")); 9 | else if (typeof define == "function" && define.amd) // AMD 10 | define(["../../lib/codemirror", "../dialog/dialog"], mod); 11 | else // Plain browser env 12 | mod(CodeMirror); 13 | })(function(CodeMirror) { 14 | "use strict"; 15 | 16 | function dialog(cm, text, shortText, deflt, f) { 17 | if (cm.openDialog) cm.openDialog(text, f, {value: deflt, selectValueOnOpen: true}); 18 | else f(prompt(shortText, deflt)); 19 | } 20 | 21 | var jumpDialog = 22 | 'Jump to line: (Use line:column or scroll% syntax)'; 23 | 24 | function interpretLine(cm, string) { 25 | var num = Number(string) 26 | if (/^[-+]/.test(string)) return cm.getCursor().line + num 27 | else return num - 1 28 | } 29 | 30 | CodeMirror.commands.jumpToLine = function(cm) { 31 | var cur = cm.getCursor(); 32 | dialog(cm, jumpDialog, "Jump to line:", (cur.line + 1) + ":" + cur.ch, function(posStr) { 33 | if (!posStr) return; 34 | 35 | var match; 36 | if (match = /^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(posStr)) { 37 | cm.setCursor(interpretLine(cm, match[1]), Number(match[2])) 38 | } else if (match = /^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(posStr)) { 39 | var line = Math.round(cm.lineCount() * Number(match[1]) / 100); 40 | if (/^[-+]/.test(match[1])) line = cur.line + line + 1; 41 | cm.setCursor(line - 1, cur.ch); 42 | } else if (match = /^\s*\:?\s*([\+\-]?\d+)\s*/.exec(posStr)) { 43 | cm.setCursor(interpretLine(cm, match[1]), cur.ch); 44 | } 45 | }); 46 | }; 47 | 48 | CodeMirror.keyMap["default"]["Alt-G"] = "jumpToLine"; 49 | }); 50 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/search/matchesonscrollbar.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-search-match { 2 | background: gold; 3 | border-top: 1px solid orange; 4 | border-bottom: 1px solid orange; 5 | -moz-box-sizing: border-box; 6 | box-sizing: border-box; 7 | opacity: .5; 8 | } 9 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/selection/active-line.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | // Because sometimes you need to style the cursor's line. 5 | // 6 | // Adds an option 'styleActiveLine' which, when enabled, gives the 7 | // active line's wrapping
the CSS class "CodeMirror-activeline", 8 | // and gives its background
the class "CodeMirror-activeline-background". 9 | 10 | (function(mod) { 11 | if (typeof exports == "object" && typeof module == "object") // CommonJS 12 | mod(require("../../lib/codemirror")); 13 | else if (typeof define == "function" && define.amd) // AMD 14 | define(["../../lib/codemirror"], mod); 15 | else // Plain browser env 16 | mod(CodeMirror); 17 | })(function(CodeMirror) { 18 | "use strict"; 19 | var WRAP_CLASS = "CodeMirror-activeline"; 20 | var BACK_CLASS = "CodeMirror-activeline-background"; 21 | 22 | CodeMirror.defineOption("styleActiveLine", false, function(cm, val, old) { 23 | var prev = old && old != CodeMirror.Init; 24 | if (val && !prev) { 25 | cm.state.activeLines = []; 26 | updateActiveLines(cm, cm.listSelections()); 27 | cm.on("beforeSelectionChange", selectionChange); 28 | } else if (!val && prev) { 29 | cm.off("beforeSelectionChange", selectionChange); 30 | clearActiveLines(cm); 31 | delete cm.state.activeLines; 32 | } 33 | }); 34 | 35 | function clearActiveLines(cm) { 36 | for (var i = 0; i < cm.state.activeLines.length; i++) { 37 | cm.removeLineClass(cm.state.activeLines[i], "wrap", WRAP_CLASS); 38 | cm.removeLineClass(cm.state.activeLines[i], "background", BACK_CLASS); 39 | } 40 | } 41 | 42 | function sameArray(a, b) { 43 | if (a.length != b.length) return false; 44 | for (var i = 0; i < a.length; i++) 45 | if (a[i] != b[i]) return false; 46 | return true; 47 | } 48 | 49 | function updateActiveLines(cm, ranges) { 50 | var active = []; 51 | for (var i = 0; i < ranges.length; i++) { 52 | var range = ranges[i]; 53 | if (!range.empty()) continue; 54 | var line = cm.getLineHandleVisualStart(range.head.line); 55 | if (active[active.length - 1] != line) active.push(line); 56 | } 57 | if (sameArray(cm.state.activeLines, active)) return; 58 | cm.operation(function() { 59 | clearActiveLines(cm); 60 | for (var i = 0; i < active.length; i++) { 61 | cm.addLineClass(active[i], "wrap", WRAP_CLASS); 62 | cm.addLineClass(active[i], "background", BACK_CLASS); 63 | } 64 | cm.state.activeLines = active; 65 | }); 66 | } 67 | 68 | function selectionChange(cm, sel) { 69 | updateActiveLines(cm, sel.ranges); 70 | } 71 | }); 72 | -------------------------------------------------------------------------------- /editor/js/extra/codemirror/selection/selection-pointer.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | CodeMirror.defineOption("selectionPointer", false, function(cm, val) { 15 | var data = cm.state.selectionPointer; 16 | if (data) { 17 | CodeMirror.off(cm.getWrapperElement(), "mousemove", data.mousemove); 18 | CodeMirror.off(cm.getWrapperElement(), "mouseout", data.mouseout); 19 | CodeMirror.off(window, "scroll", data.windowScroll); 20 | cm.off("cursorActivity", reset); 21 | cm.off("scroll", reset); 22 | cm.state.selectionPointer = null; 23 | cm.display.lineDiv.style.cursor = ""; 24 | } 25 | if (val) { 26 | data = cm.state.selectionPointer = { 27 | value: typeof val == "string" ? val : "default", 28 | mousemove: function(event) { mousemove(cm, event); }, 29 | mouseout: function(event) { mouseout(cm, event); }, 30 | windowScroll: function() { reset(cm); }, 31 | rects: null, 32 | mouseX: null, mouseY: null, 33 | willUpdate: false 34 | }; 35 | CodeMirror.on(cm.getWrapperElement(), "mousemove", data.mousemove); 36 | CodeMirror.on(cm.getWrapperElement(), "mouseout", data.mouseout); 37 | CodeMirror.on(window, "scroll", data.windowScroll); 38 | cm.on("cursorActivity", reset); 39 | cm.on("scroll", reset); 40 | } 41 | }); 42 | 43 | function mousemove(cm, event) { 44 | var data = cm.state.selectionPointer; 45 | if (event.buttons == null ? event.which : event.buttons) { 46 | data.mouseX = data.mouseY = null; 47 | } else { 48 | data.mouseX = event.clientX; 49 | data.mouseY = event.clientY; 50 | } 51 | scheduleUpdate(cm); 52 | } 53 | 54 | function mouseout(cm, event) { 55 | if (!cm.getWrapperElement().contains(event.relatedTarget)) { 56 | var data = cm.state.selectionPointer; 57 | data.mouseX = data.mouseY = null; 58 | scheduleUpdate(cm); 59 | } 60 | } 61 | 62 | function reset(cm) { 63 | cm.state.selectionPointer.rects = null; 64 | scheduleUpdate(cm); 65 | } 66 | 67 | function scheduleUpdate(cm) { 68 | if (!cm.state.selectionPointer.willUpdate) { 69 | cm.state.selectionPointer.willUpdate = true; 70 | setTimeout(function() { 71 | update(cm); 72 | cm.state.selectionPointer.willUpdate = false; 73 | }, 50); 74 | } 75 | } 76 | 77 | function update(cm) { 78 | var data = cm.state.selectionPointer; 79 | if (!data) return; 80 | if (data.rects == null && data.mouseX != null) { 81 | data.rects = []; 82 | if (cm.somethingSelected()) { 83 | for (var sel = cm.display.selectionDiv.firstChild; sel; sel = sel.nextSibling) 84 | data.rects.push(sel.getBoundingClientRect()); 85 | } 86 | } 87 | var inside = false; 88 | if (data.mouseX != null) for (var i = 0; i < data.rects.length; i++) { 89 | var rect = data.rects[i]; 90 | if (rect.left <= data.mouseX && rect.right >= data.mouseX && 91 | rect.top <= data.mouseY && rect.bottom >= data.mouseY) 92 | inside = true; 93 | } 94 | var cursor = inside ? data.value : ""; 95 | if (cm.display.lineDiv.style.cursor != cursor) 96 | cm.display.lineDiv.style.cursor = cursor; 97 | } 98 | }); 99 | -------------------------------------------------------------------------------- /editor/js/extra/jscolor/arrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/jscolor/arrow.gif -------------------------------------------------------------------------------- /editor/js/extra/jscolor/cross.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/jscolor/cross.gif -------------------------------------------------------------------------------- /editor/js/extra/jscolor/demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | jscolor demo 4 | 5 | 6 | 7 | 8 | 9 | Click here: 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /editor/js/extra/jscolor/hs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/jscolor/hs.png -------------------------------------------------------------------------------- /editor/js/extra/jscolor/hv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/jscolor/hv.png -------------------------------------------------------------------------------- /editor/js/extra/litegl.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/litegl.js -------------------------------------------------------------------------------- /editor/js/extra/litegui.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/litegui.js -------------------------------------------------------------------------------- /editor/js/extra/onecore.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/extra/onecore.js -------------------------------------------------------------------------------- /editor/js/modules/about.js: -------------------------------------------------------------------------------- 1 | var AboutModule = { 2 | name: "about", 3 | 4 | init: function() 5 | { 6 | LiteGUI.menubar.add("About", { callback: function() { 7 | var dialog = new LiteGUI.Dialog({ title: "About onEdit", closable: true, width: 400, height: 240} ); 8 | dialog.content.style.fontSize = "2em"; 9 | dialog.content.style.backgroundColor = "black"; 10 | dialog.content.innerHTML = "

onEdit version "+CORE.config.version+"

Created by Javi Agenjo

GTI department of Universitat Pompeu Fabra

Fork me in Github"; 11 | dialog.show(); 12 | }}); 13 | } 14 | } 15 | 16 | CORE.registerModule( AboutModule ); -------------------------------------------------------------------------------- /editor/js/modules/actors.js: -------------------------------------------------------------------------------- 1 | var ActorsModule = { 2 | name:"ActorsModule", 3 | 4 | init: function() 5 | { 6 | LiteGUI.menubar.add("Node/Actor/Convert to Actor", this.convertNodeToActor.bind(this) ); 7 | LiteGUI.menubar.add("Actions/Selection/Set as Bones", this.setAsBones.bind(this) ); 8 | }, 9 | 10 | convertNodeToActor: function() 11 | { 12 | var selected = SelectionModule.getSelectedNode(); 13 | if(!selected) 14 | return; 15 | 16 | var children = selected.getDescendants(); 17 | 18 | for(var i = 0; i < children.length; ++i) 19 | { 20 | var node = children[i]; 21 | 22 | //has skinning? 23 | var skinDeformer = node.getComponent( LS.Components.SkinDeformer ); 24 | if (skinDeformer) 25 | { 26 | var mesh = skinDeformer.getMesh(); 27 | if(mesh) 28 | { 29 | //convert bones from absolute names to relative names 30 | var bones = mesh.bones; 31 | for(var j = 0; j < bones.length; ++j) 32 | { 33 | var bone = bones[j]; 34 | var bone_name = bone[0]; 35 | if(bone_name[0] == LS._uid_prefix) //is absolute 36 | { 37 | var bone_node = LS.GlobalScene.getNodeByUId( bone_name ); 38 | bone[0] = bone_node.name; 39 | } 40 | } 41 | } 42 | 43 | //make bones relatives to parent 44 | skinDeformer.search_bones_in_parent = true; 45 | //skinDeformer.skeleton_root_node = selected.uid; 46 | } 47 | 48 | //has animation 49 | //Convert track names 50 | //TODO 51 | } 52 | 53 | console.log("Converted"); 54 | }, 55 | 56 | setAsBones: function() 57 | { 58 | var selection = SelectionModule.getSelectedNodes(); 59 | for(var i = 0; i < selection.length; ++i) 60 | { 61 | var node = selection[i]; 62 | node._is_bone = true; 63 | } 64 | } 65 | } 66 | 67 | CORE.registerModule( ActorsModule ); -------------------------------------------------------------------------------- /editor/js/modules/cameraTools.js: -------------------------------------------------------------------------------- 1 | //************* TOOLS ******************* 2 | //moved to tools/camera.js 3 | 4 | 5 | -------------------------------------------------------------------------------- /editor/js/modules/intro.js: -------------------------------------------------------------------------------- 1 | var IntroModule = { 2 | name: "intro", 3 | 4 | preferences: { 5 | show_intro_dialog: true 6 | }, 7 | 8 | init: function() 9 | { 10 | if( this.preferences.show_intro_dialog !== false) 11 | this.showIntroDialog(); 12 | }, 13 | 14 | showIntroDialog: function() 15 | { 16 | var dialog = new LiteGUI.Dialog("intro_dialog",{ width: 400, height: 400, closable: true }); 17 | dialog.content.innerHTML = ""+ 18 | "

" + 19 | "

Welcome to WEBGLStudio!

" + 20 | "

This is an Open Source work-in-progress tool to bring the 3D to the web.

" + 21 | "

If you have any question/suggestion or problem using this tool, go to the webglstudio.org site or the github page.

"; 22 | 23 | dialog.on_close = function() 24 | { 25 | IntroModule.preferences.show_intro_dialog = false; 26 | } 27 | 28 | dialog.addButton("Close"); 29 | dialog.show(); 30 | dialog.center(); 31 | dialog.fadeIn(); 32 | 33 | var links = dialog.content.querySelectorAll("a"); 34 | for(var i = 0; i < links.length; i++) 35 | links[i].addEventListener("click",prevent_this, true); 36 | dialog.root.addEventListener("click",close_this); 37 | 38 | function prevent_this(e){ 39 | e.stopImmediatePropagation(); 40 | e.stopPropagation(); 41 | return false; 42 | } 43 | 44 | function close_this(){ 45 | dialog.close(); 46 | } 47 | } 48 | } 49 | 50 | CORE.registerModule( IntroModule ); -------------------------------------------------------------------------------- /editor/js/modules/preferences.js: -------------------------------------------------------------------------------- 1 | /* 2 | This module is in charge of controlling the global preferences of all the modules. 3 | It allow to configure every one of them using a common interface and to use a localStorage 4 | to save the previous configuration. 5 | */ 6 | var PreferencesModule = { 7 | 8 | name: "preferences", 9 | 10 | sections: {}, 11 | current_section: "editor", 12 | 13 | init: function() 14 | { 15 | LiteGUI.menubar.add("Edit/Preferences", { order:20, callback: function() { PreferencesModule.showDialog(); }}); 16 | }, 17 | 18 | showDialog: function() 19 | { 20 | if(PreferencesModule.dialog) 21 | { 22 | PreferencesModule.dialog.highlight(); 23 | return; 24 | } 25 | 26 | var dialog = new LiteGUI.Dialog({ id: "dialog_preferences", title:"Preferences", width: 800, height: 500, close: true, minimize: true, scroll: false, draggable: true }); 27 | this.dialog = dialog; 28 | 29 | dialog.show(); 30 | dialog.on_close = function() { 31 | PreferencesModule.dialog = null; 32 | } 33 | 34 | this.updateDialogContent(); 35 | }, 36 | 37 | updateDialogContent: function() 38 | { 39 | var dialog = this.dialog; 40 | if(!dialog) 41 | return; 42 | 43 | //remove old 44 | dialog.content.innerHTML = ""; 45 | 46 | //content 47 | var split = new LiteGUI.Split([30,70]); 48 | dialog.content.appendChild(split.root); 49 | dialog.content.style.height = "calc( 100% - 20px )"; 50 | split.root.style.height = "100%"; 51 | split.sections[1].style.overflow = "auto"; 52 | split.sections[1].style.paddingLeft = "10px"; 53 | split.sections[1].id = "preferences-widgets-area"; 54 | split.sections[1].innerHTML = "
"; 55 | 56 | var sections = []; 57 | var already_created = {}; 58 | for(var i in CORE.Modules) 59 | { 60 | var module = CORE.Modules[i]; 61 | if(!module.preferences_panel) 62 | continue; 63 | 64 | for(var j in module.preferences_panel) 65 | { 66 | var preferences = module.preferences_panel[j]; 67 | 68 | if (already_created[ preferences.name ]) //avoid repeated 69 | continue; 70 | sections.push( preferences ); 71 | this.sections[ preferences.name ] = preferences; 72 | already_created[ preferences.name ] = true; 73 | } 74 | } 75 | 76 | var list = new LiteGUI.List("preferences-list", sections ); 77 | list.root.style.fontSize = "20px"; 78 | split.sections[0].appendChild( list.root ); 79 | split.sections[1].style.fontSize = "16px"; 80 | 81 | list.callback = function(v) { 82 | PreferencesModule.changeSection( v.name ); 83 | }; 84 | 85 | list.setSelectedItem( this.sections[ this.current_section ] ); 86 | }, 87 | 88 | changeSection: function( name ) 89 | { 90 | if(!this.dialog) 91 | return; 92 | 93 | this.current_section = name; 94 | 95 | var root = this.dialog.root.querySelector("#preferences-widgets-area .content"); 96 | root.innerHTML = ""; 97 | 98 | var widgets = new LiteGUI.Inspector({ id: "preferences-widgets", name_width:"40%" }); 99 | widgets.onchange = function() 100 | { 101 | RenderModule.requestFrame(); 102 | } 103 | 104 | root.appendChild( widgets.root ); 105 | 106 | for(var i in CORE.Modules) 107 | { 108 | if (!CORE.Modules[i].onShowPreferencesPanel) 109 | continue; 110 | CORE.Modules[i].onShowPreferencesPanel(name, widgets); 111 | } 112 | }, 113 | } 114 | 115 | 116 | CORE.registerModule( PreferencesModule ); -------------------------------------------------------------------------------- /editor/js/modules/profiling.js: -------------------------------------------------------------------------------- 1 | //Deprecated 2 | var ProfilingModule = { 3 | name: "Profiling", 4 | bigicon: "imgs/tabicon-profiling.png", 5 | 6 | settings: { 7 | }, 8 | 9 | init: function() 10 | { 11 | this.tab = LiteGUI.main_tabs.addTab( this.name , {id:"profilingtab", bigicon: this.bigicon, size: "full", callback: function(tab) { 12 | if(!ProfilingModule.profiling_widget) 13 | ProfilingModule.createWidget(); 14 | ProfilingModule.profiling_widget.enabled = true; 15 | RenderModule.appendViewportTo( ProfilingModule.area.sections[0].content ); 16 | ProfilingModule.profiling_widget.render(); 17 | }, 18 | callback_leave: function() { 19 | ProfilingModule.profiling_widget.enabled = false; 20 | RenderModule.appendViewportTo( null ); 21 | }}); 22 | 23 | var area = this.area = new LiteGUI.Area(); 24 | area.split("vertical",[null,400],true); 25 | this.tab.add( area ); 26 | }, 27 | 28 | createWidget: function() 29 | { 30 | this.profiling_widget = new ProfilingPanelWidget(); 31 | this.area.sections[1].add( this.profiling_widget ); 32 | } 33 | }; 34 | 35 | 36 | //CORE.registerModule( ProfilingModule ); -------------------------------------------------------------------------------- /editor/js/modules/quickbar.js: -------------------------------------------------------------------------------- 1 | /* Console module 2 | It shows the QuickBar when pressing Contrl + Space and allows to launch commands (not JS commands, but special editor commands) 3 | It also allows to show messages in the console widget 4 | */ 5 | 6 | var QuickbarModule = { 7 | name: "quickbar", 8 | 9 | commands: {}, 10 | 11 | is_visible: false, 12 | 13 | init: function() 14 | { 15 | this.create(); 16 | }, 17 | 18 | create: function() 19 | { 20 | LiteGUI.addCSS("\ 21 | #quickbar { pointer-events: none; transition: all 0.4s; opacity: 0; color: white; position: absolute; bottom: 0; right: 0px; width: 100%; min-height: 100px; font-size: 1.4em; padding-right: 3px } \ 22 | #quickbar.visible { opacity: 1; pointer-events: auto; }\ 23 | #quickbar input { border: 1px solid rgba(100,100,100,0.1); font-size: 2em; color: white; border: 0; background-color: rgba(0,0,0,0.5); border-radius: 4px; padding: 5px; margin: 20px; width: calc( 100% - 40px ); }\ 24 | #quickbar input:focus { outline: 0; }\ 25 | "); 26 | 27 | this.quickbar = document.createElement("div"); 28 | this.quickbar.id = "quickbar"; 29 | 30 | this.quickbar.innerHTML = "
"; 31 | this.content = this.quickbar.querySelector(".content"); 32 | this.input = this.quickbar.querySelector("input"); 33 | 34 | this.input.onblur = function() { QuickbarModule.hide(); }; 35 | this.input.addEventListener("keydown", this.onKeyDown.bind(this) ); 36 | 37 | var root = document.getElementById("visor"); 38 | root.appendChild( this.quickbar ); 39 | 40 | CORE.log = this.log; 41 | }, 42 | 43 | log: function( msg ) 44 | { 45 | LEvent.trigger( LS, "log", msg ); 46 | }, 47 | 48 | onCanvasKeyDown: function(e) 49 | { 50 | if( e.keyCode == 32 && e.ctrlKey ) 51 | this.toggle(); 52 | }, 53 | 54 | onKeyDown: function(e) 55 | { 56 | if(e.keyCode == 13) 57 | { 58 | this.executeCommand( e.target.value ); 59 | e.target.value = ""; 60 | e.preventDefault(); 61 | } 62 | else if (e.keyCode == 27) 63 | this.hide(); 64 | }, 65 | 66 | executeCommand: function(cmd) 67 | { 68 | if(!cmd) 69 | return; 70 | 71 | cmd = cmd.trim(); 72 | var tokens = cmd.split(" "); 73 | 74 | for(var i in CORE.Modules) 75 | { 76 | var module = CORE.Modules[i]; 77 | if(!module.commands) 78 | continue; 79 | 80 | var commands = module.commands; 81 | var callback = commands[ tokens[0] ]; 82 | if(!callback) 83 | continue; 84 | callback(cmd, tokens); 85 | } 86 | }, 87 | 88 | show: function() 89 | { 90 | this.quickbar.classList.add("visible"); 91 | this.input.focus(); 92 | this.input.value = ""; 93 | this.is_visible = true; 94 | }, 95 | 96 | hide: function() 97 | { 98 | this.quickbar.classList.remove("visible"); 99 | this.input.blur(); 100 | this.is_visible = false; 101 | }, 102 | 103 | toggle: function() 104 | { 105 | if(this.is_visible) 106 | this.hide(); 107 | else 108 | this.show(); 109 | } 110 | }; 111 | 112 | CORE.registerModule( QuickbarModule ); -------------------------------------------------------------------------------- /editor/js/modules/render.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/js/modules/render.js -------------------------------------------------------------------------------- /editor/js/tools/colorPicker.js: -------------------------------------------------------------------------------- 1 | var colorPickerTool = { 2 | name: "colorPicker", 3 | description: "Select color", 4 | section: "foo", 5 | icon: "imgs/mini-icon-colorpicker.png", 6 | 7 | callback: null, 8 | 9 | show_realtime: false, 10 | 11 | last_mouse: vec2.create(), 12 | last_color: vec3.fromValues(0,1,0), 13 | 14 | renderEditor: function() { 15 | if(!this.show_realtime) 16 | return; 17 | gl.start2D(); 18 | gl.fillColor = this.last_color; 19 | gl.fillRect( this.last_mouse[0] - 20, gl.canvas.height - this.last_mouse[1] - 5, 10,10 ); 20 | gl.finish2D(); 21 | }, 22 | 23 | getColorFromMouse: function( e, skip_redraw ) 24 | { 25 | RenderModule.render( !skip_redraw ); //force repaint so there is something in the buffer 26 | var image_data = gl.getImageData( e.canvasx, e.canvasy, 1, 1 ); 27 | var color_bytes = image_data.data.subarray(0,3); 28 | this.last_color.set( [color_bytes[0]/255, color_bytes[1]/255, color_bytes[2]/255] ); 29 | return vec3.clone( this.last_color ); 30 | }, 31 | 32 | mousedown: function(e) 33 | { 34 | if (e.which != 1) 35 | return; 36 | 37 | var color = this.getColorFromMouse(e); 38 | 39 | if(this.callback) 40 | { 41 | this.callback( color ); 42 | this.callback = null; 43 | 44 | if(this._old_tool) 45 | ToolsModule.enableTool( this._old_tool.name ); 46 | else 47 | ToolsModule.enableTool("manipulate"); 48 | this._old_tool = null; 49 | gl.canvas.style.cursor = ""; 50 | } 51 | else 52 | console.log( "Color", color ); 53 | 54 | return true; 55 | }, 56 | 57 | mouseup: function(e) 58 | { 59 | return true; 60 | }, 61 | 62 | mousemove: function(e) 63 | { 64 | this.last_mouse[0] = e.canvasx; 65 | this.last_mouse[1] = e.canvasy; 66 | gl.canvas.style.cursor = "crosshair"; 67 | if(this.show_realtime) 68 | { 69 | RenderModule.requestFrame(); 70 | this.getColorFromMouse(e); 71 | } 72 | return true; 73 | }, 74 | 75 | oneClick: function( callback ) 76 | { 77 | if(ToolsModule.current_tool != this) 78 | this._old_tool = ToolsModule.current_tool; 79 | 80 | ToolsModule.enableTool(this.name); 81 | this.callback = callback; 82 | } 83 | }; 84 | 85 | ToolsModule.registerTool( colorPickerTool ); 86 | 87 | -------------------------------------------------------------------------------- /editor/js/tools/drag.js: -------------------------------------------------------------------------------- 1 | var dragNodeTool = { 2 | name: "drag", 3 | description: "Drag node to inspector", 4 | section: "foo", 5 | icon: "imgs/mini-icon-cursor.png", 6 | 7 | state: null, 8 | 9 | mouse_pos: vec3.create(), 10 | 11 | onEnable: function() 12 | { 13 | gl.canvas.draggable = true; 14 | gl.ignore_events = true; 15 | gl.canvas.ondragstart = this.dragstart.bind(this); 16 | gl.canvas.ondrop = this.drop.bind(this); 17 | }, 18 | 19 | onDisable: function() 20 | { 21 | gl.canvas.draggable = false; 22 | gl.ignore_events = false; 23 | gl.canvas.ondragstart = null; 24 | }, 25 | 26 | renderEditor: function(camera) 27 | { 28 | }, 29 | 30 | mousedown: function(e) 31 | { 32 | this.mouse_pos.set([e.canvasx, e.canvasy, 0]); 33 | this.state = "dragging"; 34 | gl.ignore_events = true; 35 | e.skip_preventDefault = true; 36 | return true; 37 | }, 38 | 39 | mousemove: function(e) 40 | { 41 | e.skip_preventDefault = true; 42 | return true; 43 | }, 44 | 45 | dragstart: function(e) 46 | { 47 | console.log("DRAGSTART"); 48 | 49 | GL.augmentEvent( e ); 50 | var img = new Image(); 51 | img.src = "imgs/mini-icon-ball.png"; 52 | e.dataTransfer.setDragImage( img, 0, 0 ); 53 | 54 | if (e.buttons != LS.Input.BUTTONS_LEFT) //left 55 | return; 56 | 57 | var instance_info = LS.Picking.getInstanceAtCanvasPosition( e.canvasx, e.canvasy, ToolUtils.getCamera() ); 58 | if(!instance_info) 59 | return; 60 | 61 | var node = null; 62 | 63 | if( instance_info.constructor == LS.SceneNode ) 64 | node = instance_info; 65 | else 66 | { 67 | if( instance_info.instance ) 68 | { 69 | if( instance_info.instance.constructor == LS.SceneNode ) 70 | node = instance_info.instance; 71 | else if( instance_info.instance.constructor.is_component) 72 | node = instance_info.instance._root; 73 | } 74 | } 75 | 76 | if( !node ) 77 | return; 78 | 79 | var id = e.ctrlKey ? node.name : node.uid; 80 | e.dataTransfer.setData( "uid", node.uid ); 81 | e.dataTransfer.setData( "class", "SceneNode" ); 82 | e.dataTransfer.setData( "node_uid", id ); 83 | 84 | return true; 85 | }, 86 | 87 | drop: function(e) 88 | { 89 | console.log("DROP"); 90 | e.stopPropagation(); 91 | return true; 92 | } 93 | }; 94 | 95 | ToolsModule.registerTool( dragNodeTool ); 96 | 97 | -------------------------------------------------------------------------------- /editor/js/tools/parenting.js: -------------------------------------------------------------------------------- 1 | var parentingNodeTool = { 2 | name: "parenting", 3 | description: "Drag to parent node", 4 | section: "foo", 5 | icon: "imgs/mini-icon-tree.png", 6 | 7 | state: null, 8 | 9 | mouse_pos: vec3.create(), 10 | 11 | renderEditor: function(camera) 12 | { 13 | if(!this.state) 14 | return; 15 | 16 | var node = SelectionModule.getSelectedNode(); 17 | if(!node) 18 | return; 19 | if(!EditorView.mustRenderGizmos()) 20 | return; 21 | if(!RenderModule.frame_updated) 22 | return; 23 | 24 | var gizmo_model = ToolUtils.getSelectionMatrix(); 25 | if(!gizmo_model) 26 | return null; 27 | 28 | //var pos = node.transform.getGlobalPosition( this.node_center ); 29 | var pos = vec3.create(); 30 | mat4.multiplyVec3( pos, gizmo_model, pos ); 31 | 32 | //ToolUtils.prepareDrawing(); 33 | var camera2D = ToolUtils.enableCamera2D(camera); 34 | var pos2D = camera.project(pos); //project 35 | 36 | if(pos2D[2] < 0) 37 | return; 38 | 39 | pos2D[2] = 0; 40 | 41 | //now render the line 42 | gl.disable(gl.DEPTH_TEST); 43 | gl.enable(gl.BLEND); 44 | gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA); 45 | LS.Draw.setColor([1,0,1,1]); 46 | 47 | LS.Draw.renderLines([pos2D, this.mouse_pos]); 48 | 49 | gl.enable(gl.DEPTH_TEST); 50 | }, 51 | 52 | mousedown: function(e) 53 | { 54 | if (e.which != 1) 55 | return; 56 | 57 | var instance_info = LS.Picking.getInstanceAtCanvasPosition( e.canvasx, e.canvasy, ToolUtils.getCamera() ); 58 | SelectionModule.setSelection( instance_info ); 59 | if(!instance_info) 60 | return; 61 | 62 | this.mouse_pos.set([e.canvasx, e.canvasy, 0]); 63 | this.state = "dragging"; 64 | return true; 65 | }, 66 | 67 | mouseup: function(e) 68 | { 69 | this.state = null; 70 | var scene = LS.GlobalScene; 71 | scene.refresh(); 72 | 73 | var parent = scene.root; 74 | var child = SelectionModule.getSelectedNode(); 75 | if(!child) 76 | return; 77 | 78 | var instance_info = LS.Picking.getInstanceAtCanvasPosition( e.canvasx, e.canvasy, ToolUtils.getCamera(e) ); 79 | if(instance_info) 80 | { 81 | var selection = SelectionModule.convertSelection( instance_info ); 82 | parent = selection.node; 83 | if(!parent) 84 | return; 85 | } 86 | 87 | if(parent == child) 88 | return; 89 | 90 | //save undo 91 | UndoModule.saveNodeParentingUndo( child ); 92 | 93 | //change parent 94 | parent.addChild(child, null, true); 95 | return true; 96 | }, 97 | 98 | mousemove: function(e) 99 | { 100 | if(!this.state) 101 | return; 102 | 103 | this.mouse_pos.set([e.canvasx, e.canvasy, 0]); 104 | LS.GlobalScene.refresh(); 105 | return true; 106 | } 107 | }; 108 | 109 | ToolsModule.registerTool( parentingNodeTool ); 110 | 111 | -------------------------------------------------------------------------------- /editor/js/tools/select.js: -------------------------------------------------------------------------------- 1 | //this tool is always on, it changes the selected item when clicked 2 | var selectTool = { 3 | name: "select", 4 | description: "Select a node", 5 | section: "select", 6 | icon: "imgs/mini-icon-cursor.png", 7 | keyShortcut: 81, //Q 8 | 9 | enabled: false, 10 | 11 | click_time: 200, //ms 12 | click_dist: 50, //in pixels (to avoid interpreting dragging as a fast click) 13 | click_pos: [0,0], 14 | last_click: 0, 15 | 16 | onRegister: function() 17 | { 18 | //RenderModule.canvas_manager.addWidget(this); 19 | ToolsModule.addBackgroundTool(this); 20 | }, 21 | 22 | mousedown: function(e) { 23 | this.click_pos = [e.mousex,e.mousey]; 24 | this._got_mousedown = true; 25 | var now = getTime(); 26 | 27 | if( now - this.last_click < this.click_time && e.button == 0 ) 28 | { 29 | //EditorModule.focusCameraInSelection(); 30 | EditorModule.focusCameraInPixel( e ); 31 | } 32 | this.last_click = now; 33 | }, 34 | 35 | mousemove: function(e) { 36 | }, 37 | 38 | mouseup: function(e) { 39 | //if(!this.enabled) return; 40 | 41 | e.preventDefault(); 42 | e.stopPropagation(); 43 | 44 | if(!this._got_mousedown) 45 | return; //somebody else captured the mousedown 46 | 47 | this._got_mousedown = false; 48 | 49 | if(e.button != 0) 50 | return; 51 | 52 | var now = getTime(); 53 | var dist = Math.sqrt( (e.mousex - this.click_pos[0])<<2 + (e.mousey - this.click_pos[1])<<2 ); 54 | 55 | //if it was a fast click and the mouse didnt move too much (dragging) 56 | if (e.click_time < this.click_time && dist < this.click_dist) 57 | { 58 | //Test if click was in GUI 59 | //TODO 60 | 61 | //PICKING in the Scene (this is slow, it requires to render the scene again) 62 | //use canvas because this func works in canvas coordinates, no mouse coordinates 63 | var instance_info = LS.Picking.getInstanceAtCanvasPosition( e.canvasx, e.canvasy, ToolUtils.getCamera(e) ); 64 | if(!instance_info) 65 | return false; 66 | 67 | var r = false; 68 | if( instance_info.callback ) 69 | r = instance_info.callback( instance_info, e ); 70 | if(r) 71 | return false; 72 | 73 | if(e.shiftKey) 74 | { 75 | if( SelectionModule.isSelected( instance_info ) ) 76 | SelectionModule.removeFromSelection( instance_info ); 77 | else 78 | SelectionModule.addToSelection( instance_info ); 79 | } 80 | else 81 | SelectionModule.setSelection( instance_info ); 82 | } 83 | 84 | return false; 85 | } 86 | }; 87 | 88 | ToolsModule.registerTool({ name: "select", display: false, module: selectTool }); 89 | 90 | -------------------------------------------------------------------------------- /editor/js/widgets/canvas/cameraPreview.js: -------------------------------------------------------------------------------- 1 | 2 | function CameraPreviewWidget( camera ) 3 | { 4 | this._ctor(); 5 | 6 | if(!camera) 7 | camera = LS.GlobalScene.root.camera; 8 | 9 | this.border = true; 10 | this.draggable = true; 11 | this.resizable = true; 12 | this.closable = true; 13 | this.camera = camera; 14 | this.position = [40,40]; 15 | this.size = [250,200]; 16 | 17 | if(this.camera) 18 | this.camera._preview_widget = this; 19 | } 20 | 21 | CameraPreviewWidget.prototype.onClose = function() 22 | { 23 | if(this.camera) 24 | this.camera._preview_widget = null; 25 | } 26 | 27 | CameraPreviewWidget.prototype.onRender = function( ctx, viewport ) 28 | { 29 | if(!this.camera) 30 | return; 31 | 32 | var old = gl.getViewport(); 33 | gl.setViewport( viewport, true ); 34 | 35 | var render_settings = RenderModule.render_settings; 36 | 37 | this.camera.final_aspect = viewport[2] / viewport[3]; 38 | LS.Renderer.clearBuffer( this.camera, render_settings ); 39 | LS.Renderer.enableCamera( this.camera, render_settings, true ); 40 | LS.Renderer.renderInstances( render_settings ); 41 | gl.setViewport( old );//restore 42 | 43 | //restore flags 44 | gl.disable( gl.CULL_FACE ); 45 | gl.disable( gl.DEPTH_TEST ); 46 | gl.enable( gl.BLEND ); 47 | gl.blendFunc( gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA ); 48 | } 49 | 50 | CameraPreviewWidget.prototype.onEvent = function(e) 51 | { 52 | var that = this; 53 | 54 | if(e.type == "mousemove") 55 | return; 56 | 57 | if(e.type == "mousedown" && e.rightButton && this.isEventInside(e)) 58 | { 59 | if(!this.camera) 60 | { 61 | EditorModule.showSelectSceneCameraContextMenu(e, null, function(camera){ 62 | that.camera = camera; 63 | }); 64 | } 65 | else 66 | { 67 | var menu = EditorModule.showComponentContextMenu( this.camera, e ); 68 | menu.addItem(null,null); //separator 69 | menu.addItem("Select Camera", { 70 | callback: function( v,o, e ){ 71 | EditorModule.showSelectSceneCameraContextMenu(e, menu, function(camera){ 72 | that.camera = camera; 73 | LS.GlobalScene.requestFrame(); 74 | }); 75 | } 76 | }); 77 | } 78 | return true; 79 | } 80 | if(e.type == "mouseup" && e.button == 2 && this.isEventInside(e)) 81 | return true; 82 | } 83 | 84 | LS.extendClass( CameraPreviewWidget, CanvasElement ); 85 | 86 | EditorModule.registerCanvasWidget( CameraPreviewWidget ); -------------------------------------------------------------------------------- /editor/js/widgets/ui/textureAreasWidget.js: -------------------------------------------------------------------------------- 1 | //Work in progress: the idea was to help set areas inside a texture atlas 2 | function TextureAreasWidget( options ) 3 | { 4 | this.root = null; 5 | this.createInterface( options ); 6 | } 7 | 8 | TextureAreasWidget.widget_name = "Texture Areas"; 9 | 10 | TextureAreasWidget.createDialog = function( parent, component ) 11 | { 12 | var dialog = new LiteGUI.Dialog( { title: TextureAreasWidget.widget_name, fullcontent: true, closable: true, draggable: true, detachable: true, minimize: true, resizable: true, parent: parent, width: 800, height: 500 }); 13 | var widget = new TextureAreasWidget(); 14 | dialog.add( widget ); 15 | dialog.widget = widget; 16 | dialog.on_resize = function() 17 | { 18 | widget.onResize(); 19 | } 20 | widget.onResize() 21 | return dialog; 22 | } 23 | 24 | TextureAreasWidget.prototype.createInterface = function() 25 | { 26 | this.root = document.createElement("div"); 27 | this.root.style.width = "100%"; 28 | this.root.style.height = "100%"; 29 | this.canvas = createCanvas(100,100); 30 | this.root.appendChild( this.canvas ); 31 | 32 | this.render(); 33 | } 34 | 35 | TextureAreasWidget.prototype.render = function() 36 | { 37 | var rect = LiteGUI.getRect( this.canvas.parentNode ); 38 | if(!rect) 39 | return; 40 | 41 | if(this.canvas.width != rect.width ) 42 | this.canvas.width = rect.width; 43 | if(this.canvas.height != rect.height ) 44 | this.canvas.height = rect.height; 45 | 46 | var ctx = this.canvas.getContext("2d"); 47 | ctx.fillStyle = "red"; 48 | ctx.fillRect( 0,0, this.canvas.width, this.canvas.height ); 49 | } 50 | 51 | TextureAreasWidget.prototype.onResize = function() 52 | { 53 | this.render(); 54 | } -------------------------------------------------------------------------------- /editor/media/back_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/back_button.png -------------------------------------------------------------------------------- /editor/media/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/download.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-brush.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-brush.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-camera.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-cursor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-cursor.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-file.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-fov.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-fov.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-gear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-gear.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-gizmo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-gizmo.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-light.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-mesh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-mesh.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-orbit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-orbit.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-rotate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-rotate.png -------------------------------------------------------------------------------- /editor/media/icons/mini-icon-scale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/icons/mini-icon-scale.png -------------------------------------------------------------------------------- /editor/media/mini-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/mini-icons.png -------------------------------------------------------------------------------- /editor/media/tree_lines_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/tree_lines_16x16.png -------------------------------------------------------------------------------- /editor/media/tree_lines_bold_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/editor/media/tree_lines_bold_16x16.png -------------------------------------------------------------------------------- /editor/player.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | WebGLStudio Player 7 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /guides/README.md: -------------------------------------------------------------------------------- 1 | # WebGLStudio # 2 | 3 | Welcome to the guide to understand and use WebGLStudio. 4 | 5 | First of all remind you that this is a work-in-progress project that at this moment is maintained by a single person, 6 | and due to the scope of the project it is still in a beta state. However we have been using it for several internal projects 7 | with very good results. 8 | 9 | ## What is WebGLStudio? ## 10 | 11 | WebGLStudio is an open-source 3D scene editor for the web, developed in Javascript, it includes its own 3D Engine 12 | (for more information about the engine visit [LiteScene repository](https://github.com/jagenjo/litescene.js)) and other interesting features like code editing, resources managment, 13 | graph behaviours, animations, and a user-friendly interface. 14 | 15 | It has been created to be very modular and easy to expand by not forcing any rendering pipeline (but providing one). 16 | 17 | Any creation done in WebGLStudio can be easily shared online with a link, exported in a ZIP (including data and player) or embeded in an existing website. 18 | 19 | Creations could be packed in one single file (ZIP or special binary format) so it is easy to store and share. 20 | 21 | ## But what can I do with it? ## 22 | 23 | You can import assets from different sources (3D Meshes, textures, sounds, animations) and arrange them in a 3D Space. 24 | Then you can edit their visual appearence, add behaviours through scripting in javascript or using the graph system, use HTML to create the interface, and when your scene is ready you can share it using one link. 25 | 26 | ## Can I create 3D models? ## 27 | 28 | No, WebGLStudio is not a 3D Modeling software (maybe in the future), for that purpose I recommend to use Blender or check online tools like Clara.io 29 | 30 | ## What if I'm an advanced user? ## 31 | 32 | WebGLStudio allows to code your own shaders from the editor, create your own post-processing effects, even redo the render pipeline. All the engine is done in Javascript, so it means you have total freedom to change any part. 33 | 34 | ## What 3D Engine powers WebGLStudio? ## 35 | 36 | WebGLStudio was created around its own 3D engine called LiteScene, which was tailored to fulfill all the needs of the editor. 37 | 38 | If you want to know all about the inners of LiteScene, check the [guides in the LiteScene repository](https://github.com/jagenjo/litescene.js/tree/master/guides). 39 | 40 | 41 | ## Who has developed WebGLStudio? ## 42 | 43 | It has been developed by Javi Agenjo at the Interactive Technologies Group (GTI) at University Pompeu Fabra (Barcelona), 44 | thanks to fundings from the European Union and local institutions. 45 | 46 | ## Is there any tutorials, videos, books or content to learn how to use it? ## 47 | 48 | Not yet, but I'm working on that, but there are guides in the repositories of [LiteScene](https://github.com/jagenjo/litescene.js/tree/master/guides) and in this repository. 49 | 50 | ## Which major features are missing? ## 51 | 52 | There is no physics engine working yet (although there had been some test), also there is basic frustum culling and no spatial tree, that means there is a big performance drop in scene with hundres of meshes (work in progress). 53 | 54 | You cannot import FBXs (although DAEs are supported which contain the same info). 55 | 56 | ## Which Licensing does it use? ## 57 | 58 | It uses the MIT license, which means that you can use this software for whatever you want as long as you keep the same licensing. 59 | 60 | You are free to install it in your server and modify it to your own purposes. 61 | 62 | -------------------------------------------------------------------------------- /guides/components.md: -------------------------------------------------------------------------------- 1 | # Components in WebGLStudio 2 | 3 | LiteScene, the engine used by WebGLStudio, is a component based engine. 4 | 5 | That means that any action performed by the system, like rendering on the screen, adding lights, applying postprocessing effects, 6 | or executing scripts, comes from one of the many components. 7 | 8 | Components are attached to the nodes in the scene to extend the properties of every node, this way the system is very modular and easy to extend. 9 | 10 | For a better understanding of components, check the [LiteScene Components Guide](https://github.com/jagenjo/litescene.js/blob/master/guides/components.md) 11 | -------------------------------------------------------------------------------- /guides/editor_architecture.md: -------------------------------------------------------------------------------- 1 | # Editor Architecture 2 | 3 | In this guide I will try to explain how the editor is structured internally. 4 | 5 | This guide is meant for people willing to improve the editor somehow (through plugins or editing the base code). 6 | 7 | ## Structure 8 | 9 | ### Libraries 10 | 11 | WebGLStudio relies in several libraries that were developed for this project. 12 | 13 | * **LiteGL**: is the library in charge of wrapping the WebGL driver 14 | * **LiteScene**: is the engine used to handle the 3D scenes. 15 | * **LiteGUI**: is the library used to build the interface 16 | * **LiteGraph**: is the library used to create graphs 17 | * **LiteFileSystem**: is the library in charge of storing files in the back-end 18 | 19 | You do now need to understand all of them in depth, just to know what features bring to the editor in case you want to extend them. 20 | 21 | ### CORE 22 | 23 | The ```CORE``` (core.js) is the global class created once the website is loaded, is the one in charge of loading the rest of the files. 24 | It also handles some global properties (like user preferences and configuration). 25 | 26 | Inside the CORE all the loaded modules are stored. 27 | 28 | ### Modules 29 | 30 | Modules are independent elements of the editor that provide some functionality. 31 | Modules can interact with the interface, with the 3D canvas and process the user input. 32 | Almost every feature of the editor is stored in one Module, here is a list of the most important ones: 33 | * **RenderModule**: in charge of rendering the 3D canvas. 34 | * **DriveModule**: in charge of storing files. 35 | * **EditorModule**: in charge of the elements that allow to edit the scene. 36 | * **PluginModule**: to load plugins from the editor. 37 | * **PreferencesModule**: To store user preferences about the editor. 38 | * **SceneStorageModule**: in charge of loading/saving the scenes. 39 | * **ToolsModule**: in charge of the canvas buttons to toggle/enable tools. 40 | * **SelectionModule**: in charge of controling user selection of elements in the scene. 41 | * **UndoModule**: in charge of history of changes. 42 | 43 | ### UI Widgets 44 | 45 | The UI Widgets are classes that allow to access some properties of the system and edit them. 46 | 47 | The important UI widgets are: 48 | 49 | - InspectorWidget: to inspect any object of the system 50 | - ResourcesPanelWidget: to choose any resource in the server or local 51 | - CodingPad: to code 52 | - SceneTree: to select any node of the current scene 53 | - Timeline: to edit animations 54 | - GraphWidget: to edit a graph 55 | 56 | ### Canvas Widgets 57 | 58 | This widgets are meant to be rendered inside the 3D Canvas and are used to interact with the scene. 59 | 60 | ### Tools 61 | 62 | Tools are in charge of giving ways to interact with the 3D content. Like moving objects in the scene, or selecting, or moving the camera. 63 | They can intercept user input inside the canvas to perform actions. 64 | 65 | The most important tools are: 66 | 67 | - camera: to move the camera around 68 | - select: to select elements by clicking 69 | - move: to move nodes 70 | - rotate: to rotate nodes 71 | - scale: to scale nodes 72 | - manipulate: to move in a friendly way 73 | - parenting: to select node parent 74 | 75 | 76 | -------------------------------------------------------------------------------- /guides/file_system.md: -------------------------------------------------------------------------------- 1 | # File System 2 | 3 | WebGLStudio allows to store files server side so all your changes can be persistent between sessions even if you login from different computers. 4 | 5 | It also enables to share your creations between other users or reuse components/prefabs created by other users. 6 | 7 | To achieve this the WebGLStudio uses the library [LiteFileSystem](https://github.com/jagenjo/litefilesystem.js). 8 | 9 | ## DriveModule 10 | 11 | The Module in the system in charge of all the resources is called DriveModule. 12 | 13 | Here is an example of how to save a resource in the system: 14 | 15 | ```js 16 | var res = new LS.Resource(); 17 | res.filename = "guest/temp/foo.json"; 18 | res.data = JSON.stringify({ name: "javi" }); 19 | 20 | DriveModule.saveResource( res ); 21 | ``` 22 | -------------------------------------------------------------------------------- /guides/graphs.md: -------------------------------------------------------------------------------- 1 | # Graphs 2 | 3 | WebGLStudio allows to use graphs to control the behaviour or to connect properties of different components. 4 | 5 | This makes it easier than coding and less prone to errors, but it is also very limited. 6 | 7 | Using graphs we can assign values to properties of our scene just by dragging wires. 8 | 9 | Values could come from other properties on the scene or by more complex computations (using random, trigonometry, math operations, etc). 10 | 11 | It is very handy when you just want to ensure two properties have the same value (or a value related to each other). For instance, when we move one scene node there is another that updates its Y position to match the one on the first node. 12 | 13 | # Usage 14 | 15 | To use graphs in our scene first you need to create a GraphComponent in any of the nodes in our scene. 16 | 17 | There are different Graph component clases depending if the graph is for behaviour or for rendering (```GraphComponent```, ```FXGraphComponent```). 18 | 19 | Also you can choose when a graph is executed (before rendering, after rendering, during the update, on startup, on trigger etc). 20 | 21 | To edit a graph click the ```Edit Graph``` button in the component, this will bring the graph editor view. 22 | 23 | Once the graph is visible there are different ways to create nodes. 24 | 25 | Right-clicking in the canvas will show the menu to add a new node, there are lots of nodes sorted by categories. Select any of them and it will appear in the canvas. 26 | 27 | If what we want is bring any property from our scene to the canvas, just drag the component or property from the inspector into the canvas. 28 | 29 | To drag components you must drag the component icon next to the name in the inspector. 30 | 31 | To drag properties you must drag the ball icon next to the name of the property. 32 | 33 | Once you drag them into the canvas a new GraphNode will appear in the canvas. 34 | 35 | GraphNodes have inputs and outputs by default, but you can add new input/outputs right-clicking in the node and choosing from the inputs outputs menu. It depends in the node itself. 36 | 37 | When you want to connect the values between two nodes, you just drag the output slot of the node to the input slot of the other node. 38 | 39 | To break a connection just click in the input node connection. 40 | 41 | To edit the properties of any node double-click on it and check the inspector info. 42 | 43 | ## Documentation 44 | 45 | To know more about graph check the [LiteGraph documentation](https://github.com/jagenjo/litegraph.js). 46 | 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /guides/imgs/readme.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /guides/imgs/tutorial_shaders_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/guides/imgs/tutorial_shaders_1.png -------------------------------------------------------------------------------- /guides/imgs/tutorial_shaders_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/guides/imgs/tutorial_shaders_2.png -------------------------------------------------------------------------------- /guides/imgs/tutorial_shaders_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/guides/imgs/tutorial_shaders_3.png -------------------------------------------------------------------------------- /guides/imgs/webglstudio_interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/guides/imgs/webglstudio_interface.png -------------------------------------------------------------------------------- /guides/plugins.md: -------------------------------------------------------------------------------- 1 | # Plugins 2 | You can create your own plugins for WebGLStudio, this way if you miss some functionality in the editor you can coded it easily. 3 | 4 | The plugin can be loaded from the Edit -> Preferences -> Plugins menu. 5 | 6 | Plugins are javascript files loaded once the application has been loaded, they can add new options to the menus, new buttons in the interface, new parsers, etc. Plugins shouldn't be used to add new features to the engine LiteScene, because plugins are not exported with the scenes. New features for the engine should be in a script that is included in the scene, and a plugin can be made to add an editor to that feature. 7 | 8 | To code plugins you must understand a little bit how WebGLStudio is organized, check the WebGLStudio [architecture guide](editor_architecture.md). 9 | 10 | You also need to use the LiteGUI library that allows you to create panels, widgets, contextual menus, etc. 11 | 12 | ## Registering the Plugin 13 | 14 | You must create a class that contains the next methods: 15 | 16 | * ```init```: called once the plugin is loaded in memory, after the system is ready 17 | * ```deinit```: called if the user decides to remove the plugin from memory 18 | 19 | Also if your plugin requires to save information locally you can store them in the preferences property of the plugin. 20 | 21 | And after defining your class you must register it: 22 | 23 | ```js 24 | CORE.registerPlugin( MyPlugin ); 25 | ``` 26 | 27 | ## Creating panels 28 | 29 | The first use of plugins is to create new panels that can be openend for special purposes. 30 | 31 | Here is an example of how to create a simple dialog using LiteGUI: 32 | 33 | ```js 34 | showDialog: function() 35 | { 36 | var dialog = new LiteGUI.Dialog({title:"Editor", close: true, width: 300, height: 120, scroll: false, draggable: true}); 37 | var widgets = new LiteGUI.Inspector(); 38 | dialog.add(widgets); 39 | widgets.addButton("My button","Click", function(){ console.log("clicked"); }); 40 | dialog.show(); 41 | dialog.adjustSize(); 42 | } 43 | ``` 44 | 45 | For more info about LiteGUI check [the repository and guides for LiteGUI](https://github.com/jagenjo/litegui.js/tree/master). 46 | 47 | ## Adding entries to the menus 48 | 49 | Probably you want to have a menu option to open your special panels. To do that you need to: 50 | ```js 51 | //in the plugin init... 52 | LiteGUI.menubar.add("Window/MyPanel", { callback: function() { MyPlugin.showDialog(); }}); 53 | 54 | //in the plugin deinit... 55 | LiteGUI.menubar.remove("Window/MyPanel"); 56 | ``` 57 | 58 | ## Creating components for LiteScene 59 | 60 | You can create new components from the plugin. This components will only be available if the plugin is loaded so it is more a temporary way for developing components than a final solution. 61 | 62 | Check the [guide to create components](https://github.com/jagenjo/litescene.js/blob/master/guides/programming_components.md) to know more. 63 | 64 | ## Example 65 | 66 | ```js 67 | var MyPlugin = { 68 | name: "myplugin", 69 | 70 | preferences: {}, 71 | 72 | init: function() 73 | { 74 | //in case it needs to load other JS files 75 | LiteGUI.requireScript(["..."], inner ); 76 | 77 | function inner(v) 78 | { 79 | console.log("plugin loaded"); 80 | } 81 | }, 82 | 83 | deinit: function() 84 | { 85 | //called when the plugin has been removed 86 | } 87 | }; 88 | 89 | CORE.registerPlugin( MyPlugin ); 90 | ``` 91 | -------------------------------------------------------------------------------- /guides/tools.md: -------------------------------------------------------------------------------- 1 | # Tools 2 | 3 | To interact with the scene we resort to tools that transform our mouse inputs to actions. 4 | 5 | Common tools are Move, Rotate, Scale, but also Disable GUI, etc. 6 | 7 | Tool buttons are distributed around the Canvas. 8 | 9 | In case you want to create your own tool here is a simple guide. 10 | 11 | # Create an object 12 | 13 | The object that holds a tool can have the next properties: 14 | 15 | - **name**: used to assign the tool 16 | - **description**: shown when the mouse is over the button 17 | - **section**: sections are used to group buttons together 18 | - **icon**: url to the icon to show in the button 19 | - **keyShortcut**: optional, in case you want to show the icon in the button 20 | - **enabled**: in case it must be drawn like enabled 21 | 22 | And the next methods: 23 | 24 | - **callback**: called when the user clicks the button 25 | - **mousedown**, **mousemove**, **mouseup**, **mousewheel**: to catch mouse events 26 | - **renderEditor**: to render helpers. Check the [LS.Draw guide to render](https://github.com/jagenjo/litescene.js/blob/master/guides/draw.md) 27 | 28 | # Register the class 29 | 30 | Tools must be registered to be available from the system. 31 | 32 | ```js 33 | ToolsModule.registerTool( moveTool ); 34 | ``` 35 | -------------------------------------------------------------------------------- /plugins/list.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts":[ 3 | { 4 | "name":"Animation Retargeting", 5 | "author":"Javi Agenjo", 6 | "version": "0.1", 7 | "script_url":"scripts/retargeting.js", 8 | "includes":[], 9 | "description":"Transform animation to match another skeleton" 10 | }, 11 | { 12 | "name":"FBX Importer (experimental)", 13 | "author":"Javi Agenjo", 14 | "version": "0.1", 15 | "script_url":"scripts/fbxconv.js", 16 | "includes":[], 17 | "description":"Allows to import FBXs by sending the file to the server." 18 | }, 19 | { 20 | "name":"SpriteSheet", 21 | "author":"Javi Agenjo", 22 | "version": "0.1", 23 | "script_url":"scripts/spritesheet.js", 24 | "includes":[], 25 | "description":"Allows to create sprite sheets from an animated 3D model." 26 | }, 27 | { 28 | "name":"Deployer", 29 | "author":"Javi Agenjo", 30 | "version": "0.1", 31 | "script_url":"scripts/deployer.js", 32 | "includes":[], 33 | "description":"Allows to sync a project with a remote server, useful to publish your project somewhere else." 34 | }, 35 | { 36 | "name":"Mitsuba Importer", 37 | "author":"Javi Agenjo", 38 | "version": "0.1", 39 | "script_url":"scripts/mitsuba.js", 40 | "includes":[], 41 | "description":"Imports XML files from mitsuba" 42 | } 43 | ] 44 | } -------------------------------------------------------------------------------- /plugins/scripts/ctmparser.js: -------------------------------------------------------------------------------- 1 | //this is a file that is not included in the config.json, the purpose is to test the CTM Parser 2 | 3 | //http://fractalfantasy.net/#/4/uncanny_valley 4 | //http://fractalfantasy.net/uncannyvalley/assets/Head_03.ctm 5 | //http://fractalfantasy.net/uncannyvalley/assets/Head_03_Colour_2K.jpg 6 | //http://fractalfantasy.net/uncannyvalley/assets/Head_03_Gloss_2k.jpg 7 | //http://fractalfantasy.net/uncannyvalley/assets/Head_03_Bump_2K.jpg 8 | 9 | var CTMParser = { 10 | 11 | name: "ctmparser", 12 | type: "mesh", 13 | format: "text", 14 | dataType:'text', 15 | mimeType: "text/plain; charset=x-user-defined", 16 | 17 | init: function() 18 | { 19 | /* 20 | LiteGUI.requireScript([], inner ); 21 | 22 | function retrieve(url, callback){ 23 | var request = new XMLHttpRequest(); 24 | request.open("GET", url, true); 25 | request.overrideMimeType("text/plain; charset=x-user-defined"); 26 | request.send(); 27 | request.onload = callback; 28 | return request; 29 | }; 30 | 31 | function inner() 32 | { 33 | //var request = retrieve("url to ctm file to test", loaded ); 34 | } 35 | */ 36 | }, 37 | 38 | deinit: function() 39 | { 40 | }, 41 | 42 | showDialog: function() 43 | { 44 | var dialog = new LiteGUI.Dialog("dialog_daylight", {title:"Day light editor", close: true, width: 300, height: 120, scroll: false, draggable: true}); 45 | dialog.show('fade'); 46 | }, 47 | 48 | parse: function(data) 49 | { 50 | var stream = new CTM.Stream(data); 51 | var file = new CTM.File(stream); 52 | if(!file) 53 | return; 54 | console.log( file ); 55 | var mesh = GL.Mesh.load({ vertices: file.body.vertices, triangles: file.body.indices, normals: file.body.normals, coords: file.body.uvMaps[0].uv }); 56 | LS.RM.registerResource( "test.ctm", mesh ); 57 | console.log("Mesh registered"); 58 | return mesh; 59 | } 60 | } 61 | 62 | LS.Network.requestScript("js/plugins/extra/lzma.js"); 63 | LS.Network.requestScript("js/plugins/extra/ctm.js"); 64 | LS.Formats.addSupportedFormat( "ctm", CTMParser ); 65 | 66 | 67 | -------------------------------------------------------------------------------- /plugins/scripts/daylight.js: -------------------------------------------------------------------------------- 1 | //this is a file that is not included in the config.json, the purpose is to test the 2 | 3 | 4 | var DayLightTool = { 5 | 6 | name: "daylight", 7 | 8 | init: function() 9 | { 10 | LiteGUI.menubar.add("Actions/Tools/day light", { callback: function() { DayLightTool.showDialog(); }}); 11 | } 12 | 13 | showDialog: function() 14 | { 15 | var dialog = new LiteGUI.Dialog("dialog_daylight", {title:"Day light editor", close: true, width: 300, height: 120, scroll: false, draggable: true}); 16 | dialog.show('fade'); 17 | 18 | var scene = LS.GlobalScene; 19 | var light = scene.root.light; 20 | 21 | var sun_height = scene.extra.sun_height || 1; 22 | var sun_orientation = scene.extra.sun_orientation || 0; 23 | var sun_distance = scene.extra.sun_distance || vec3.dist( light.position, light.target); 24 | var change_color = false; 25 | 26 | var widgets = new LiteGUI.Inspector(); 27 | widgets.addSlider("Sun Height", sun_height, { min:0, max:1, step:0.001, callback: function(v) { sun_height = v; inner_update(); }}); 28 | widgets.addSlider("Sun Orientation", sun_orientation, { min:0, max:360, step:1, callback: function(v) { sun_orientation = v; inner_update(); }}); 29 | widgets.addSlider("Sun Distance", sun_distance, { min:0, max:1000, step:1, callback: function(v) { sun_distance = v; inner_update(); }}); 30 | widgets.addCheckbox("Change color", change_color, { callback: function(v) { change_color = v; inner_update(); }}); 31 | dialog.add(widgets); 32 | 33 | var gradient_sun = [[0,0,0],[0.4,0.512,0.2],[1,0.68,0.2],[1,0.93,0.7],[1,1,1],[1,1,1]]; 34 | var gradient_sky = [[0,0,0],[0.1752,0.22272,0.24], [0.7,0.4,0.02],[0.55,0.74,0.94],[0.75,0.91,0.97],[0.75,0.91,0.97]]; 35 | 36 | inner_update(); 37 | 38 | function inner_update() 39 | { 40 | light.type = Light.DIRECTIONAL; 41 | light.size = 140; 42 | 43 | //color 44 | if(change_color) 45 | { 46 | var c = null; 47 | var c1 = Math.floor(sun_height * (gradient_sun.length-1)); 48 | var c2 = Math.ceil(sun_height * (gradient_sun.length-1)); 49 | var f = sun_height * (gradient_sun.length-1) % 1; 50 | 51 | vec3.lerp( light.color, gradient_sun[c1], gradient_sun[c2],f ); 52 | if(scene.info) 53 | { 54 | vec3.lerp( scene.info.background_color, gradient_sky[c1], gradient_sky[c2],f); 55 | vec3.lerp( scene.info.ambient_color, gradient_sky[c1], gradient_sky[c2],f ); 56 | vec3.scale( scene.info.ambient_color, scene.info.ambient_color, 0.8 ); 57 | } 58 | } 59 | 60 | //position 61 | var rot_pitch = quat.setAxisAngle( quat.create(), [1,0,0], (1-sun_height) * Math.PI * 0.5 ); 62 | vec3.transformQuat( light.position, [0,sun_distance,0], rot_pitch); 63 | 64 | var rot_yaw = quat.setAxisAngle(quat.create(), [0,1,0], sun_orientation * 0.0174532925); 65 | vec3.transformQuat(light.position, light.position, rot_yaw); 66 | light.target.set([0,0,0]); 67 | 68 | scene.extra.sun_height = sun_height; 69 | scene.extra.sun_orientation = sun_orientation; 70 | scene.extra.sun_distance = sun_distance; 71 | 72 | RenderModule.requestFrame(); 73 | } 74 | } 75 | } 76 | 77 | CORE.registerModule( DayLightTool ); 78 | -------------------------------------------------------------------------------- /plugins/scripts/recorder.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /press/images/interface.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/press/images/interface.jpg -------------------------------------------------------------------------------- /press/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/press/images/logo.png -------------------------------------------------------------------------------- /serverapps/fbxconv/README.md: -------------------------------------------------------------------------------- 1 | fbx-conv 2 | ======== 3 | 4 | [![Build Status](http://144.76.220.132:8080/buildStatus/icon?job=fbx-conv)](http://144.76.220.132:8080/job/fbx-conv/) 5 | 6 | Command line utility using the FBX SDK to convert [FBX/Collada/Obj files](http://docs.autodesk.com/FBX/2014/ENU/FBX-SDK-Documentation/files/GUID-0B122E01-7DB8-48E3-AADA-5E85A197FEE1.htm) 7 | to more runtime friendly formats. The FBX content is parsed into an 8 | in-memory datastructure. Pluggable writers then take this datastructure 9 | to generate the output. Send us a pull request if you want the writer 10 | for your engine/framework/app to be integrated. We'll build the 11 | converter for Windows, Linux and Mac. 12 | 13 | The FBX parser is largely based on GamePlay SDK's encoder. We'll try to 14 | back-port any bug fixes or improvements. 15 | 16 | Hangout notes https://docs.google.com/document/d/1nz-RexbymNtA4pW1B5tXays0tjByBvO8BJSKrWeU69g/edit# 17 | 18 | Command-line Usage 19 | ==================== 20 | * Windows - `fbx-conv-win32.exe [options] []` 21 | * Linux - `fbx-conv-lin64 [options] []` 22 | * Mac - `fbx-conv-mac [options] []` 23 | 24 | ###Options/flags 25 | * **`-?`** -Display help information. 26 | * **`-o `** -Set the type of the output file to 27 | * **`-f`** -Flip the V texture coordinates. 28 | * **`-p`** -Pack vertex colors to one float. 29 | * **`-m `** -The maximum amount of vertices or indices a mesh may contain (default: 32k) 30 | * **`-b `** -The maximum amount of bones a nodepart can contain (default: 12) 31 | * **`-w `** -The maximum amount of bone weights per vertex (default: 4) 32 | * **`-v`** -Verbose: print additional progress information 33 | 34 | ###Example 35 | `fbx-conv-win32.exe -f -v myModel.fbx convertedModel.g3db` 36 | 37 | Precompiled Binaries 38 | ==================== 39 | You can download the precompiled binaries from http://libgdx.badlogicgames.com/fbx-conv 40 | 41 | The binaries are recompiled on any changes in the Git repository, via our trusty Jenkins instance, see http://libgdx.badlogicgames.com:8080/ 42 | 43 | On Windows you'll need to install VC 2010 Redistributable Package http://www.microsoft.com/en-us/download/confirmation.aspx?id=5555 44 | 45 | On Linux and Mac, we have to link to the dynamic libraries of the FBX SDK (libfbxsdk.so and libfbxsdk.dylib). We recommend copying libfbxsdk.so 46 | to /usr/lib on Linux. Otherwise you can use LD_LIBRARY_PATH and set it to the directory you put the .so file. 47 | 48 | There's also a [Qt GUI wrapper](https://github.com/Reydw/Fbx-Converter-GUI) and [Java GUI](https://github.com/ASneakyFox/libgdx-fbxconv-gui) around it. 49 | 50 | Building 51 | ======== 52 | You'll need premake and an installation of the FBX SDK 2014. Once installed/downloaded, set the 53 | FBX_SDK_ROOT to the directory where you installed the FBX SDK. Then run one of the 54 | generate_XXX scripts. These will generate a Visual Studio/XCode project, or a Makefile. 55 | -------------------------------------------------------------------------------- /serverapps/fbxconv/fbx-conv-lin64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/fbxconv/fbx-conv-lin64 -------------------------------------------------------------------------------- /serverapps/fbxconv/fbxconv.php: -------------------------------------------------------------------------------- 1 | &1"; 59 | $str = exec($cmd, $out); 60 | $output = join($out,"|"); 61 | //echo $output; 62 | //die($output); 63 | 64 | header("Content-type: application/json"); 65 | //header("X-command-output: " . $output ); 66 | header("X-file-length: " . count($data) ); 67 | header("X-debug: " . $file["tmp_name"] ); 68 | 69 | $filebasename = "temp/" . (basename( $tempfilename, ".fbx" )); 70 | 71 | 72 | if( !is_file( $filebasename . ".g3dj" ) ) 73 | { 74 | //http_response_code(400); //bad request 75 | die('{"error": "error parsing FBX"}' ); 76 | } 77 | 78 | $result = Array(); 79 | $result["status"] = 1; 80 | $result["scene_path"] = $filebasename . ".g3dj"; 81 | $result["scene_name"] = $filebasename; 82 | 83 | $mediafolder = $filebasename . ".fbm"; 84 | if( is_dir( $mediafolder ) ) 85 | { 86 | $result["images"] = Array(); 87 | if ($handle = opendir($mediafolder)) 88 | { 89 | while (false !== ($file = readdir($handle))) 90 | { 91 | if ('.' === $file) continue; 92 | if ('..' === $file) continue; 93 | $result["images"][] = $mediafolder . "/" . $file; 94 | } 95 | closedir($handle); 96 | } 97 | } 98 | 99 | if(isset($_REQUEST["immediate"])) 100 | $result["scene"] = file_get_contents( $filebasename . ".g3dj" ); 101 | 102 | $str = json_encode( $result ); 103 | header("Content-length: " . strlen($str) ); 104 | 105 | echo $str; 106 | 107 | //echo file_get_contents( $filebasename . ".g3dj" ); 108 | 109 | //what about pictures? 110 | //TODO 111 | 112 | //erase all files 113 | if(0) 114 | { 115 | unlink( $filebasename ); 116 | unlink( $filebasename . ".fbx" ); 117 | unlink( $filebasename . ".g3dj" ); 118 | if(is_dir( $filebasename . ".fbm")) 119 | deleteDir( $filebasename . ".fbm" ); 120 | } 121 | ?> -------------------------------------------------------------------------------- /serverapps/fbxconv/libfbxsdk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/fbxconv/libfbxsdk.so -------------------------------------------------------------------------------- /serverapps/mitsuba/main.js: -------------------------------------------------------------------------------- 1 | console.log("Mitsuba WebSocket Server\n**************************"); 2 | 3 | //SETTINGS 4 | var port = 9003; 5 | 6 | var index = process.argv.indexOf("-p"); 7 | if(index != -1) 8 | port = parseInt( process.argv[ index + 1 ] ); 9 | 10 | //CREATE GAME ********************* 11 | var Mitsuba = require("./mitsuba.js"); 12 | 13 | //LAUNCH SERVER *********************** 14 | var http = require('http'); 15 | var url = require('url'); 16 | 17 | //HTTP REQUESTS 18 | var server = http.createServer( function(request, response) { 19 | 20 | response.setHeader('Access-Control-Allow-Origin', '*'); 21 | response.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS'); 22 | response.setHeader('Access-Control-Allow-Headers', 'Content-Type'); 23 | console.log("REQUEST: " + request.url ); 24 | 25 | var url_info = url.parse( request.url, true ); //all the request info is here 26 | var pathname = url_info.pathname; //the address 27 | var params = url_info.query; //the parameters 28 | Mitsuba.onRequest( request, response ); 29 | }); 30 | 31 | server.on("error", function(err){ 32 | console.log("Error: Port ",port," is in use."); 33 | process.exit(); 34 | }); 35 | 36 | server.listen( port, function() { 37 | console.log("Server ready in port", port ); 38 | }); 39 | 40 | //WS REQUESTS 41 | var WebSocketServer = require('websocket').server; 42 | wsServer = new WebSocketServer({ // create the server 43 | httpServer: server //if we already have our HTTPServer in server variable... 44 | }); 45 | wsServer.on('request', function(request) { 46 | //accept all connections 47 | var connection = request.accept( null, request.origin ); 48 | 49 | //create client 50 | var client = Mitsuba.onClientJoin( connection ); 51 | 52 | //when users send message 53 | connection.on('message', function( message ) { 54 | if( message.type == "utf8" ) 55 | client.onMessage( JSON.parse( message.utf8Data ) ); 56 | else if( message.type == "binary" ) 57 | client.onBinary( message.binaryData ); 58 | else 59 | console.log("unknown message format:", message.type ); 60 | }); 61 | 62 | //user leaves 63 | connection.on('close', function(reason) { 64 | if(reason == 1009) 65 | console.log("connection closed: data too long"); 66 | console.log("User gone, close code:",reason);// close user connection 67 | Mitsuba.onClientLeave( client ); 68 | }); 69 | }); 70 | 71 | 72 | //START GAME ****************************** 73 | Mitsuba.start(); 74 | 75 | //input 76 | /* this causes problem in nohup mode 77 | const readline = require('readline'); 78 | const rl = readline.createInterface({ 79 | input: process.stdin, 80 | output: process.stdout 81 | }); 82 | 83 | 84 | rl.on('line', (answer) => { 85 | MAZrServer.onCommand( answer ); 86 | }); 87 | rl.on('pause', () => { 88 | MAZrServer.finish(); 89 | server.close(); 90 | rl.close(); 91 | process.exit(); 92 | }); 93 | */ -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-11d2e1-1f30fb6-46.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-2083-1b5fd4d-4e.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-2084-168b701-4f.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-2084-1900798-50.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-2084-19e42ff-52.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-2084-1f915a1-51.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-60fe1-1613676-3f.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-67be1-19a1ad1-4a.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-71f79-17c094e-50.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-d96-1e203fb-32.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-e58-164c7a8-41.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-e5a-12e250a-43.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-e5a-1a12c28-42.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-eb7-13b13e7-33.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-9f5980-ee1-19e4455-32.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-f9d3c2-94459-1702d5e-13.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-f9d3c2-96b38-1a3eb01-18.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/@RINS-f9d3c2-97a1e-13204bf-1d.obj: -------------------------------------------------------------------------------- 1 | # Generated with liteGL.js by Javi Agenjo 2 | 3 | v -5.0000 5.0000 -5.0000 4 | v -5.0000 -5.0000 5.0000 5 | v -5.0000 5.0000 5.0000 6 | v -5.0000 5.0000 -5.0000 7 | v -5.0000 -5.0000 -5.0000 8 | v -5.0000 -5.0000 5.0000 9 | v 5.0000 5.0000 -5.0000 10 | v 5.0000 5.0000 5.0000 11 | v 5.0000 -5.0000 5.0000 12 | v 5.0000 5.0000 -5.0000 13 | v 5.0000 -5.0000 5.0000 14 | v 5.0000 -5.0000 -5.0000 15 | v -5.0000 5.0000 5.0000 16 | v 5.0000 -5.0000 5.0000 17 | v 5.0000 5.0000 5.0000 18 | v -5.0000 5.0000 5.0000 19 | v -5.0000 -5.0000 5.0000 20 | v 5.0000 -5.0000 5.0000 21 | v -5.0000 5.0000 -5.0000 22 | v 5.0000 5.0000 -5.0000 23 | v 5.0000 -5.0000 -5.0000 24 | v -5.0000 5.0000 -5.0000 25 | v 5.0000 -5.0000 -5.0000 26 | v -5.0000 -5.0000 -5.0000 27 | v -5.0000 5.0000 -5.0000 28 | v 5.0000 5.0000 5.0000 29 | v 5.0000 5.0000 -5.0000 30 | v -5.0000 5.0000 -5.0000 31 | v -5.0000 5.0000 5.0000 32 | v 5.0000 5.0000 5.0000 33 | v -5.0000 -5.0000 -5.0000 34 | v 5.0000 -5.0000 -5.0000 35 | v 5.0000 -5.0000 5.0000 36 | v -5.0000 -5.0000 -5.0000 37 | v 5.0000 -5.0000 5.0000 38 | v -5.0000 -5.0000 5.0000 39 | 40 | vn -1.0000 0.0000 0.0000 41 | vn -1.0000 0.0000 0.0000 42 | vn -1.0000 0.0000 0.0000 43 | vn -1.0000 0.0000 0.0000 44 | vn -1.0000 0.0000 0.0000 45 | vn -1.0000 0.0000 0.0000 46 | vn 1.0000 0.0000 0.0000 47 | vn 1.0000 0.0000 0.0000 48 | vn 1.0000 0.0000 0.0000 49 | vn 1.0000 0.0000 0.0000 50 | vn 1.0000 0.0000 0.0000 51 | vn 1.0000 0.0000 0.0000 52 | vn 0.0000 0.0000 1.0000 53 | vn 0.0000 0.0000 1.0000 54 | vn 0.0000 0.0000 1.0000 55 | vn 0.0000 0.0000 1.0000 56 | vn 0.0000 0.0000 1.0000 57 | vn 0.0000 0.0000 1.0000 58 | vn 0.0000 0.0000 -1.0000 59 | vn 0.0000 0.0000 -1.0000 60 | vn 0.0000 0.0000 -1.0000 61 | vn 0.0000 0.0000 -1.0000 62 | vn 0.0000 0.0000 -1.0000 63 | vn 0.0000 0.0000 -1.0000 64 | vn 0.0000 1.0000 0.0000 65 | vn 0.0000 1.0000 0.0000 66 | vn 0.0000 1.0000 0.0000 67 | vn 0.0000 1.0000 0.0000 68 | vn 0.0000 1.0000 0.0000 69 | vn 0.0000 1.0000 0.0000 70 | vn 0.0000 -1.0000 0.0000 71 | vn 0.0000 -1.0000 0.0000 72 | vn 0.0000 -1.0000 0.0000 73 | vn 0.0000 -1.0000 0.0000 74 | vn 0.0000 -1.0000 0.0000 75 | vn 0.0000 -1.0000 0.0000 76 | 77 | vt 0.0000 1.0000 0.0000 78 | vt 1.0000 0.0000 0.0000 79 | vt 1.0000 1.0000 0.0000 80 | vt 0.0000 1.0000 0.0000 81 | vt 0.0000 0.0000 0.0000 82 | vt 1.0000 0.0000 0.0000 83 | vt 1.0000 1.0000 0.0000 84 | vt 0.0000 1.0000 0.0000 85 | vt 0.0000 0.0000 0.0000 86 | vt 1.0000 1.0000 0.0000 87 | vt 0.0000 0.0000 0.0000 88 | vt 1.0000 0.0000 0.0000 89 | vt 0.0000 1.0000 0.0000 90 | vt 1.0000 0.0000 0.0000 91 | vt 1.0000 1.0000 0.0000 92 | vt 0.0000 1.0000 0.0000 93 | vt 0.0000 0.0000 0.0000 94 | vt 1.0000 0.0000 0.0000 95 | vt 1.0000 1.0000 0.0000 96 | vt 0.0000 1.0000 0.0000 97 | vt 0.0000 0.0000 0.0000 98 | vt 1.0000 1.0000 0.0000 99 | vt 0.0000 0.0000 0.0000 100 | vt 1.0000 0.0000 0.0000 101 | vt 0.0000 1.0000 0.0000 102 | vt 1.0000 0.0000 0.0000 103 | vt 1.0000 1.0000 0.0000 104 | vt 0.0000 1.0000 0.0000 105 | vt 0.0000 0.0000 0.0000 106 | vt 1.0000 0.0000 0.0000 107 | vt 1.0000 1.0000 0.0000 108 | vt 0.0000 1.0000 0.0000 109 | vt 0.0000 0.0000 0.0000 110 | vt 1.0000 1.0000 0.0000 111 | vt 0.0000 0.0000 0.0000 112 | vt 1.0000 0.0000 0.0000 113 | 114 | g mesh 115 | f 1/1/1 2/2/2 3/3/3 116 | f 4/4/4 5/5/5 6/6/6 117 | f 7/7/7 8/8/8 9/9/9 118 | f 10/10/10 11/11/11 12/12/12 119 | f 13/13/13 14/14/14 15/15/15 120 | f 16/16/16 17/17/17 18/18/18 121 | f 19/19/19 20/20/20 21/21/21 122 | f 22/22/22 23/23/23 24/24/24 123 | f 25/25/25 26/26/26 27/27/27 124 | f 28/28/28 29/29/29 30/30/30 125 | f 31/31/31 32/32/32 33/33/33 126 | f 34/34/34 35/35/35 36/36/36 127 | -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/data.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/data.zip -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/guest/meshes/Lee-normalmap-tangent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/guest/meshes/Lee-normalmap-tangent.jpg -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/guest/meshes/Lee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/guest/meshes/Lee.jpg -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/guest/meshes/Lee.mip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/guest/meshes/Lee.mip -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/guest/meshes/Lee_spec.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/guest/meshes/Lee_spec.jpg -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/scene.exr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/scene.exr -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/scene.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/mitsuba/temp/user_test/scene.png -------------------------------------------------------------------------------- /serverapps/mitsuba/temp/user_test/scene.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /serverapps/project_deployer/config.php: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /serverapps/project_deployer/config.sample.php: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/0fccbb99e8b3c7396b1bada3c5d17a72.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_path": "http://www.tamats.com/projects/webglstudio/editor//fileserver/files//", 3 | "project_folder": "testfoo2", 4 | "scene": "guest/projects/we3d.scene.json", 5 | "files": [ 6 | "guest/prefabs/room.wbin", 7 | "guest/prefabs/furniture/mesa.wbin", 8 | "guest/prefabs/furniture/silla.wbin" 9 | ] 10 | } -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/7a77fbaaa86bc65fb066c8661bfcf9af.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_path": "http://www.tamats.com/projects/webglstudio/editor//fileserver/files//", 3 | "project_folder": "testfoo2", 4 | "scene": "guest/projects/we3d.scene.json", 5 | "files": [ 6 | "guest/prefabs/room.wbin", 7 | "guest/prefabs/furniture/mesa.wbin", 8 | "guest/prefabs/furniture/silla.wbin" 9 | ] 10 | } -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/c0d9421521b3502dcd6662abedd765c4.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_path": "http://www.tamats.com/projects/webglstudio/editor//fileserver/files//", 3 | "project_folder": "testfoo2", 4 | "scene": "guest/projects/we3d.scene.json", 5 | "files": [ 6 | "guest/prefabs/room.wbin", 7 | "guest/prefabs/furniture/mesa.wbin", 8 | "guest/prefabs/furniture/silla.wbin" 9 | ] 10 | } -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/d37bd27143a3e73ed394d62548db0391.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_path": "http://www.tamats.com/projects/webglstudio/editor//fileserver/files//", 3 | "project_folder": "testfoo2", 4 | "scene": "guest/projects/we3d.scene.json", 5 | "files": [ 6 | "guest/prefabs/room.wbin", 7 | "guest/prefabs/furniture/mesa.wbin", 8 | "guest/prefabs/furniture/silla.wbin" 9 | ] 10 | } -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/testfoo2/guest/prefabs/furniture/mesa.wbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/project_deployer/deploy/testfoo2/guest/prefabs/furniture/mesa.wbin -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/testfoo2/guest/prefabs/furniture/silla.wbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/project_deployer/deploy/testfoo2/guest/prefabs/furniture/silla.wbin -------------------------------------------------------------------------------- /serverapps/project_deployer/deploy/testfoo2/guest/prefabs/room.wbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onedit/editor/c1cef60780ac2bd8e3dbf967c68152bba263cad2/serverapps/project_deployer/deploy/testfoo2/guest/prefabs/room.wbin -------------------------------------------------------------------------------- /utils/repack.sh: -------------------------------------------------------------------------------- 1 | cd "$(dirname "$0")" 2 | echo "LITEGL" 3 | ../../litegl/utils/pack.sh 4 | cp -v ../../litegl/build/* ../editor/js/extra 5 | echo "ONECORE" 6 | ../../onecore/utils/pack.sh 7 | cp -v ../../onecore/build/* ../editor/js/extra 8 | echo "LITEGUI" 9 | ../../litegui/utils/pack.sh 10 | cp -v ../../litegui/build/*.js ../editor/js/extra 11 | cp -v ../../litegui/build/*.css ../editor/css 12 | echo "LITEGRAPH" 13 | ../../litegraph/utils/pack.sh 14 | cp -v ../../litegraph/build/* ../editor/js/extra 15 | cp -v ../../litegraph/css/*.css ../editor/css 16 | echo "LITEFILESERVER" 17 | cp -v ../../litefileserver/src/litefileserver.js ../editor/js/extra 18 | echo "WEBGLTOCANVAS2D" 19 | cp -v ../../canvas2DtoWebGL/src/Canvas2DtoWebGL.js ../editor/js/extra 20 | 21 | -------------------------------------------------------------------------------- /utils/search.sh: -------------------------------------------------------------------------------- 1 | 2 | 3 | #helps finding erros in the code 4 | grep -in --color --exclude=\*.min.* -r "$1" ../editor/js/. 5 | 6 | --------------------------------------------------------------------------------