I think it would be worthwhile improvment. Perhaps it could be implemented accross the board for modelling, rendering, and the game engine when we get to it.
That sounds like a fantastic idea to me! Anyone want to suggest this to the blender developers? (as if a thousand people haven’t already)
Now this may be way wrong - but I seem to remember that someone once made a pythonscript for culling… and that, apart from the obvious advantage while modeling, it also improved rendering speed quite substantial since no unnecessary geometry was considered for calculations by the renderer.
Anyways, having this implemented could actually be more sweet that you bargained for.
But then again, it could be my mushy brain playing tricks on me again
Jamesk: you’re right, there was a script that did backfrace culling, but only in regard to the camera’s point of view. Also, I’m not sure if it worked with animations or just stills.
Martin
So I wonder why nobody continued on the work and tried to make better of it…???
I rant: to add to this (what I find as) rant
backface culling would not be all you want,
let me explain.
for a cube (or other convex object) backface culling would only show the front, if you could only select the front all would be well.
but what about two cubes? With only backface culling there really isn’t anything stopping you from selecting a face that is completely obscured by the other cube. The zbuffer allows the nearest face to APPEAR on top, but backface culling did not put it there.
I understand what you mean, you would like solid objects (like in wings), but I wouldn’t call it backface culling
(materials can also be used to store selections, but they may be a little worse at it than vertex groups)
Backface culling when “armed” wouldn’t allow you to select anything but what is visible. And it could be toggled on and off like it can in 3DS Max…so yes it is what you’d want. You could shut off the visual effect as well. In 3DS Max you can have it “Ignore backfaceing” or something to that tune, whereby your clicks are automatically assumed to be on vertices in the “front” of the view. In other words, unless you rotate the model, you can’t click verts on the back. These two features are separate, but should both be included.
Solid geometry (like in wings) and backface culling are COMPLETELY different things.
Backface culling: The display procedures simply do not draw the vertex if it is obscured by one or several polygons considered to be “in front” of it, from screen view.
Solids (solid geometry): A modeling paradigm (or whatever) that refers to the fact that all objects are, at all times, closed shapes. That is, you cannot do ‘open shells’ like in Blender or Maya or whatever.
Backface culling, if fully optional and combined with the other feature, the inability to select backface vertices or faces, is ALWAYS a good and decent feature.
Solid geometry is a very good thing most of the time, but not always perhaps, and it also depends a bit on your personal modeling style if you like it or not.
That reminds me of subtractive modeling, where the environment you’re working in is assumed to be solid until you cut something out of it. Thats pretty good for game design but awful for anything else.
Would that be something like CSG without ‘union’ and ‘intersect’ then? :o
It would be a bit like that yeah. Its like they say…you don’t carve a canoe out of a tree. You just cut away everything that isn’t canoe.
I guess that sorta applies here at least. Basically though with subtractive modeling you start by removing one giant chunk for your level and then fill it in with all the little parts. At least thats what I started doing. There’s still booleans and what not (only they were far more simplistic), only everything is solid unless otherwise specified by butting something empty into it.
ROFL! You’re a funny guy, you know… [remember, I’m swedish, so I’ve never heard a lot of english/american proverbs. I only know things about trees, elks and falukorv]
Lol…I’m glad I’m entertaining somebody! Thats not reall an american proverb. So far as I know its native American, and as for the source I heard it on the American sitcom “Home Improvement” many years ago. lol. Glad you liked it!
wow, this thread exploded.
Backface culling when “armed” wouldn’t allow you to select anything but what is visible. And it could be toggled on and off like it can in 3DS Max…so yes it is what you’d want. You could shut off the visual effect as well. In 3DS Max you can have it “Ignore backfaceing”
that’s exactly what i’m taking about.
Idea:-
Give Blender 1 more Layer. This Layer will be ignored by the rendering engine, ignored by the cpu and ignored by memory. It could just be a directory on your harddrive.
Have a hotkey that moves the selected object to this new Layer. When Blender does this, a small python file of small size is generated with all the necessary information about the mesh/object .
This python file is then written into a directory of your choice on the harddrive, freeing up cpu/ram.
A list of all objects moved to this new layer could be generated during this process and the resulting size of the list will be all that should hinder performance within Blender.
To retrieve an object back into the renderer etc, select from the list and hey presto.
Any comments on feasability,
Sonix.
I must have missed the point, because I don’t see how that can be useful (other than by freeing some memory in a not really effective way).
Why go through Python when you could just save chunks of the blend file separately and then have functions like
“Separte objects to new Blend file”
“Append all file from directory”
just trying to understand, although a “Output to script” function would be nice too, and can more or less already be done (I’ve done it already for meshes with minimal info).
Martin
would there be temperary solution for a python script to autohind function as in the python script would rotate your object in (ever direction possible) then somhow figure out from the rotations which vertices was not in front and automaticly execute the slected vertices and h-key?
somehow I find myself clarifying my previous comment (again)
I didn’t mean solid geometry, I meant that backface culling on it’s own will not disallow the user from selecting verticies that are not in their view because they are obscured by something else. In wings you cannot select an obscured vertex (unless you model is really odd).
Backface culling has the assumption that your object is solid, and therefore only one side is important (inside or outside). This is useful for convex (no indentations) objects, but for concave ones something more complicated is necescary. (that is why opengl rendering has a zbuffer)
Sorry you’re right I seemed to have spun of at a tangent there.
Sonix.
yeah… I implemented this some time ago… it only worked in wireframe mode (mabey it worked in shaded mode also, I cant remember…) I posted it on the testing builds a while back on the blender.org fourms but no one seemed to like it. It was a huge hack anyway that (ab)used the hide flag for the verts to “cull” the back faces. its quite nice for modeling complex meshes when you only want to see the portion facing you, such as faces and stuff. the source for it is lost on an old HDD of mine somewhere, but the algo I used to implement was trivial and only added mabey 20 lines to the source, at most.
http://www.blender.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=2978&highlight=
I dont think the link any works anymore because of my account getting shut down some time ago.
Sorry to revive this thread, I just happened to come across it while searching for something else.