﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3ALucarood%2FSurfaceDeform%2Ftechnical</id>
	<title>利用者:Lucarood/SurfaceDeform/technical - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3ALucarood%2FSurfaceDeform%2Ftechnical"/>
	<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Lucarood/SurfaceDeform/technical&amp;action=history"/>
	<updated>2026-08-31T15:51:12Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Lucarood/SurfaceDeform/technical&amp;diff=152863&amp;oldid=prev</id>
		<title>Yamyam: 1版 をインポートしました</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Lucarood/SurfaceDeform/technical&amp;diff=152863&amp;oldid=prev"/>
		<updated>2018-06-28T21:22:02Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;2018年6月28日 (木) 21:22時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ja&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yamyam</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Lucarood/SurfaceDeform/technical&amp;diff=152862&amp;oldid=prev</id>
		<title>wiki&gt;Lucarood: Created page with &quot;=Technical Documentation=  This briefly explains how the Surface Deform Modifier works, without getting into the details of the interpolation algorithm.  ==Bind== * For each vert...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Lucarood/SurfaceDeform/technical&amp;diff=152862&amp;oldid=prev"/>
		<updated>2017-02-12T15:58:31Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;=Technical Documentation=  This briefly explains how the Surface Deform Modifier works, without getting into the details of the interpolation algorithm.  ==Bind== * For each vert...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Technical Documentation=&lt;br /&gt;
&lt;br /&gt;
This briefly explains how the Surface Deform Modifier works, without getting into the details of the interpolation algorithm.&lt;br /&gt;
&lt;br /&gt;
==Bind==&lt;br /&gt;
* For each vertex on the modified mesh, the nearest face of the target mesh if found, by means of a BVH search.&lt;br /&gt;
* On the target face, the nearest vertex to the modified vertex is found, and a list is built, containing all the faces adjacent to this vertex, on the target mesh.&lt;br /&gt;
* The interpolation algorithm now goes over these faces, analyzing their relationship with the modified vertex, and thus how much each should influence it (this is the complicated part, and is probably about 80% of the code)&lt;br /&gt;
* Each of the analyzed faces, if relevant to the modified vertex, now gets the vertex projected onto it. If the vertex lies inside the face, mean value coordinates are calculated. If the vertex is outside the face, external barycentric coordinates are computed, with regard to the two vertices on the face that comprise the edge closest to the modified vertex, and the centroid of the face (actually just the average of the vertices...)&lt;br /&gt;
* The normal distance is calculated between the projected point and the original location of the modified vertex.&lt;br /&gt;
&lt;br /&gt;
Now we have all vertices of the modified mesh, mapped to the tangent space of the target mesh, with displacements computed in normal space, while nicely dealing with faces of any amount of sides. And taking into consideration all the near faces, computing influence values for each of them.&lt;br /&gt;
&lt;br /&gt;
==Deformation==&lt;br /&gt;
Now that the meshes are bound, we have to update the modified mesh with any deformation on the target mesh.&lt;br /&gt;
&lt;br /&gt;
* For each vertex on the modified mesh:&lt;br /&gt;
** For each face it is bound to, a projected coordinate is computed, using the stored mean value coordinates for the projected vertex on that face.&lt;br /&gt;
** The projected coordinates are moved in the normal direction of their respective faces, by the normal distance that has also been stored.&lt;br /&gt;
** Interpolated coordinates are computed from all the individual coordinates calculated with respect to each face, by means of a weighted average, using the stored influences for each face.&lt;br /&gt;
&lt;br /&gt;
Now we have a pretty mesh, deformed nicely with respect to the target mesh.&lt;/div&gt;</summary>
		<author><name>wiki&gt;Lucarood</name></author>
		
	</entry>
</feed>