Boxcar type Ge

About Truespace Archives

These pages are a copy of the official truespace forums prior to their removal somewhere around 2011.

They are retained here for archive purposes only.

Boxcar type Ge // Work in Progress

1  2  3  |  

Post by RAYMAN // Feb 23, 2009, 8:43am

RAYMAN
Total Posts: 1496
pic
No its the truespace forum and the people are contantly using Truespace as if it were as easy as just ad and subtract objects from each other which

in Polygon modeling simply doesnt work !

Those people constantly end up with screwed up topology and need help

with the subject........ because what they would like to do is not covered by

poly modeling well ! If we get TS 8 some time in the future and the nurbs are not dumpt then its exactly those features i´m pointing the people to that

make it easy for them to model things quickly and I think its the intention of Microsoft to make modeling for the people as easy as possible.

its people like you who constantly rant about no progress in the development

without pointing to were that could be !

It´s not cheerleading to any program as this is a funtamental difference

from nurbs to polys.AND VALID FOR ALL PROGRAMS.....

Post by TomG // Feb 23, 2009, 8:58am

TomG
Total Posts: 3397
They would most likely benefit most from a tutorial or description on how to achieve it in tS without NURBS - which is possible. As noted, many won't have these other programs that allow such things as booleans with NURBS, so telling them it's a better approach is like telling someone the faster way to drive to work is to do it in a Ferrari, it will shave minutes off their journey - they don't have one, so it doesn't help them ;)


In this case, given the tools in tS, how would this person best solve the problem they have run into? Not what is the best solution if he had every application to hand, or in an ideal world of choosing any tool, but in the particular case of having tS, so having to use poly modeling to make this kind of shape (or maybe even preferring poly modeling for this kind of shape).


The issue remains one of the surface having holes and edges which confuses the renderer, and solving that is what is required. It can be done - via triangulation, manual or otherwise, and that can be made easier by putting the holes in as separate objects, rather than cutting all the holes out of one object.


That's the solution I would take in this case to solving it in tS without other apps with the tS toolset as it stands today :)


HTH!

Tom


EDIT - BTW James, your objects while neat, still have n-gons and holes, and floating vertices. tS usually handles these well, but you will still run into issues on export, and eventually an object with enough of these might break down on rendering and the holes will appear not to be there as the renderer simply fills in the spaces. It could be that the holes seem there in one render engine but not another (eg wireframe shows them, but Lightworks does not - or maybe Lightworks does, but in real-time they look filled in, and so on). The solution remains the same, to removing or reducing the n-gons, floating vertices and edges, etc.

Post by jamesmc // Feb 23, 2009, 9:07am

jamesmc
Total Posts: 2566
They would most likely benefit most from a tutorial or description on how to achieve it in tS without NURBS - which is possible. As noted, many won't have these other programs that allow such things as booleans with NURBS, so telling them it's a better approach is like telling someone the faster way to drive to work is to do it in a Ferrari, it will shave minutes off their journey - they don't have one, so it doesn't help them ;)

In this case, given the tools in tS, how would this person best solve the problem they have run into? Not what is the best solution if he had every application to hand, or in an ideal world of choosing any tool, but in the particular case of having tS, so having to use poly modeling to make this kind of shape (or maybe even preferring poly modeling for this kind of shape).

The issue remains one of the surface having holes and edges which confuses the renderer, and solving that is what is required. It can be done - via triangulation, manual or otherwise, and that can be made easier by putting the holes in as separate objects, rather than cutting all the holes out of one object.

That's the solution I would take in this case to solving it in tS without other apps with the tS toolset as it stands today :)

HTH!
Tom

EDIT - BTW James, your objects while neat, still have n-gons and holes, and floating vertices. tS usually handles these well, but you will still run into issues on export, and eventually an object with enough of these might break down on rendering and the holes will appear not to be there as the renderer simply fills in the spaces. It could be that the holes seem there in one render engine but not another (eg wireframe shows them, but Lightworks does not - or maybe Lightworks does, but in real-time they look filled in, and so on). The solution remains the same, to removing or reducing the n-gons, floating vertices and edges, etc.

Ya, learned my lesson on using using boolean objects in workspace and trying to use LW to render them.

I don't do much exporting of 3D objects from tS, so no worries there.

Post by marcel // Feb 23, 2009, 9:20am

marcel
Total Posts: 569
pic
For this case you can use the grid array and change all the holes at the same time. The object is very simple to modify. :)

Post by spyfrog // Feb 23, 2009, 11:27am

spyfrog
Total Posts: 181
For this case you can use the grid array and change all the holes at the same time. The object is very simple to modify. :)


Sorry, but I don't understand how you can use the grid array for this?


As I understand, the general consensus is that I should triangulate the object? I will try that and report back. Thanks. :)

Post by marcel // Feb 23, 2009, 12:05pm

marcel
Total Posts: 569
pic
Sorry, but I don't understand how you can use the grid array for this?


As I understand, the general consensus is that I should triangulate the object? I will try that and report back. Thanks. :)


I have a solution to do different objets in an array grid without convert to a group of objet. I can edit objets separately or use sds without leaving the array grid (normally it is not possible but there is a trick).

OK, it is not the best solution for your problem. It was just for info.

Triangulate is the simplest solution but i am sure your objet can be repaired without triangulate. I think it is a problem of reverse normal on a face of one hole. when i have this kind of problem, i erase the face that hides the hole and i verify if the other faces are good.

Before triangulate, you can try to add vertical vertices on the principal face behind the holes to avoid bad triangulation.

Sorry, i can't explain technique correctly in english and it annoys me beause i know this problem. :o

Post by TomG // Feb 23, 2009, 12:16pm

TomG
Total Posts: 3397
Auto triangulation will likely work, but it will make the model very messy. I've noticed auto triangulation tends to take one vertex, then create a "spray" of edges out from it to others, in a fan shape, instead of joining up matching pairs of vertices between two identical holes.


This can result in "long thin" triangles, which can cause their own issues. So manually triangulating is often preferable. Doing that on a model as complex as this would be time consuming, so you might want to create a "stand alone hole" - one section of the object, with the hole in the middle, and with neat triangulation to avoid the floating edges. You can then copy and paste this one object, essentially copying the triangulated hole. Beats having to go through and manually add edges over and over and over again ;)


See my gurney mesh for that - each hole sat in a separate square object, and I just cloned the square object to make all the holes. Had I tried to boolean out the holes out of one continuous object, it would have been disastrous, and had I tried to repair such results manually it would have taken forever.


You can try auto triangulation - I would suggest workspace side Quadrify as the most likely to give neat, usable, pleasant results, followed by workspace side Split Polygons, followed by Model side triangulate.


HTH!

Tom

Post by TomG // Feb 23, 2009, 12:31pm

TomG
Total Posts: 3397
Some example images - the first is the object, a cube with two cylinders cut from it.


The second is using Model side Triangulate. It's actually done a fine job between the two holes, though I find usually it doesnt. Down on the flat faces inside the holes though, it has done the "spray of rays" and so we have some tiny triangles, and long thin ones, which could cause problems for render engines or export import routines.


Next up is workspace Split Polys, a nice job here, both between the holes and on the flat faces inside them. I do see some long thin edges though, outside the holes this time, and again those could be a problem. Quadrify wins for me, making the neatest most usable job - this is likely best as some render engines and packages are happy with quads and don't need triangles, so stopping at this point may let you use less faces. And for those that want triangulation, auto triangulation from this point should be fine and not cause any oddities as the faces are nicely divided up.


Quite often though auto triangulation will mess up between the holes too, not joining them up neatly as seen here, but doing something similar to what is seen inside the holes on the flat faces.


The new Quadrify and Split Polygons have much better algorithms for doing this, so I strongly suggest using those, and indeed they may do as they have done here even on the complex model with all the holes, and save you needing to make one hole object and clone it! My gurney was made way before tS7 so Model side triangulate was my only option, and it did not perform at all well enough to let me do the triangulation manually!


HTH!

Tom

Post by marcel // Feb 23, 2009, 12:34pm

marcel
Total Posts: 569
pic
....... each hole sat in a separate square object, and I just cloned the square object to make all the holes. Had I tried to boolean out the holes out of one continuous object, it would have been disastrous, and had I tried to repair such results manually it would have taken forever........

HTH!

Tom


Why disastrous?

It work fine with the boolean objets with a hole. Just need precision with the panel info. don't align manually.

Post by TomG // Feb 23, 2009, 12:49pm

TomG
Total Posts: 3397
Ok, ONE more post on this :) For the array solution, you would make one hole, then the neat connection to each corner vertex seen on the outer sides here would be how it is done. You would then duplicate that block.


As you can see, there is potential for some thin triangles still here, and the array solution avoids that. The manual approach to avoid separate objects would be to draw this sort of thing yourself, eg draw a square of edges around each hole, hook the vertices from around the hole to the corners of that square just as seen on the outside here - but when you have a lot of holes, that is a lot of work!


A partial manual solution is shown - I drew some hexagons around the holes, then simply used the automatic Quadrify. This allowed the automatic process to create somethign that does not require any long thin triangles at any point. To compare, I enlarged one part of the original Quadrified object and drew in one place where full triangulation would still require a long thin triangle (and drawing the triangle in the other direction is also long and thin too). So sometimes "helping out" the automatic process is a useful thing to get the best result!


HTH!

Tom


PS to Marcel - disastrous as the booleans eventually fail, with so many floating edges and holes, so when you boolean subtract the 20th hole from the same large cube, it crashes, or loses edges elsewhere; and triangulation issues occur at render time or export (it had to be exported to Max) resulting in holes being filled in, and there was no way to auto triangulate and have a neat mesh without the new Quadrify and Split Poly tools (bear in mind this was back with tS6.6 I think it was). It was very messy indeed, so simply having the hole self contained in its own small cube, and copying it to make the whole required object, solved that :) Each copy was of course moved mathematically so the cubes containing the holes lined up perfectly, I wouldn't have placed them by hand, it wouldn't have worked :)


EDIT - actually I'd probably continue the middle edge into a loop all the way around the object, I see one place where a long thin could still occur :) IN effect this is the same as the separate cubes, just drawn onto the surface of the one object - but still more time consuming than just making the small cube and cloning, to save drawing those edges.

Post by marcel // Feb 23, 2009, 1:31pm

marcel
Total Posts: 569
pic
You can this the errors at the right (after more 20 holes) and the holes repaired at the left.

Post by marcel // Feb 23, 2009, 1:52pm

marcel
Total Posts: 569
pic
another more clean. about 5 seconds to repair.

Post by marcel // Feb 23, 2009, 2:07pm

marcel
Total Posts: 569
pic
And the auto triangulation from the repaired objet. Less one second :)

Post by marcel // Feb 23, 2009, 2:18pm

marcel
Total Posts: 569
pic
With this method, you don't need to triangulate in Truespace except if you want to export. Sorry Spyfrog for all these comments. now you can to continue to model your train........... :)

Post by TomG // Feb 24, 2009, 2:06am

TomG
Total Posts: 3397
Sometimes auto triangulation works well, in which case all is good. Sometimes it doesnt and a manual approach is required. It can give messy results that no-one will be able to model and work with. In the case of the gurney, the booleans themselves started to fail, as can happen with Model side / tS6.6 booleans with lots of repeats to the process. Believe me if I could have just cut the holes out and auto triangulated, I would have done :)


Sometimes you need to do it even in tS - Paul Woodward had an issue with holes booleaned in a brake disc for his Ducati motorbike in an early tS7. As noted in some renders eg solid mode the holes were there, but in Lightworks they were not, or some other mixture of some render engines filling in the holes.


So, knowing about manual corrects, and how to avoid cutting out lots of holes from the same object by making an array of individual objects, can still be handy at times. If you don't need to do it, well that's all the better of course! But sometimes you'll find booleans give up, and sometimes you'll find auto triangulation too unpleasant to work with, or leaving "long thins" that can give rendering issues, and that's when the manual stuff comes in handy!


And indeed, back to the train!


HTH!

Tom

Post by marcel // Feb 24, 2009, 3:06am

marcel
Total Posts: 569
pic
..........Believe me if I could have just cut the holes out and auto triangulated, I would have done :) .......

And indeed, back to the train!


HTH!

Tom


Yes i understand. each problem is different. I would have loved to have the bad objet of spyfrog trying to fix it without triangulating.

Post by spyfrog // Feb 24, 2009, 10:49am

spyfrog
Total Posts: 181
Ok, since we have been sidetracked (yes, I am a funny guy!) we might as well continue down on that track (hilarious even!) a bit further...


If I understand this correctly, we have this problem:

1) My holes are "flooting" in the middle of the object without any lines connecting them to other lines?

18530


2) Each of my hole was made of one object instead of making all holes at once with one big object. I didn't used an array to punch a hole at once, I boolean subtracted several identical objects.


3) I shouldn't have made a boolean subtraction. However, I use TS 6.6 since I find this much better than TS 7.6 (I only master modelside and TS 6.6 is more stable than 7.6 in modelside) so how should these whole been made?


4) I should have surrounded each hole with a hexagon to make triangulating easier?


I also have a question - why does the software enables you to do things that you really can't do according to the renderer? There is no problem to make these holes in the modeler but apparently they don't work in the renderer - a bit strange in my opinion...


I have included my COB file for the undercarriage. However, on my last test render this worked without problem, so perhaps the error can't be repeated now or was I simply lucky?

18531

Post by TomG // Feb 24, 2009, 11:04am

TomG
Total Posts: 3397
The modeler is made by one company (Caligari) and the render engine is just an engine that receives that, made by another company (Lightworks). As such, tS modeler is very forgiving, and works with geometry that some other 3D apps just wouldn't accept (n-gons and holes). These other "3d apps" sometimes mean the render engine too - think of it this way, the geometry is passed from the core tS modeling to the Lightworks render engine, which then does its own processing and handling of that geometry according to its rules and code.


As a note, all 3D packages warn about the hazards of using booleans, and n-gons and free-floating vertices / edges are the issues there too, so this is not unique to tS :)


The modeler lets you do it because it is a powerful way to model. Usually you run into no problems, but as the number of holes increases (whether they were cut at once or not), the potential for confusion in the render engine increases.


The concept of using an array, btw, is not to use an array of drills for making the holes - instead, you make one with just one hole, then duplicate this object, with the hole and triangulation done, into an array that makes your final object. By placing them mathetmically, you can ensure the edges meet perfectly, making it look like one object with lots of holes cut out, when it is in fact lots of objects with just one hole cut out.


Drawing extra edges around the holes should also help, but is more time consuming generally than just making one object and duplicating it wherever you need a hole - depends on how many holes you have. I have manually triangulated at times where separate objects are not too useful, eg on a cabinet where I made holes for all the screws etc. It took a long time, was "unnecessary" as tS was handling it fine (both modeling, and real-time rendering, both engines, and the final render in both V-Ray and Lightworks), but it had to export as I plan to sell it at some point for other apps as well as tS, so needed to remove such items even though it worked fine in tS.


And often it does, often it works fine, but sometimes (as here) it does not, and then you need to give the render engine etc a bit of assistance by manual or automatic triangulation.


I wouldn't have made these any other way than with booleans. Making it without them? I'd divide each hole in half, and extrude the top and bottom out using Sweeps. I'd then use the array process to make the "other half" of the hole on another object. Note that the sweeps would have loops all the way around the extruded parts (the top and bottom of the holes), so would have no difficulty in triangulating and playing nice with all render engines.


Creating similar loops, all the way across from one vertex on the front of the hole to all the way to the same vertex on the back of the hole would be an ideal solution, but would be a lot of drawing! The sweep process would give that result much easier. But I'd still do it the "boolean and repair later" way :)


HTH!

Tom

Post by TomG // Feb 24, 2009, 11:30am

TomG
Total Posts: 3397
Just loaded the model, and although it renders ok in Lightworks, it doesn't work in the tS Model side real-time renderer. Neither will it pass across the bridge to tS workspace, so the problems are definitely there.


Constructing it out of parts I think is the best answer. It would take a lot of edge drawing to repair. You can triangulate it, but the result is rather messy and potentially problematic also. You can see how now the real-time renderer can show it, but note the underlying mesh has become very unpleasant.


You can boolean subtract to make the parts of the object smaller, and then with less holes things work better.


On the array of holes, the final image shows what I mean - I would use an object like this, which I booleaned out of the original COB and used Quadrify upon, and copy and place it to position each hole. It's easy to edit by moving the various groups of vertices to give different sized holes, and different length pieces. The end result will be neat and tidy, easy to view, problem free if you choose to export to other packages, should work in any render engine, etc.


It would take a little more work than positioning each drill, but not too much - you just position each piece rather than each drill.


HTH!

Tom


Images are - tS6.6 real-time render (Model side in tS7.6) with holes filled in incorrectly; tS6.6 real-time render (Model side in tS7.6) displayed correctly after triangulation in Model side; wireframe of triangulated mesh, showing it is somewhat untidy, and long thin triangles could cause their own problems on render or export (if no problems, then maybe the mesh is ok as a solution); the one piece that could be copied to make all the holes, and would not give triangulation problems for render engines or exports.



EDIT - PS you could sweep and mirror etc using the single array object, as it happens, if you wanted to end up with one object rather than separate ones; this would clone this "neat" triangulation to all places where you needed it but still be one object rather than glued separate objects.

Post by TomG // Feb 24, 2009, 11:42am

TomG
Total Posts: 3397
Here is how the mesh might look constructred using sweep and mirror and PE (including deleting parts in PE). Used the workspace side, wouldn't take long to reconstruct - I didn't follow the original as a guide here, though could to position the holes as necessary.


The resulting mesh is robust, and neat enough that you could continue working with it, no confusing edges making the wireframe hard to view, or making faces hard to select.


HTH!

Tom

Post by spyfrog // Feb 24, 2009, 11:48am

spyfrog
Total Posts: 181
Here is how the mesh might look constructred using sweep and mirror and PE (including deleting parts in PE). Used the workspace side, wouldn't take long to reconstruct - I didn't follow the original as a guide here, though could to position the holes as necessary.


The resulting mesh is robust, and neat enough that you could continue working with it, no confusing edges making the wireframe hard to view, or making faces hard to select.


HTH!

Tom


Ok, I think I understand what you mean now Tom.

It is more of a Lego like approach - you build it from smaller pieces. Then you boolean them together? And to put each part between each other I should use the object explorer and put them mathematically? Not by eye?


I will try that one to make it correct. Thank you all for your great input! :D

Post by TomG // Feb 24, 2009, 11:51am

TomG
Total Posts: 3397
You could boolean add, but it might fail - be sure to turn off delete edges or it will remove all the triangulation! Anyway with that done, it shouldnt cause bad geometry but it might just refuse to work. Boolean add can be touchy :(


Sweep and mirror should let you create one solid piece though, fairly easily. Just grab and slide vertices along. It should avoid any issues with booleans refusing to join things together, and keeps you in total control of the geometry.


Glad this helps some! It is a tricky issue, stops you modeling "just how you want" and adds a bit of extra work. I run into it a lot since I'm often exporting or importing to various things (from XNA to Virtual Earth to other apps to what have you).


HTH!

Tom


PS you could do lego, and just use Glue / Encapsulate in 3D. This was my initial thinking and what I did with the gurney. You have to have everything places to the faces exactly line up to avoid gaps or overlaps though, hence the need to type in values rather than do it by eye! This sweep, mirror, PE approach should let you work more easily without the need to worry about seams or gaps though. let us know how you get on! And nice model too, been enjoying watching this develop

Post by Jack Edwards // Feb 24, 2009, 12:06pm

Jack Edwards
Total Posts: 4062
pic
Something to keep in mind is that you can't use SDS on a mesh with poles like the examples Tom gave, the creasing would be fairly bad. Instead of running all those edges into a single vertex at the corners, better would be to extend them into new loops that cut across the existing geometry.

Post by TomG // Feb 24, 2009, 12:30pm

TomG
Total Posts: 3397
Indeed! But much harder to create, so I would not go that route if SDS was not part of what was required.


The creation of the hole by sweeping the top and bottom would take care of that nicely though.


HTH!

Tom

Post by TomG // Feb 24, 2009, 12:36pm

TomG
Total Posts: 3397
Here is a rough example. By making the curve this way via sweeping, then mirroring to get a complete hole, you end up with something that will also SDS. It also makes a nice mesh that avoids triangulation etc, so solves all problems at once :)


I wouldn't recommend trying to repair the current mesh by drawing the edges on, it would be faster to rebuild this way from scratch if required. When I said much harder to create, I was thinking of modifying the existing mesh - its not actually harder if you start out this way. And it avoids booleans altogether ;)


HTH!

Tom

Post by marcel // Feb 24, 2009, 12:54pm

marcel
Total Posts: 569
pic
Your bottenramverk is ok now. Just need to do the same thing on the other side. :)

Very simple but there is other problems in the geometry (not the holes).

Post by marcel // Feb 24, 2009, 12:57pm

marcel
Total Posts: 569
pic
I thing the problem was normals on faces probably from a bug.

Post by marcel // Feb 24, 2009, 1:08pm

marcel
Total Posts: 569
pic
detail of the construction.

Post by marcel // Feb 24, 2009, 1:24pm

marcel
Total Posts: 569
pic
Et voilà! It is finish. When you use booleans you need precision. The cube at each extremity of the objet was not perfectly aligned before the boolean operation.

Post by marcel // Feb 24, 2009, 1:44pm

marcel
Total Posts: 569
pic
There is no problem that can be solved by a lack of solution. Probably a Chinese proverb :D

Thank Tom to show other way to model and avoid futurs problems.
Awportals.com is a privately held community resource website dedicated to Active Worlds.
Copyright (c) Mark Randall 2006 - 2024. All Rights Reserved.
Awportals.com   ·   ProLibraries Live   ·   Twitter   ·   LinkedIn