WebGL Studio
webglstudio.org
webglstudio.org
Evan Wallace should get some credit. Evan created that fantastic WebGL Water demo.
However, between custom OpenGL UIs and HTML-based UIs, there is an entire spectrum of native apps (mobile and desktop) that make use of platform conventions and standard functionality. This space is difficult to cover with web technologies because you have to simulate the look & feel and make the site feel like an app.
Many people have tried to build "just like native" toolkits from WebGL and DOM, but it's pretty tough. WebGL is very low level for this, and DOM is much too high level for many things.
IRL, we don't expect toilets, hammers, bulldozers, shotguns, and surgical scalpels to have the same user interface features, and it would suck mightily if they did. Unfortunately, as those things get computerized we wind up getting the same crappy touch-screen menus and whatnot bolted on to them (imagine what using a hammer with a touch screen interface would be like).
I don't know the answer to how it could be brought about, but we definitely need some radically thinking in UI design. 3D libraries seem to at least provide the tools to make some new tools.
You really wouldn't mind if the app used control-p for delete, and control-z to quit?
That said you seem to be far enough along that redoing the GUI would not be a good idea really.
Also the DOM is a fairly okay retained mode UI, so if that is your preference I would just use it.
The difference is the browser vendors are in control of the implementation that will make it slightly more secure, but it's still a long way from the HTML/JS/CSS environment people though would replace plugins.
Mmh, yes, sorry, I'm bored. :)
How about "Photon Studio", "Sunshine 3D" or "Lightbulb"?
Maybe slightly off topic, but one of the most important takeaways from this: you don't need a bulky JavaScript framework to build complex applications. In fact, you may be better off without using one.
I'm sure there's a very narrow sweet spot where a given JavaScript framework can make you more productive. But if your application is complex enough, like this editor, the framework will probably work against you. And if it is simple enough, it may be better to not use the framework, so you don't grow dependent on it and find it hard to remove it if you need to grow the app.
Instead of the framework imposing the structure and constraints, a team can decide on the structure, agree on the constraints, and build libraries helpers according to that. Way more economic than the alternative: working around buggy and/or undocumented framework features, trying to catch up to constant changes and "upgrades", fighting against the JavaScript marketing machinery trying to decide which of the "Top JS Frameworks" to use, etc.
I learned so much there, so many amazing people.
Great work guys!
This being said I love the idea to stop at runtine any application coded in threejs and have the freedom to edit it from the console using the chrome extensition.
This seems much more polished in comparison.
A similar project (albeit not open source) is Goo Create by Goo Technologies: http://goocreate.com/product/
It is being used by several companies in pretty large productions (including games, ads, educational projects, etc) both for desktop and mobile devices. You should really check it out.
Full disclosure: I work for Goo Technologies as a Frontend developer.
The big questions for me are: What model formats does this support? How well developed is the animation support? How is the performance in large scenes and on mobile?
Performance could be improved, im aiming more to flexibility but i managed to have hundreds of objects with independent materials at 60 fps. For mobile i want to create a lightweight rendering mode because the current one has too many cases to consider.
The next release will be focused in bugs, and the one afterward in performance.
My binary format is similar to the WAD format, it is a way to store a json with the typed arrays encoded in chunks
Just friendly advice from someone who has seen things go badly before ;-)
btw how do you create applications like this that rivals desktop apps?
People think there are too many diferences between developing for desktop and developing for the web, but there arent, it is just a matter of time
BTW we should figure out a way to connect Clara.io to WebGLStudio as it can be a source of content, both models as well as 3D animations (Clara.io has a full keyframe editor.)
Besides you should compare it to game engines like unity or ue4, its very differend thing than 3D modeler.
Also it is interesting that it's written in JS without any higher-level technology like TypeScript or Dart.
A little bit off topic, but every time I try any kind of similar application (this, a CAD, a PCB editor) that is implemented to work in web browser, I lack feeling of "stability" of a desktop app with all the files stored locally - I would rather use a desktop app with inferior functionality.
About the stability of desktop apps I agree with you, but sooner or later that will have to change, so thats what we are pushing.
Component based systems have existed since 1968, way before Unity:
https://en.wikipedia.org/wiki/Component-based_software_engin...