0

デスクトップ アプリで C# を使用して、セロハン 3D メガネで 3D として表示できる基本的な 3D 形状 (赤と青) を生成するにはどうすればよいですか? (この質問は特定の言語に限定されないことに注意してください。どの言語でも有利なスタートを切ることができれば、それは素晴らしいことです。私はいつでもそこから学ぶことができ、最終的には希望する言語でこれを実装しようとするのに十分な知識があります。)

これについて非常に多くの質問を見てきましたが、答えは非常に複雑に思え、結局どこにも行きません。これに関するドキュメントや記事も見つかりません。

4

1 に答える 1

2

アナグリフ 3D 画像を生成するには、まず、わずかに異なる 2 つのビューポート (それぞれの目に 1 つずつ) からシーンをレンダリングする必要があります。距離が離れているほど、シーンが小さく見え、立体感が高くなります。

最も簡単な方法は、既存のライブラリを使用して画像をレンダリングすることです。「カメラ」を使用して、ビューの中心のわずかに左 (および右) に配置します。2 つの画像をレンダリングし、ピクセルを取得します。

2 番目のステップは、2 つの画像を組み合わせてアナグリフ 3D 画像にすることです。これを行う 1 つの方法は、1 つの画像の赤のチャンネルを、別の画像の緑と青のチャンネルと組み合わせることです。

(疑似C#:)

Color Combine(Color left, Color right)
{
    return new Color(left.Red, right.Green, right.Blue);
}

Image Combine(Image left, Image right)
{
    Image result = new Image(left.Width, left.Height);
    for (int y = 0; y < left.Height; y++)
    for (int x = 0; x < left.Width; x++)
    {
        result.SetPixel(x, y, Combine(left.GetPixel(x, y), right.GetPixel(x, y)));
    }
}
于 2013-10-18T05:46:36.717 に答える