GithubHelp home page GithubHelp logo

tentone / nunustudio Goto Github PK

View Code? Open in Web Editor NEW
2.1K 88.0 313.0 1.59 GB

Web powered cross-platform 3D, WebXR game engine.

Home Page: https://nunustudio.org

License: MIT License

JavaScript 89.35% HTML 6.41% CSS 1.02% Batchfile 0.01% GLSL 0.73% Handlebars 1.21% TypeScript 1.29%
webgl game-engine webvr 3d webxr

nunustudio's Introduction

Welcome to my lab 🧪

  • 📧 Reach me at [email protected] if you need any help.
  • 🛠️ Working at EQS Digital as R&D Software Engineer
  • ✨ Mostly working on computer graphics, vision and robotics.

nunustudio's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nunustudio's Issues

CubeTexture.js lines 123

new CubeTexture(); error : this.images[i] = new Image(self.images[i]);

this.images[i] = new Image(self.images[i]);

Update not immediate when changing attributes with mouse scroll

Hi

I am not sure whether this is a bug or a feature :)

Steps:

  1. add a basic shape (ex a plane)
  2. double click on it so that the object panel gets updated with its properties
  3. click inside the box of any property in the object panel, ex "Size W"
  4. use the scroll to change the value
  5. nothing happens in the Editor Area
  6. click outside the box => object gets updated

Mouse and Keyboard as objects

Change the Mouse and Keyboard to objects instead of global static classes, to allow multiple instances of nunu running on the same context.

Scene tab blocking on error

Scene tab blocking on error

Description
  • After an error the scene tab blocks
  • It needs to be closed and reopened for the editor to return back to normal
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Support for SpriteSheet animations

SpriteSheet animations

Description
  • Implement spritesheet animations as Texture objects that can be used with normal materials and particles
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Physics shape editor

Physiscs shape editor

Description
  • Shape editor for physics objects
  • Allow a physics object to have multiple shapes attached

Remove the build/ folder from the repository

Git is mainly for source code, not built code. Every time you update that file you're adding megabytes of data to the history, none of which is needed. It's better to get this fixed early on than lock into it later.

Run is stopped if switched to a script tab / remember scrolling pos

If you:

  1. Run the scene
  2. Switch to a script tab
  3. Go back to the scene

It appears the scene was stopped, i.e. it's not running anymore.

Is this intentional? I would argue it's a bit inconvenient. At least for me right now, I find myself going back and forth between the two tabs (the scene and the script) and it would be nice if it the scene wasn't stopped so that I can look at it and go back to the code.

Cannot adjust 2D view

It seems it only looks in one predefined direction and there is no way to change it

Fix fullscreen resize on demo page

Fix fullscreen demo page size on mobile

Description
  • Resize on working on mobile for the demo webpage
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Parameter graph editor UI

Some scene parameters change over time, such as camera location. nunuStudio can offer a 'parameter graph editor UI' to help animators fine-tune parameter transitions.

Examples

Blender3D

This idea is best illustrated by the Blender parameter graph UI (a.k.a. F-Curves):
Blender parameter graph UI

Synfig Studio

peek 2017-03-06 17-13

View port Navigation feels non intuitive

Description

So the view port navigation feels non intuitive and it takes more than a few seconds to pick up. I get that you are trying to replicate movement controls similar to Maya or 3D Studio Max. But It should be simpler than a DCC app navigation. My advice would be the following to improve the experience is as followed.

Using the WASD keys to navigate around the scene similar to a modern FPS or Third person shooter game controls. Using this in conjunction with right click and the mouse to drive the direction of the camera.

  • W = Move Forward
  • S = Move Backward
  • A = Move Left
  • D = Move Right

Unreal Engine 4 uses this navigation style and it is super intuitive to navigate around a view port.

Version
  • v0.8.9.22-alpha
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Web platform becomes unresponsive and crashes

Over time (after a few runs), the web platform (which I'm running on Chrome 58 on macOS) becomes very unresponsive and slow, sometimes even crashing. The scene I'm working on only has a couple of images and the script is nothing out of the ordinary, if that helps.

I realize this is very vague and unhelpful. I'm looking for pointers as to where I should look in order to understand the issue and perhaps come back with more feedback. How can I profile it?

Support for pause in runtime

Support for pause in runtime

Description
  • Add support for pause in runtime.
  • When an application is paused the update and rendering should stop.
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Text misaligned on MS Edge

Text misaligned on MS Edge

Description
  • Dropdown menus text is centered on Microsoft Edge.
  • Working fine on Chrome and Firefox

MS Edge
edge

Chrome
chrome

Platform
  • Web Version [X]

Pure Nodejs based build system

As stated in the docs, the current build system requires windows and java, which I guess is for closure compiler?

Would you consider a pure Node.JS build pipe? This would lower the bar of entry and IMO makes sense since it's a JS project.

My use-case is that I would like to use the eidtor and runtime, but I need to make some changes to the core to integrate it with some other tech. The build requirements are unfortunatley blocking me from doing this as I do not have access to a windows machine.

I guess closure compiler could still be used to produce final builds, or as an optional step.

macOS package error

I've downloaded the release, extracted and attempted to open nunu.app but it throws

You can’t open the application “nunu” because it may be damaged or incomplete.

image

Potentially relevant issue nwutils/nw-builder#346

Auto updates for desktop version

Automatic updates for desktop version

Description
  • Make desktoo version capable of updating its files using the ones on the web version
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Idle web-based nunuStudio causes high GPU load

Steps to reproduce the issue:

  1. start a local webserver (i use WebServer for Chrome)
  2. open nunuStudio/source/editor.html
  3. fire up TechPowerUp
  4. observe the high GPU load (here 70%)

2icgdurh

On my desktop PC it is not really an issue, but on my laptop it causes the fans to vigorously spin with the corresponding noise.

Maybe something can be done to reduce the idle load?

Hardware:

Support for post-processing effects

Support for post-processing effects

Description
  • Support for threejs post-processing effects in nunuStudio
  • Post processing effects can be attached to camera objects
  • Camera Editor tab with test scene for previewing post processing effects for that camera,
  • Post processing effect objects stored in an array

Resource Manager

Create a resource manager to manage and access resources!

Move all resource management from Program to this new class, and encapsulate methods currently present inside of Program.

gltf file support

Description

So the Khronos group is making a new 3d file format for VR and the web called gltf. It has the backing of several major companies with interests in VR. Anyway - Would it be possible to get gltf support in nunu studio? There is already an gltf loader for three.js here.

Version
  • v0.8.9.22-alpha
Platform
  • Web Version [X]
  • Windows [X]
  • Linux [X]

Video asset: autoplay + loop

Video asset: autoplay + loop

Description
  • Need control over autoplay and loop for video assets (as we have over audio assets)
  • I have a project with a video file, with audio, and the audio keeps playing ad nauseam
Version
  • 0.8.9.21
Platform
  • Windows

Looks of topmenu bar

Height is too low: it is 25px high but for ex 32px makes it look better
Font is too small
Titles of the menu items are too far apart

Support for scene 3D model export

Support for 3D model export

Description
  • Support for obj export using threejs OBJExporter / STLExporter
  • This features can be usefull for some 3D prototyping inside nunuStudio (specially using the web version)

Electron

Why not use Electron rather than NW.js? The community is much bigger and it's much nicer to work with Electron. Cross platform desktop builds are also much easier.

I'm bringing this up because I'm on macOS and there's no desktop build available.

Node-based effects pipelining/compositing UI

In 3D, animated, or multimedia projects, it is sometimes useful to perform a series of effects or create composite output from several inputs. To support this type of workflow, in an intuitive way, various multimedia applications provide node-based graphical interfaces.

Examples

Some examples of compositing or data-flow user interfaces include:

  • Blender3D node-based compositor - create data pipelines for visual effects, etc.
  • NATRON - node-based compositor, similar to Adobe After Effects
  • NodeRED - flow based programming environment

Related issues

Related to issue #26: Support for post processing effects
Possibly related to issue #27: Parameter graph editor UI

Editor theming engine

This issues is to discuss what things should be themeable inside the editor and what is the better way to do it.

I was thinking to use CSS themes and attribute classes do every different type of UI element.

Another solution is to use JSON files that store some attributes of the UI elements,, it would be faster but not so versatile.

I will not work on this at least until i have a beta versions available. But since there are some issues already open regarding this i decided to create this one.

Styling is embedded in the divs?

It seems that you define all the styling properties when you create the html elements. Is that a good practice?

Also the divs have no ID or class name which makes debugging a problem (especially when inspecting elements and trying to retrieve some)

Cannot attach scripts to objects in Project Explorer

Cannot attach scripts to objects in Project Explorer

The Project Explorer does not allow attachment of scripts to objects via dragging. The only result is re-ordering of the items in the list. Copy and Paste works.
Version
  • 0.8.9.25
Platform
  • Web Version [X]

Support for Grid Snapping and Angle Snap

Description

NuNu Studio needs support for grid snapping and angle snap. This will make object placement in NuNu studio much more precise and easier on artists using the tool. Angle Snap should start at 5 degrees and be able to be tweaked by the artist. Grid Snapping should should be able to be adjusted by the artist to fit his or her needs depending on the task at hand.

Version
  • v0.8.9.22-alpha
Platform
  • Windows

Drag and sort tabs

Enable tabs to be sorted on mouse drag, and prepare code for future support of multiple tabs open at the same time (tab division split)

Import multiple textures at once

It would be really helpful if we could import/upload multiple textures at once.

It's a bit of a chore importing textures one by one.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.