Vim3D – A new 3D vi clone [video]
vim3d.com
vim3d.com
Vim3d: Because 3d modeling software wasn't already hard enough to use.
Honestly if you want something in the spirit of vim for editing models, Blender already has a very confusing-but-efficient interface. (IE, pretty much everything is done via keyboard shortcuts that are optimized for using your left hand so you can keep your right hand on the mouse).
Super simple interface, and it's even written in Erlang.
However, for making static meshes quickly, and for doing UV mapping without wanting to stab yourself in the face, you can't beat it.
Blender:GIMP::Wings::Paint.NET
It doesn't do everything, but what it does do it is great at. Blender is just too baroque--much like the GIMP.
Meaning that you probably still can't read email in it, but it can already do conference calls. ;)
The main idea is to have scripting language and/or scripting interface hybrid with graphical modeling, animation, and even raytracing. Parameters can even be controlled by other parameters or channels making this super extensible, for example, controlling color or position of objects with the envelope of a music file. Objects are infinitely composable with groups, much like illustrator or photoshop, allowing you to do interesting transformations as well.
It's really useful because it becomes a sort of assembly language for working with files, textures, etc., and saving them as a scene file which aggregates all of this.
There is more information here: http://www.vim3d.com/
Any feedback, thoughts, ideas appreciated. Thanks!
PS. To build the current source on linux, you have to fix the comment in the Makefile that starts with '//' and lowercase the 'Primitives' directory.
Thanks, the primitives caps issue was also fixed before this commit.
im not even a frequent user and i only move stuff around with hjkl and qwe. not to mention the backtick (or space bar?) to open up the one liner prompt to revolve, extrude, etc...
</smiles>
I don't know Maya nor 3D editoes but I can see how this can be irrelevant, as it would be like comparing your favorite IDE keyboard shortcuts with vim's command mode. vim's power is in its modal interface and command composability thanks to text objects, adjectives and verbs. Also, having views handled like vim's buffers+tabs+windows instead of fixed situations.
To sum it up, vim is not just a bunch of hjkl keybindings. If this tool enables such a grammar and vocabulary in command mode, along with top to bottom scriptability of the editor's behavior, then it's worthy of the vim moniker. Otherwise it's just a misleading name.
It offers a big improvement over the GUI of 3d modellers. 3d modellers interfaces are way, way, way, too complex because they are trying to stuff wayyyyy too many parameters into standard UI controls (i've used mostly blender, but way back in the days of 3d studio, infini-d, and ray dream the interfaces were also very complex, to the point of having a very steep learning curve). It makes more sense and is much more expressive to interact with the modeller via commands
But it would be great to have a concept where you create a model of a table by creating a cylinder, copy and translate it three times, add a flat cube, connect these 5 pieces, and name them table. Then you would have another (non-)primitive that you can instanciate and maybe have some parameters to change it.
Here's what I'd like to see: libvim. Vim has already been ported to iOS, so it's obviously embeddable. I'd like to have an instance of vim running inside my program, and to be able to scrape the tty/screen.
That way, if I want to make a fancy Oculus VR editor, or any other IDE experiment, I don't need to re-code basic editor functionality. Yes, I know about Scintilla.
http://www.freehackers.org/VimIntegration
The best we have is vim as separate process in a client/server type environment, using sockets or some other non-ideal mechanism.
Perhaps developers/statisticians/scientists looking to visualise their data?
Consider that artists have already become experts at sketching, at visual design, etc. For them, a pen or stylus or 3d program doesn't feel like tooling, but give them an unfamiliar tool and it will totally get in the way of creative expression.
The question to me is whether Vim3D is actually bringing significant improvement over whatever shortcuts exist in current 3d modeling software.
I wanted to create something to enable me to build 3D content using a shell, but also having access to a graphical interface. When you use commands, you store the procedures or instructions for how to build something, so your work is more re-usable and stored as a scene file (plain text), vs. something like maya where you're graphically building and history gets deleted (in fact there is a delete history option in maya) and completely stored in binary or some very hard to read scene description language.
vim3d provides a simplified, very human-readable approach to its scene files that somewhat remind me of bash or assembly. And, as a programmer, you get the keyboard as your weapon of choice, with command history, undo/redo stack, and ability to save 3D scenes as programs that you can read back into the system to read or write later. Oh, here's another analogy: if vim3d is like vim, blender is like sublime text :)
Admittedly, much of vim3d's functionality (although not UI) was deeply inspired by sidefx.com's houdini if you are curious. Houdini is for the "engineers" of 3D designers in some perspective, whereas Maya is for the "non-technical" 3D designers.
It was originally in svn on google code since I wrote the code 3 years ago :)
(edit : and btw, I've noted myself it's no use to post comments when I wake up from France, since it's already old news for US and they are asleep as well ;) )
Thanks!
(This makes me incredibly happy. Now I can enjoy scripting models. Just imagining Web Service API to Vim3D, or dare I say DjangoGraphviz to Vim3D.)