タグ付けされた質問 「edge-detection」

2
OpenGL-エッジの検出
任意のメッシュをロードし、エッジに沿って太い黒い線を描画して、トゥーンシェーディングのような外観にします。ステンシルバッファーを使用して、オブジェクトの周りに黒いシルエットを描くことができました。あなたはここで結果を見ることができます: しかし、欠けているのはオブジェクト自体の黒い線です。法線の不連続性をチェックすることを考えました:隣接するピクセルが現在のものとは異なる法線ベクトルを持っているかどうかをチェックします。はいの場合、エッジが見つかりました。残念ながら、OpenGLでもGLSL頂点/フラグメントシェーダーでも、このアプローチをどのように実装できるかわかりません。 このアプローチやエッジ検出に関するその他のサポートについて、私はとても嬉しく思います。 編集:メッシュにテクスチャを使用していません。 もっと正確に言うと、次のように見えるCAD / CAMソリューションを作成したいと思います(Top Solid https://www.youtube.com/watch?v=-qTJZtYUDB4から取得):

1
OpenGL GLSL-Sobelエッジ検出フィルター
このトピックに関しては、GLSLにSobel Edge Detectionフィルターを正常に実装しました。フィルターのフラグメントシェーダーコードを次に示します。 #version 330 core in vec2 TexCoords; out vec4 color; uniform sampler2D screenTexture; mat3 sx = mat3( 1.0, 2.0, 1.0, 0.0, 0.0, 0.0, -1.0, -2.0, -1.0 ); mat3 sy = mat3( 1.0, 0.0, -1.0, 2.0, 0.0, -2.0, 1.0, 0.0, -1.0 ); void main() { vec3 diffuse = texture(screenTexture, …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.