¿Alguien podría ayudarme con ejemplos de algunos métodos 3d de bare-bone, old school en Delphi? No se usa OpenGL o firemonkey o cualquier biblioteca externa (codificación vainilla). Lo que quiero hacer es rotar X cantidad de puntos alrededor de un origo común. Por lo que recuerdo de los viejos tiempos, restas de izquierda a derecha (en los puntos 3d) para que origo siempre sea 0,0 - luego realizas los cálculos, y finalmente agregas el desplazamiento de píxeles izquierdo/superior para obtener las posiciones de pantalla reales.Funciones simples de Delphi 3d
Lo que estoy buscando es un conjunto de rutinas pequeña, ad-hoc, Ala:
- RotateX (unValor: T3dpoint; grado d: float): T3dPoint;
- RotateY (-/-)
- RotateZ (-/-)
El uso de estas funciones debe ser bastante fácil de crear el viejo "de rotación del cubo 3d" (8 puntos).
Además, ¿hay funciones para averiguar las "caras" visibles? Si quiero un cubo vector lleno, entonces supongo que necesito extraer regiones visibles (¿basadas en la distancia/superposición?) Que a su vez se dibujan como un número X de polígonos rellenos. Y estos sin duda deben ser ordenados por profundidad para no salir en un lío.
por ejemplo:
- PointsToFaces (const a3dObject: T3dPointArray): TPolyFaceArray;
- SortFaces (Const aFaces: TPolyFaceArray): TPolyFaceArray;
¡Toda ayuda es bienvenida!
También confundirlos, pero en Delphi Se llama 'real', no' float'. –
¿Por qué no obtener al menos glScene? –
Porque estaré compilando bajo Smart Mobile Studio, que compila objeto pascal para javascript. Y OpenGL no es compatible con Safari Mobile. Solo quería lo básico para poder aprender jugando con eso. –