Show HN: Live-programmable voxel landscape in WebVR
primroseeditor.com
primroseeditor.com
I want to make live-programmable environments and create new user experiences that require VR, rather than adapting 2D UX to the stereo display. Having a text editor run in a texture is a necessary tool to start. I've demoed just the editor before, but this is the first time I've been able to demonstrate an environment constructed on the fly, using the editor.
You can find the source code here: https://github.com/capnmidnight/Primrose/
So are minecraft lanscapes made of voxels? No, these are polygons.
[0] http://www.hardcoregaming101.net/ecstatica/ecstatica2-6.jpg
That being said, editing text in 3D isn't fun. Text is by definition 2D and it's weird to edit it projected (although the idea itself seems cool).
I'd be perfectly happy with a split screen of 2D editor + 3D scene being edited.
Certainly this is not the most ideal setup, but I think it's a good baseline to continue to build from. I'm working on a game of collaborative AI bots that the user will program using a simple, not-JavaScript programming language. (maybe CoffeeScript, IDK, I actually slapped together a BASIC interpreter not too long ago for another demo I made). I think it will work better to organize functions 1-to-1 with editor objects, tied directly to the physical objects of which you're editing. I'm approaching it from a "crack open the back of the robot and twiddle the parameters" metaphor. I'm hoping the more concrete scenario will obviate some of those awkward issues you've mentioned.
Working in the browser provides me, a single developer, a much faster route to a wide variety of other features (webcam, audio, webrtc) as well as cross-platform compatibility (for example, this same site works in WebVR builds of Chromium and Firefox for Android using a Google Cardboard-like setup).
With that as the baseline, I want to experiment in creating new user experiences that require VR, rather than adapting the same, ol' 2D UX to the stereo display.
One of those things might be live-editable objects. Having a text editor run in a texture is a necessary tool to start. Eventually, I'll be building more controls and features for being able to manipulate objects on the fly.