Jump to content

How To Use Tristrip?


ziggx

Recommended Posts

Hi,

I want to use tristrip to reduce the size of my model. However, when I try to render, I see nothing (even though the model is there in wireframe in my viewport.) What's the trick to getting tristrips to render? Any hints would be welcome.

TIA

Ziggx

Link to comment
Share on other sites

Hmm... but doesn't converting to polygons defeat the purpose of tristrip? Oh well, have to look for other ways of simplifying my geometry.

Thanks for shedding light on that Edward.

Ziggx

Unfortunately, the renderers don't support TriStrips right now, only the opengl viewport. You need to append a Convert SOP to convert it to polygons before rendering.

20734[/snapback]

Link to comment
Share on other sites

Well, you could also use PolyReduce instead. The point ot tristripping was so that you get faster opengl display for things that didn't need to get rendered. I think it might also be for game engines that supported tristripping.

Link to comment
Share on other sites

Hmm... but doesn't converting to polygons defeat the purpose of tristrip? Oh well, have to look for other ways of simplifying my geometry.

Thanks for shedding light on that Edward.

Ziggx

20735[/snapback]

The purpose of tristrip is actually to build ordered strips of triangles that can be manipulated quicker than other types of geometry. I don't think it has any other purpose than realtime applications, at least certainly not as a method to optimize or reduce geometry for software rendering. The way it works is it creates triangles from the surface and then groups them into strips. In a game environment these tristrips allow you to manipulate the geometry quicker because it reduces the number of calculations your hardware has to do. Here's a simple example; say you have a non-tristripped model of 10 polygons. To transform the model you hardware needs to do a calculation on every point of every triangle, that's 30 calculations. With a model that is a tristrip of those same 10 triangles, you need to do 3 calculations on the first tri an one calculation on each subsequent tri because you've already calculated the other two points for the previous tri; a total of 12 calcualtions vs 30. This sort of savings really adds up when you are dealing with a character in a game that has 5000 triangles. I would think that trying to use tristrips with a software renderer that refines the surface with micropolygons, or whatever, would actually slow rendering down. The renderer could set the geometry up quicker, but then I'd imagine you'd lose all that savings refining the mesh for rendering.

As far as what purpose they serve in Houdini... If you are working with a realtime application like a game, they are very useful because you need to manipulate the geometry dozens of time per second. If you are rendering with software it's not a big deal if it takes a full second or even a few to set the geometry up, it's really a drop in the bucket compared to the rest of the work that needs to be done to render the image. If you are animating characters or working with other complex geometry that needs to be animated or manipulated in the viewport they are useful for creating proxy geometry. If what you want is to just simplify complex geoemtry you should be using polyreduce or iso-offset. If you need to simplify geometry into triangles for a simulation you should use divide, or tristrip and convert the geometry back to polygons.

Link to comment
Share on other sites

Thanks for the information. There is nothing in the help files to explain any of this. So much to learn!

20749[/snapback]

Sounds like the perfect kind of infomation MCronin should add to the brand new user-contributed notes section of the TriStrip SOP, eh? :ph34r:

Link to comment
Share on other sites

mr has support for triangle strips (not from the tristrip SOP though, but internally), so it has a software renderer usage as well.

Just thought this may be interesting.

20761[/snapback]

I've never used MR so I don't know, but I suppose if anything it may be related to the fact that certain operations in MR can be accelerated by hardware, or it could be some legacy support from back in the mid 90's when everyone was using SI for game development. There are renderers like Final Render that do "microtriangle" refinement, so maybe they can take advantage of tristrips as well. Still, I don't seen them as particualrly useful for software rendering, because literally we are talking about saving milliseconds here.

As for trifans... Though the concept is similar they really have very limited use. For a trifan to work all the triangles in the fan have to share a single point, right? That's generally something people seem to try to avoid when they model, unless they are doing a flat round surface like a low res wheel or the top of an oil drum or something. Even when you are trying to make a flat round surface, you can easily make it tri-stripable by reorienting the edges, so trifans seem to be somewhat depreciated.

I'll try to contribute more to the wiki.

Link to comment
Share on other sites

Sounds like the perfect kind of infomation MCronin should add to the brand new user-contributed notes section of the TriStrip SOP, eh?  :ph34r:

20754[/snapback]

When I read this I though you were talking about the Wiki... I just got the latest build of 8. The user comments feature is absolutely awesome. I added a comment :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...