Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cwjcc!gatech!prism!vsserv!geomag!prem From: prem@geomag.fsu.edu (Prem Subrahmanyam) Newsgroups: comp.graphics Subject: Re: Texture mapping Keywords: Texture mapping, convex quadrilaterals, triangles Message-ID: <170@vsserv.scri.fsu.edu> Date: 6 Sep 89 14:21:15 GMT References: <9119@pyr.gatech.EDU> Sender: news@vsserv.scri.fsu.edu Reply-To: prem@geomag.UUCP (Prem Subrahmanyam) Organization: Florida State University Computing Center Lines: 26 I would strongly recommend obtaining copies of both DBW_Render and QRT, as both have very good texture mapping routines. DBW uses absolute spatial coordinates to determine texture, while QRT uses a relative position per each object type mapping. DBW has some really interesting features, like sinusoidal reflection to simulate waves, a turbulence-based marble/wood texture based on the wave sources defined for the scene. It as well has a brick texture, checkerboard, and mottling (turbulent variance of the color intensity). Writing a texture routine in DBW is quite simple, since you're provided with a host of tools (like a turbulence function, noise function, color blending, etc.). I have recently created a random-color texture that uses the turbulence to redefine the base color based on the spatial point given, which it then blends into the object's base color using the color blend routines. Next will be a turbulent-color marble texture that will modify the marble vein coloring according to the turbulent color. Also in the works are random color checkerboarding (this will require a little more thought), variant brick height and mortar color (presently they are hard-wired), the list is almost endless. I would think the ideal ray-tracer would be one that used QRT's user-definable texture patches which are then mapped onto the object, as well as DBW's turbulence/wave based routines. The latter would have to be absolute coordinate based, while the former can use QRT's relative position functions. In any case, getting copies of both of these would be the most convenient, as there's no reason to reinvent the wheel. ---Prem Subrahmanyam