Talk:Metaballs

confusion with meatballs?
Isn't the "not to be confused with meatballs" line a bit too much? I don't think someone who is looking for the meatballs article would accidently type metalballs and not notice the error when reading this article... Felsir 13:35, July 28, 2005 (UTC)
 * Removed the sentence. If there are reasons to keep the sentence state, please discuss here. Felsir 12:23, August 3, 2005 (UTC)
 * When I first learned about metaballs I read the word as "meatballs" and thought of them as such. It would have been helpful if the difference in spelling was made blatantly obvious from the first moment.  Just a random thought, I didn't write this article or anything. 136.165.84.139 02:47, 23 February 2006 (UTC)
 * Heh. The parent wrote 'metalball' 69.203.13.29 01:53, 23 September 2006 (UTC)
 * It doesn't help that the two metaballs in the image are meatball coloured :P --189.152.28.163 15:54, 21 June 2007 (UTC)

n-dimensional?
"Metaballs, in computer graphics terms, are organic-looking n-dimensional objects". I know the metaball function can obviously be extended to any number of dimensions, but "in computer graphics terms", I've never seen anything other than 3-D surfaces generated from metaballs.... Anybody care if, for the sake of clarity for the CG newbie, we simply state that they are 3D surfaces, often used for, say, crude approximations of water, etc.? Kjl 06:51, 8 May 2006 (UTC)


 * I agree that some typical uses of 3D metaball surfaces should be mentioned in the article, preferably in the first paragraph, but the simplified definition you suggested would exclude the 2D variant (which has been actually used in computer graphics). --Viznut 09:37, 8 May 2006 (UTC)

Inventor(s)
Was Jim Blinn the inventor of both the 2D and the 3D rendering techniques, or were there others involved?

The math for this seems a little off
According to the original Jim Blinn paper the points interior to the surface have densenties greater then the iso value (aka the threshold). Values outside of the surface would be less then the iso value. This make sense because: Assume that your function is 1/dist. If you sum this up: values closer to the your center would be greater and values further alway from you center would be smaller - therefore you would have easily exceeded your threshold if you were just a minute distance away from the center. Now if you were summing up dist instead of 1/dist - yes formual would hold for sum < threshold.

There are various books and other pages on the Web that discuss it both ways. http://developer.nvidia.com/object/dx10-practical-metaballs.html The code in the presentation indicatse that the point is inside if the point is > 1, else it is outside. Of course http://www.delphi3d.net/articles/viewarticle.php?article=metaballs.htm is in agreement with the article.

I understand there are various ways to use the formula and the inside or outside is left up to the writer of the algorithm. But if you're going to reference the original Blinn paper, I think it's fitting to also use the original description of the algorithm.

This would coincide with the original model that Blinn was representing. I don't think Blinn referred to his model as metaballs - the term blobby surfaces was used frequently. According to this source: http://steve.hollasch.net/cgindex/misc/metaballs.html - it was Japanese researchers that first used this one. This reference isn't isolated, there are a many references one can find on the web regarding this.

Regarding the "not to be confused with meatball" comment. That's actually metaballs folklore that gets passed around for a few laughs. It seems like it was a stab at the Japanese mispelling the word as meatballs.

Just my 2 cents.

Guassian
Shouldn't it be "Gaussian"? 83.87.69.47 00:43, 3 October 2007 (UTC)
 * Fixed. I'm not a math genius so if someone can clarify which specific Gaussian article this term should point to ("Gaussian" itself redirects to a list of terms), that would be appreciated. --Vossanova o&lt; 13:39, 3 October 2007 (UTC)
 * Fixed. Sadly, there is no specific article to point to to specifically explain gaussian potential constraints to generate an isosurface. However, applications for it are used in Poissons's equation to get a gaussian charge density (unless I'm mistaken). Poisson equation I also added a reference link to a portal of many more papers that make mention of both the gaussian potential and the Wyvill smooth surface method. --Danukasan (talk) 20:16, 13 April 2009 (UTC)

Meatball Color
One way to color each individual meatball is to find what percentage it is contributing to the sum at a particular point. Specifically, if sum = f(r1) + f(r2) + ... + f(rn) and the sum exceeds the threshold, then color = (color1 * f(r1) + color2 * f(r2) + ... + colorn * f(rn)) / (n * sum). Of course, you need to do that for each RGB color plane. —Preceding unsigned comment added by 66.108.139.199 (talk) 20:55, 10 May 2008 (UTC)


 * I thought you just cooked it longer -- isn't that a little painstaking? 161.165.196.84 (talk) 02:41, 18 January 2009 (UTC)

Parametric function?
Anyone know of a parametric function to create these types of objects? Thanks! SharkD (talk) 04:01, 8 November 2008 (UTC)
 * Under OpenGL I've used the Bivariate Bernstein Polynonial implementation glMap2 to generate the surface parametrically based on individual ball radius and their distance from each other if that can point you in the right direction. --Danukasan (talk) 20:22, 13 April 2009 (UTC)

is it the same n?
The 'n' in the equation and the n in the scentence preceding it "Each metaball is defined as a function in n-dimensions"? Confusing. 85.224.168.67 (talk) 17:50, 5 December 2010 (UTC)

Broken link.
The gamedev link seems to be broken. —Preceding unsigned comment added by 130.236.152.94 (talk) 09:03, 24 January 2011 (UTC)

Incorrect statement in implementation section?
The section starts with the 1/r function (the one with the square root), then explains that the square root computation is expensive. It then describes the finite support and smoothness qualities. So far so good. Next the following statement is made:

"The simplest falloff curve that satisfies these criteria is f(r)=1/(r2)2 where r is the distance to the point."

So, first: 1 / (r squared) squared is just 1/r4, not sure why the formula is written that way.

Second, and more importantly: how does this function satisfy the finite support condition? Yes, 1/r4 will decrease faster than 1/r, but it doesn't have finite support (i.e., it has a non-zero value at any distance from the point).

Seems to me this requires a correction? Sergevk (talk) 18:59, 11 March 2023 (UTC)

for anyone wants to interact with it
Metaball

Blobby movement Raw Almond (talk) 10:41, 3 April 2024 (UTC)