¿La perspectiva de modo 7 se transforma en lienzo?

Estoy haciendo un motor de juego basado en lienzo y me pregunto si alguien tiene alguna buena información sobre cómo lograr una perspectiva de vista aérea. Lo que estoy buscando es en algún lugar a medio camino entre la vista tradicional de las aves y la antigua vista del modo SNES7. Solo un ligero ángulo para dar la ilusión de 3D.

Estoy tratando de descubrir cuál será la mejor manera de lidiar con el sesgo de perspectiva. No estoy haciendo rotaciones, por lo que las cosas de la matriz 3D se irían por la borda, pero necesito poder procesar el renderizado de las capas del mapa en un ángulo constante y sería bueno si el ángulo fuera ajustable. También necesito lidiar con la deformación de profundidad. Básicamente, la fila inferior de píxeles debe ser 1: 1 de ancho y alto de píxel, luego, para cada fila, por ejemplo, será 5% más pequeña o algo así. Lo que me gustaría es poder suministrar un lienzo grande como textura y luego proporcionar un ángulo de cámara entre 0 y 90 donde 0 es perfectamente horizontal y 90 es una vista panorámica.

¿Alguien tiene tutoriales relacionados o código de muestra? He buscado un poco en línea, pero todo lo que he encontrado parece no ser adecuado para su uso en esta aplicación en particular o demasiado complejo, haciendo todo tipo de cosas locas de inclinación y rotación en 3D. Todo lo que quiero es tomar la cuadrícula de mosaico normal y reclinarla un poco, sin rotaciones ni cosas complicadas como esa.

Aquí hay un ejemplo de lo que quiero;Aquí hay un ejemplo. http://img801.imageshack.us/img801/2176/perspectivesample.jpg

La fila de píxeles inferior tiene una relación de píxeles de 1: 1, y cada fila de arriba se acorta progresivamente horizontal y verticalmente. La textura de origen de la región central superior es normalmente aproximadamente la mitad de la altura de la región central inferior, pero se ha reducido vertical y horizontalmente para ajustarse a la perspectiva.

Lo que creo que podría funcionar mejor es renderizar el estado actual de la ventana gráfica a otro lienzo en vista plana, a vista de pájaro, con aproximadamente un 50% de espacio adicional en la parte superior y los lados, luego cortar una región triangular al revés y dibujar eso Lienzo visible real.

El único problema es que soy un asco en matemáticas cuando se trata de calcular ángulos y cosas así.

Respuestas a la pregunta(2)

Su respuesta a la pregunta