タグ付けされた質問 「uv-mapping」

4
UVおよびUVWマッピングとは正確には何ですか?
いくつかの基本的な3Dの概念を理解しようとして、現時点では、テクスチャが実際にどのように機能するかを理解しようとしています。UVマッピングとUVWマッピングは、2Dテクスチャを3Dオブジェクトにマッピングする技術であることを知っています-ウィキペディアは私にもそう語っています。私は説明のためにグーグルで検索しましたが、それが何であるかをすでに知っていると仮定したチュートリアルのみを見つけました。 私の理解では、各3Dモデルはポイントで構成されており、いくつかのポイントが顔を作成しますか?各ポイントまたは面には、2Dテクスチャ内のax / y位置にマッピングされる2次座標がありますか?または、アンラップはモデルをどのように操作しますか? また、UVWのWは実際に何をしますか、UVを超えて何を提供しますか?私が理解しているように、WはZ座標にマッピングされますが、同じX / Yと異なるZに対して異なる状況がどのような状況で発生しますか、Zパーツは見えませんか?または、私はこれを完全に誤解していますか?


2
地形をテクスチャマップする方法は何ですか?
私は3DゲームでXNAを使用していますが、適切で快適な環境を作ろうとしています。ハイトマップから地形を作成するためのチュートリアルを実際に実行しました。テクスチャを付けるには、草のテクスチャを適用し、何度もタイルを張ります。 しかし、私がやりたいのは、本当にリアルなテクスチャリングを作成することですが、それを自動的に生成することもできます(たとえば、Perlinノイズを使用してテレインを生成してからテクスチャーを作成する場合)。 マルチテクスチャリングについて学び、さまざまなテクスチャのさまざまな色でマップファイルをロードしましたが、これは本当に効率的ではないと思います。たとえば、崖や非常に急な領域の場合、テクスチャがタイル状に表示されるため、上。(また、どのようにして道路やダートパスを描画するかわかりません。) 手続き的に生成された地形を現実的にテクスチャマッピングする効率的なソリューションを探しています。

5
小惑星のテクスチャリング
私はこの小惑星にテクスチャを付けようとしています。でも何かが足りない。 このチュートリアルに続いて、私はこれをここまで取得しました。 今、私は次のステップを理解できません:どのようにして継ぎ目の問題を解決しますか?この二十面体の球には、避けられない継ぎ目があります。OK。オブジェクトに適用したときにシームレスに見えるようにテクスチャをペイントするにはどうすればよいですか?どのエッジがどの側に接続しているかを知るにはどうすればよいですか?それはちょうど対称になるでしょうね? これは、単純な球をテクスチャリングするのが非常に難しいようです。ここにいくつかのテクニックがありませんか?

1
テーパーする生成されたメッシュのジグザグのUVマッピングアーティファクトを修正するにはどうすればよいですか?
以下のように、カーブに基づいて手続き型メッシュを作成しています。メッシュ全体のサイズがカーブ全体で小さくなっています。 そして問題は、サイズが変わるとUVがジグザグになることです(カーブ全体でメッシュのサイズが同じである場合、UVは完全に機能します)。 Vertices.Add(R); Vertices.Add(L); UVs.Add(new Vector2(0f, (float)id / count)); UVs.Add(new Vector2(1f, (float)id / count)); start = Vertices.Count - 4; Triangles.Add(start + 0); Triangles.Add(start + 2); Triangles.Add(start + 1); Triangles.Add(start + 1); Triangles.Add(start + 2); Triangles.Add(start + 3); mesh.vertices = Vertices.ToArray(); //mesh.normals = normales; mesh.uv = UVs.ToArray(); mesh.triangles = Triangles.ToArray(); どうすれば修正できますか?

1
正接および正接ベクトルを計算する方法
Three.jsにテクスチャを読み込んでから、シェーダーに渡しました。頂点シェーダーで法線を計算し、UVベクトルを変数に保存します。 <script id="vertexShader" type="x-shader/x-vertex"> varying vec3 N,P; varying vec2 UV; void main() { gl_Position= projectionMatrix * modelViewMatrix * vec4(position,1.0); P= position; N= normalMatrix * vec3(normal); UV= uv; } </script> <script id="fragmentShader" type="x-shader/x-fragment"> varying vec3 N,P; varying vec2 UV; uniform sampler2D texture; void main() { gl_FragColor= texture2D(texture,UV); } </script> TおよびBベクトルをどのように計算しますか?

4
これらのUVテクスチャ座標を理解できません(範囲は0.0〜1.0ではありません)
Google SketchUp 8 Proで生成したシンプルな3DオブジェクトをWebGLアプリに描画しようとしています。モデルはシンプルな円柱です。 エクスポートしたファイルを開き、javascriptで使用できるように、頂点の位置、インデックス、法線、テクスチャ座標を.jsonファイルにコピーしました。46.331676などのかなり大きな値と負の値を持つテクスチャ座標を除いて、すべてが正常に機能しているようです。今私は間違っているかどうかはわかりませんが、2Dテクスチャ座標は0.0から1.0の範囲のみであると想定されていませんか? さて、これらのテクスチャ座標を使用してモデルを描画すると、完全に奇妙な外観が得られます。テクスチャがめちゃくちゃになっているかのように、モデルに非常に近い(実際には私ではなくカム)場合にのみ、テクスチャを正しく表示できますサイズが小さくなり、モデルの面全体で無限に繰り返されます。(そう、私はそのテクスチャラップにGL_REPEATを使用しています) 私が気づいたのは、これらの座標をすべて取得して10または100で割ると、「通常の」外観になりますが、0.0から1.0の範囲ではないということです。 これが私のjsonファイルです:http://pastebin.com/Aa4wvGvv これが私のGLSLシェーダーです:http : //pastebin.com/DR4K37T9 ここに、SketchUpによってエクスポートされた.Xファイルがあります。http://pastebin.com/hmYAJZWE また、XNAを使用してこのモデルを描画しようとしましたが、まだ機能しません。このHLSLシェーダーの使用:http : //pastebin.com/RBgVFq08 同じモデルを別の形式、collada、fbx、xにエクスポートしてみました。これらはすべて同じことをもたらします。

1
環境メッシュのテクスチャとベイクされたライティングの保存に違いはありますか?
環境をテクスチャリングするとき、1つまたは複数のテクスチャが使用され、環境ジオメトリのUVがこれらのテクスチャにオーバーラップする可能性が高いため、たとえばタイリングブリックテクスチャは、UVアンラップではなく、環境の多くの部分で使用できます。全体と、テクスチャのいくつかの領域が同一であること。私の仮定が間違っている場合は、知らせてください! さて、ライティングのベイキングについて考えると、これは明らかに同じ方法で行うことはできません-ライティングはすべての面に固有であるため、環境はオーバーラップせずにUVラップを解除する必要があり、ライティングは1つまたは複数の固有のエリアにベイクする必要がありますテクスチャー、各表面に独自のテクスチャー空間を与えて、照明を保存します。 私の質問は: これは間違っていますか?もしそうなら、どうですか? ベーキングライティングは多くのテクスチャスペースを使用しませんか? ジオメトリには2つのUVセットが必要ですか?1つはカラー/通常のテクスチャに使用され、もう1つはライティングテクスチャに使用されますか? 他に何か追加したいことはありますか?:)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.