Re: XSI Triangulation to CDH

Date : Thu, 08 Feb 2007 14:39:55 +0100
To : XSI(at)Softimage.COM
From : André Adam <a_adam(at)49games.de>
Subject : Re: XSI Triangulation to CDH
Wow, thanks, our tools developer just called this a very smart solution - before he found out that this means work for him.. ;))

Thanks again!

   -André


Wessam Bahnassi wrote:
Basically as I said in my first reply:
"we ask the GraphicsSequencer to render all objects using materials with
that shader attached."

Something like:

g_bShaderRerouteDataToCDH = true;

GraphicSequencerContext ctx(refContext);
CGraphicSequencer seq = ctx.GetGraphicSequencer();
CStringArray fams;
fams.Add(siMeshFamily);
fams.Add(siSurfaceFamily);
CRefArray arr =
g_XSIApp.GetActiveSceneRoot().FindChildren(L"",L"",fams,true);
seq.RenderListUsingMaterial(arr,L"MyRTShaderName");

g_bShaderRerouteDataToCDH = false;


Wessam Bahnassi Microsoft DirectX MVP, Programmer Electronic Arts -- 'Talk is cheap because supply exceeds demand'


-----Original Message-----
From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
Behalf Of André Adam
Sent: Thursday, February 08, 2007 4:37 AM
To: XSI(at)Softimage.COM
Subject: Re: XSI Triangulation to CDH

Not really, our CDH is not supposed to draw the whole scene but
individual objects, and we can't identify individual objects or
clusters
from the stream data passed from XSI to the RTS viewport, the very
problem why we don't get render passes to work right inside the RTS
viewport.

Is there something we simply have overlooked?

Thanks so far, cheers!

    -André


Wessam Bahnassi wrote:
That's good, now all you have to do is communicate the tessellated
geometry
that's passed to your RT shader by XSI to your CDH plug-in, and now
your CDH
shares the same geometry as in the RT shader.

Wessam Bahnassi
Microsoft DirectX MVP,
Programmer
Electronic Arts
--
'Talk is cheap because supply exceeds demand'



-----Original Message-----
From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
Behalf Of André Adam
Sent: Thursday, February 08, 2007 12:35 AM
To: XSI(at)Softimage.COM
Subject: Re: XSI Triangulation to CDH

Thanks François, Wessam, really appreciated, but we don't have any
problems to write a triangulation, the problems is that we need to
precisely mimic the XSI algorithm in the CDH. This is about the
generation of normal maps, where distortions in the Texture
Projection
are compensated relative to the XSI triangulation.

We already have an OGL Realtime Shader which does a, say, 90 percent
job
of showing even rather complex materials. Where it fails are render
passes for transparencies, since XSI does not allow for defining the
point in time when something is supposed to be drawn in the
viewport.
To
circumnavigate this and other minor issues (environment mapping just
does not work out between OGL and DX) we have our DX engine running
in
a
CDH, basically allowing the artists to work in the OGL RT View and,
from
time to time, get a perfectly correct preview from the CDH - except
for
the triangulation issue...

Anyone from Soft who would like to give a hint at the actual
triangulation algorithm used?

Cheers!

    -André


François Painchaud wrote:

Some good links about triangulation algorithms and libraries to
keep
you busy:
www.cs.cmu.edu/~quake/triangle.html
www.cs.berkeley.edu/~flab/cs294-5/project2/mesh.html
http://gts.sourceforge.net
www.andrew.cmu.edu/user/sowen/software/triangle.html
www.cs.berkeley.edu/~jrs/mesh/

François

Le 2007-02-07 21:45, Wessam Bahnassi a écrit :

A pretty easy triangulation algorithm (it might be the one XSI is

using, but

I'm just guessing) is the GLUtesselator. For the matter of CDH, I

had to

code DSK|ShaderBass for a while, and that was basically another

real-time

rendering engine for XSI. It used CDH though, and what we did was
to
attach

a custom RT shader node to the material, and in our plug-in, we
ask
the

GraphicsSequencer to render all objects using materials with that

shader

attached. This way, you get your triangulation automatically done
by
XSI the

way it does it for all other RT shaders.

I hope this helps,
Wessam Bahnassi
Microsoft DirectX MVP,
Programmer
Electronic Arts
--
'Talk is cheap because supply exceeds demand'


-----Original Message-----
From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
Behalf Of Alan Jones
Sent: Wednesday, February 07, 2007 6:47 AM
To: XSI(at)Softimage.COM
Subject: Re: XSI Triangulation to CDH

Hi André,

Unfortunately we can't access this - though I did request the

ability

to access the underlying representation of any set of components.

i.e. from a selection of polies get the polygons which make the
subdivided version, for edges get the edges which represent the
subdivided version of those edges.

It would allow things like what you're suggsted as well as
building
proper wireframe rendering solutions (pushing the sudivided mesh
as
curves to the renderer etc).

Anyone else who wants to add their name to that box would be
great
for

getting Soft to push it up the priority ladder :-)

Cheers,

Alan.

On 2/7/07, André Adam <a_adam(at)49games.de> wrote:


Hello alltogether,

does anybody familiar with the C++ SDK know if it is possible to
reference the triangles resulting from XSI's internal

triangulation

of


polygon meshes from a given facet?
We are currently trying to get the triangle structure of
selected
objects into our Custom Display Host, and since we have to draw

the

objects through their polygon clusters (holding the material),
we
can't


simply access the triangles using GetTriangles() from the
Geometry
class, since this is only available for the whole object.

Another approach would be to mimic XSI's triangulation inside of

the

CDH, any chance of gettung access to the internal algorithm?

Thanks for any hint, cheers!

    -André


---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
body:
unsubscribe xsi


---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi


--- Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body: unsubscribe xsi


Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.