Modeling: Blender + Wings 3D

What is the possibility of Wings 3D becoming a part of Blender in the future? In my opinion, this would greatly enhance Blender’s modeling capabilities and overall as an application.

The chances that it would be “part of Blender” is about below zero… As an additional tool for you to use - it’s already there! Data exchange works pretty good - model in Wings, export to VRML+UV (plugin) and load it into Blender.

Your exactly right. I’ve been using it for a little while already. I just wondered if that might ever happen. I’ve seen in the past where software programs mere and become one.

Don’t forget that my IO Suite imports and exports wings files.

i must reccomend the import export suite, it works really well and easily, plus it can do heaps of different file types. Download it!

The IO Suite doesn’t work with Blender 2.25 or 2.26 though does it?

i dont think i could get it to run on 2.23 either…if i can remember correctly.

about joining blender & wings, i think it would be an excellent prospect, i hate the UI of wings, although the toolset is pretty fine. “Blendifying” the interface would definately be welcome.

I agree. There’s something very nice about the features Wings has. But the UI gets me down.

On the other hand, I had a real problem with Truespace’s UI as well.

Blender actually made quite a bit more sense to me. I know that’s insane as Blender isn’t known to have a particularly intuitive interface, but once I got past that it seemed quite logical and efficient.

Still can’t produce anything that’s worth a crap though. :smiley:

The Wings UI is excellent IMO… Totally transparent, the way I like it.
The Blender UI is great to, once you get beyond the initial shock. This is of course a well known fact.

However, aside from the fact that both apps are 3D and Open Source, they have very little in common. There are HUGE differences internally. Geometry data is stored in very different ways. A scene with 100.000 polys that Blender handles pretty gracefully would slow Wings down to a crawl…

Wings is the greatest modeler I’ve ever used. Blender is the greatest rigging/animation/deformation/material editing/poly- and nurbs-modeling/compositing application I’ve ever used. They work well together, but I cannot see how they could possibly be merged into a single program. A closer integration such as some sort of immediate data transaction pipe would perhaps be beneficial.

The sources are open - so any coder comfortable with Erlang, C and Python is free to gather up the necessary amount of coffee and start working!

That’s interesting, I find it really annoying. The fact that I have to right-click for everything really shits me.

Whereas I like the way that I can use a combination of mouse and keys together in Blender. It makes me feel more in control for some reason.

The would both be useful if there was a more direct import/export option of a groovy way of selecting a model in Blender and running a script to open up the same model in an instance of Wings.

It reminds me of working in a music software tool like n-Track Studio and being able to put my Cool Edit 2000 as an external tool preference. Then I can select any piece of audio and open it up in Cool Edit from n-Track, make the adjustments I want to make - save and then close Cool Edit. Then a simple screen refresh will pick up any of the changes I made and I can continue working.

Not every tool can have every function and quite frankly the software would be bloated if that were the case. However, there are many options to include almost seamless integration wherever possible.

Could I do it? Um - nah! However, it should be fairly simple to at least write a Python script to open up a selected object in an instance of Wings from Blender. I imagine it would just be a case of passing a converted object as an argument to the instance of Wings. When you’ve saved what you want in Wings it would be a case of pressing a button to reload and convert the object you just saved in Wings.

So it could be designed like this:

Select Object
Alt-P the script
A simple GUI with the button “Reload” appears and an adaption of the Wings export script is executed with a xxxx.wings filename (or something)
This file/object is passed to an instance of Wings that is created
When you hit save in Wings it stores it to the xxxx.wings filename
Close the Wings instance
Hit the “Reload” button in Blender and an adaption of the wings import script is used to reload the adjusted object back into Blender where you can continue to work.

Anyone like this idea?

I love the idea. It is very possible and my Wings IO module already handles most of the hard stuff. But one simple fact remains: Not all blender meshes can be easily converted to the winged-edge data structure. Why? Because blender and most other modellers allow things like open edges; faces whose normals point in opposite directions; un-closed meshes (i.e., a cube with one face deleted); etc. Wings does not allow any of those types of meshes. So, there are very few blender meshes out there that are topologically correct and can be exported on the first try. But all Wings meshes can be imported with no problem. I don’t fully understand the winged-edge data structure (or any of what I just said!) but if anyone wants to help me out, feel free. And download my suite, cause I worked hard on it! :wink:

Yeah. I have to admit - I know stuff all about 3D file formats or anything like that, but what you said does seem to be a bit of an obstacle.

Is there any likelihood that the ever-evolving Wings will implement what you mention?

Well, the secret is to assign your own hotkeys. It’s really easy - just select a menu option, extrude normal for example, but don’t click it: keep it highlighted, press ‘INSERTKEY’, then press whatever key you want to assign, and you’re done (keep eyes on status line).

Scorpius: You’re totally correct about the fact that Wings only tolerates clean, closed and solid meshes (you should know, having struggled with that export/import script of yours).
I’m no expert on winged edge technology, but in short it seems to work like this::

  • It is edge-oriented (obviously) while Blender is vertex-oriented.

  • Every edge holds information about all other edges it is connected to and the nature of the resulting faces. This is the most important feature, and makes it possible to select edgeloops and rings in a very convenient way. Mucho importante. (In Blender there’s no edge information, and the vertices don’t fully know where they belong. The face-data however keeps track on what vertices to use in order to build every polygon.)

  • The entire object is recalculated whenever you change something (this is the reason why beveling for instance can be surprisingly sluggish sometimes)

  • It does not allow anything else than solids, that is, there can not be any holes. You can however assign a ‘hole-material’ to certain faces, and thus indicate that those faces should be deleted upon export to a format that supports non-closed meshes, such as OBJ or VRML for instance. The only way to make real holes is by ‘intruding’ the object, which will make it hollow but with the inside made up by polygons as well as the outside. This effectively doubles the polycount, but you get a real, hollow solid as a result.

At the end of the day, the approach used in Wings is actually a very good one. It forces you to build decent meshes. The fact that you have to make solids will teach you proper modeling habits. Having solid meshes is also very, very important for raytracers, such as YafRay for instance, particularly when dealing with transparent materials (glass, ice, whatever) and associated caustics, transmission, refraction.

I knew there’d be something like that…I just hadn’t bothered looking for it. Shame on me.

Thanks for letting me know that anyway.

I installed Python 2.01 (with path), blender 2.23, downloaded the IO_suite.blend file from your site, opened it, started the script with Alt+P (which tends to show that python is correctly installed ?), but whatever wings file i try i keep getting the same error :

Traceback (most recent call last):
File “”, line 36, in getfilename
File “”, line 295, in read
File “”, line 71, in read_edges
IndexError: list index out of range

Any tips ?

btw do you plan on updating your suite for 2.26 and python 2.2 ?

Caleb72: wings can import many types of “dirty” (non-closed meshes), but it is not implemented in the plugin api. And I don’t know any workarounds for now.

Jamesk: I agree that wings’s approach is good, but I learned blender first, so I’m used to having holes, detached faces, etc. Each has its advantages. PS, you have a cool gallery.

clacos: You have some nice wings plugins, glad to see you here. What ver of wings are you using? The last version I tested it with was 0.97. I think I may have to update it. Make sure you don’t have any hard edges in your models, and try again.

no hard edges - i use the latest version 0.98.08d. Though i tried with 0.98.08 and this is the same.
Had some old files saved with wings pre-0.98, and your suite works great then. But the models i wanted to use are all post 0.98.08, so…

Anyway, concerning wings file encoding, you might be interested in knowing that there has been quite a big change in 0.98.04b (the gb_tree containing vertex record has been replaced by two smallest ones, one containing vertices positions, the other giving one edge connected to the vertex)

i hope one day your suite will reappear, fully updated for latest wings and blender. (no hurry, no pressure - i know what it is with updating my plugins :-? ) . This really looks like the perfect bridge…

OK, I’ve fixed the hard edges problem and it now works fine with 0.98.08c. I didn’t upgrade to 0.98.08d yet because of that nasty bevel bug. :frowning:

Thanks for the tips about the changes in 0.98.04b. I do plan to update the suite to read the latest versions.