domingo, 19 de abril de 2026
lunes, 26 de enero de 2026
jueves, 8 de enero de 2026
Flight of Loren
Tributo a Loren Carpenter.
Fractal Flight 6502 Engine - Core Features
- "Rescue on Fractalus" Rendering: Implements a Voxel/Height-map rendering technique using a bottom-up "Limit Buffer" (painter's algorithm) to correctly handle mountain occlusion without a Z-buffer.
- Pseudo-Roll Effect: Simulates 3D camera banking efficiently using a "Tilt Table" that applies a vertical shear to screen columns, creating a convincing roll illusion without expensive 3D rotation math.
- Integrated Music: Features a built-in SAP music player ("Behind Jaggi Lines") that runs on the Vertical Blank Interrupt (VBL), fully synchronized with the game loop.
- Procedural Terrain System: Generates a 16x16 world grid with fractal roughness "seeds" and specific gameplay objects like "Bunkers" (marked via bit flags).
- Smart Terrain Following: Includes a collision avoidance system that "looks ahead" to automatically adjust the camera's altitude, preventing crashes into terrain features.
- Fixed-Point Physics: Utilizes 16.16 fixed-point precision for altitude (allowing distinct valley floors vs. mountain peaks) and 8.8 precision for lateral movement.
- Visual Effects System: Features a multi-stage "Hit Flash" reaction (progressing from Bright -> Mid -> Low-Fade) and a Green Laser drawing algorithm with perspective-based thickness.
- Double-Buffered Rendering: Uses a generic Double Buffering scheme (swapping DLI pointers and VRAM offsets $8000/$9000) to ensure flicker-free animation at high frame rates.
- Diagnostic Test Suite: Contains 6 built-in distinct "Modes" for isolating and debugging specific subsystems, such as math sorting, projection calibration, and fractal line generation.
- Joystick Flight Control: Replaces keyboard input with full Joystick support, including auto-centering logic that returns the ship to level flight when controls are released.
Mathematical & FOV Implementation Details:
- FOV-Driven Scale Table Hack: Uses a pre-calculated reciprocal table (1/Z) multiplied by a Field of View constant (default #70) to project 3D points without slow 6502 division.
- Iterative Grid Transformation: Instead of matrix multiplication for every node, it calculates "Step Vectors" (U and V) once and transforms the 8x8 grid using only additions, significantly boosting performance.
- Pseudo-Roll Shear Effect: Simulates camera banking using a "Tilt Table" that applies a vertical shear to screen columns, creating a 3D roll illusion purely in screen space.
- Recursive Midpoint Displacement: Recreates the "Fractalus" mountain look by recursively subdividing lines and displacing the midpoint based on world-space "seeds" (tags).
- Quarter-Square Multiplication: Implements high-speed 16-bit signed multiplication using squaring tables ((sum)^2/4 - (diff)^2/4) for rotation and laser physics.
- Limit-Buffer Occlusion: A bottom-up Y-buffer ("line_pixel_height_buffer") tracks the horizon for every column, ensuring correct painter's algorithm occlusion.
- Procedural Ridge Walkers: Generates a 16x16 wrapping world using "Walkers" with momentum, creating natural connected mountain ranges rather than random noise.
- High-Precision 16.16 Altitude: The camera uses 32-bit fixed-point altitude for smooth terrain following and vertical collision avoidance.
- DDA-Based Perspective Lasers: Draws laser beams with 16-bit DDA slopes and perspective-correct thickness that scales as it moves toward the player.
- Integrated Music Engine: Features an interrupt-driven playback of "Behind Jaggi Lines," synchronized with the game logic and handling Zero Page sharing between the player and the engine.
Geometry Clipping & Frustum Management:
- Robust 3D Z-Near Clipping: Prevents mathematical warping and projection overflows by strictly rejecting or clipping points that are behind the camera or too close to the near plane (Z < 1.0).
- 2D Cohen-Sutherland Algorithm: Implements a classic screen-space clipping system using 4-bit bitwise outcodes for rapid trivial rejection or acceptance of line segments.
- Binary Search Intersector: Instead of expensive 16-bit division to find line-edge intersections, the engine uses a midpoint subdivision (binary search) strategy that reaches sub-pixel precision in just 8 iterations.
https://forums.atariage.com/topic/387215-flight-of-loren-a-tribute-to-loren-carpenter-rip/
domingo, 23 de febrero de 2025
Computer Animation Primer
De David fox, el autor de Rescue on Fractalus!
https://www.atariarchives.org/cap/
https://www.atarimania.com/pgesoft.awp?version=37443
miércoles, 19 de abril de 2023
GTIA Games
Existen pocos juegos que usan de forma visual clara el uso d GTIA.
- Yoomp
- Lucasfilm's intro
- Koronis Rift
- Rescue on Fractalus (when you're docked or launching down to the planet)
- Star Raiders 2
It's not a bug, it's a feature.
viernes, 30 de diciembre de 2022
Lucasfilm Games
Diferentes logos de los 80s de Lucasfilm Games que despues se llamo Lucasarts en los 90s.
Bueno, aca esta la version de cine que mas me gustaba:
jueves, 1 de septiembre de 2022
Montañas Fractalicas de Loren Carpenter
Analisis de la montaña fractalica de Carpenter:
Del cual existio el articulo de American Scientific y mi ejemplo: http://manillismo.blogspot.com/2011/07/fractal-mountain_30.html
domingo, 14 de agosto de 2022
lunes, 23 de mayo de 2022
Rebel Rescue / Rescue Mission
Version beta de Behind Jaggi Lines la cual se ve jugable, pero aun con varios features menos.
UPDATE:
When the Lucasfilm Games Group (later Lucasfilm Games/LucasArts) launched, we were tasked with creating two "throwaway games" to test new processes in game development. This also lowered the extreme pressure of trying to create the "Star Wars of video games" on our first attempts. My game internally known as Rebel Rescue, Rescue Mission, and Behind Jaggi Lines eventually launched in 1984-1985 as Rescue on Fractalus!
What was widely considered an impossible task, rendering a realtime fractal landscape on an 8-bit home computer at high enough frame rates to make a compelling experience, was something we achieved through the brilliance of fractal wizard Loren Carpenter of the Lucasfilm Computer Division (our parent division at the time) with optimizations by Charlie Kellner (Apple employee #7).
On the 40th anniversary of the game's release, I'll go into some of the game's history, invaluable suggestions by George Lucas (including maybe the first video game jump scare), how the game was pirated before it was released, and why the game is still remembered by so many people.
https://bizcommunity.gamescom.global/event/devcom-developer-conference-2025/planning/UGxhbm5pbmdfMjY4MTQ5Mw
lunes, 14 de enero de 2019
sábado, 12 de enero de 2019
Sumatoria de images RoF
https://twitter.com/DavidBFox/status/1078413036354846720?s=03
martes, 25 de diciembre de 2018
domingo, 27 de mayo de 2018
The Making Of: Rescue on Fractalus
Articulo en primera persona de los creadores de Rescue on Fractalus:
https://www.nowgamer.com/the-making-of-rescue-on-fractalus/
https://web.archive.org/web/20151009112636/https://www.nowgamer.com/the-making-of-rescue-on-fractalus/
Otros:
http://peterlangston.com/Papers/vidgam.pdf
------
Resumen:
El artículo "The Making of: Rescue on Fractalus!" de NowGamer (2009) repasa la creación de uno de los primeros juegos de Lucasfilm Games, con testimonios de David Fox, Charlie Kellner, Peter Langston y Gary Winnick. Aunque el artículo original ya no está disponible directamente, su contenido se conserva en otras publicaciones y entrevistas posteriores. (electriceggplant.com)
Resumen
El nacimiento de Lucasfilm Games
En 1982 George Lucas creó una división de videojuegos dentro de Lucasfilm. La idea inicial no era producir títulos de Star Wars, sino experimentar con nuevas tecnologías y formas de diseñar videojuegos. Peter Langston reunió un pequeño equipo formado por programadores, artistas y músicos que trabajaban con mucha libertad y muy poca presión comercial. (bizcommunity.gamescom.global)
La idea surgió gracias a los fractales
David Fox compartía oficina con Loren Carpenter, especialista en gráficos por computadora que había creado el famoso efecto Genesis de Star Trek II: The Wrath of Khan.
Fox le preguntó si sería posible generar montañas mediante fractales en un Atari 800 de apenas 1,79 MHz. Carpenter inicialmente creyó que era imposible, pero pocos días después regresó con una demostración funcionando en tiempo real.
Ese prototipo se convirtió en la base tecnológica del juego. (electriceggplant.com)
Originalmente iba a ser un juego de Star Wars
El primer diseño utilizaba un X-Wing rescatando pilotos rebeldes en un planeta.
Lucasfilm decidió que sus licencias de Star Wars eran demasiado valiosas para utilizarlas en videojuegos originales, por lo que el proyecto fue transformándose hasta convertirse en un universo completamente nuevo:
planeta Fractalus
pilotos Ethercorps
enemigos Jaggi
nave Valkyrie
David Fox no quería un juego de disparos
Fox era pacifista y diseñó un juego donde el jugador debía:
navegar
aterrizar
rescatar pilotos
sin disparar.
Cuando George Lucas vio una demostración preguntó:
"¿Dónde está el botón de disparo?"
Fox explicó que no existía porque no quería violencia.
Lucas respondió que el juego sería más entretenido si permitía defenderse.
Finalmente se añadieron los torpedos contra las bases enemigas y las naves Jaggi. (Lucasfilm.com)
George Lucas creó el momento más famoso del juego
Durante otra revisión, Lucas hizo una sugerencia muy simple:
"¿Y si algunas veces el piloto que rescatas no fuera realmente un piloto?"
Así nació la idea de que algunos pilotos fueran alienígenas disfrazados.
El jugador aterrizaba, esperaba que el piloto llegara hasta la cabina y, de repente, el supuesto superviviente saltaba sobre el parabrisas gritando.
Hoy ese momento es considerado uno de los primeros jump scares de la historia de los videojuegos. (Lucasfilm.com)
Un desarrollo extremadamente pequeño
El juego fue realizado por muy pocas personas:
David Fox: diseño general y dirección.
Loren Carpenter: motor fractal.
Charlie Kellner: sonido, música, dinámica de vuelo y animaciones.
Peter Langston: diseño adicional y música.
Gary Winnick: gráficos y animaciones.
Era habitual que cada integrante hiciera varias tareas distintas. (electriceggplant.com)
El nombre original
Durante gran parte del desarrollo el juego se llamó:
Behind Jaggi Lines
Era un doble juego de palabras:
los enemigos se llamaban Jaggi;
"jaggies" también era el nombre que recibían las líneas dentadas (aliasing) de los gráficos de la época.
Marketing finalmente eligió Rescue on Fractalus! porque resultaba más comercial. (Wikipedia)
Un lanzamiento perjudicado por la piratería
Lucasfilm entregó una versión casi terminada a Atari para tareas de marketing.
Esa copia terminó filtrándose y apareció en los círculos de piratería antes del lanzamiento oficial, afectando especialmente las ventas de la versión Atari 8-bit. (MobyGames)
Su legado
Aunque no fue un éxito comercial enorme, el juego demostró que era posible crear mundos tridimensionales convincentes en hardware de 8 bits mediante algoritmos fractales. También ayudó a definir la filosofía inicial de Lucasfilm Games: priorizar la innovación técnica y el diseño antes que las fórmulas comerciales. El equipo reutilizó muchas de estas ideas en títulos posteriores como The Eidolon, Koronis Rift y, más adelante, en las aventuras gráficas que harían famosa a LucasArts. (Old School Gamer Magazine)
En retrospectiva, Rescue on Fractalus! es recordado por tres grandes innovaciones:
el uso pionero de terreno fractal en tiempo real;
uno de los primeros sustos ("jump scares") memorables en un videojuego;
el inicio de la cultura de innovación que caracterizaría a Lucasfilm Games/LucasArts durante las décadas siguientes. (electriceggplant.com)
martes, 22 de diciembre de 2015
Ballblazer - Ballblaster
Ballblaster: cassette
Ballblazer: diskette
Ballblazer: preview version (leaked?)
domingo, 5 de abril de 2015
Behind Jaggi Lines
Esto es debido que a los alienigenas se les denominó Jaggie, por la peculiar cruzada que tenian a nivel gráfico para evitar Jaggies.
Como dice en la leyenda abajo, sale la polera "No Jaggis Allowed".
“Alvy (right) and Ed Catmull (left) who would be the two co-founders of Pixar, just after our arrival at Lucasfilm c1980. Alvy’s T-shirt means “no jaggies allowed” and the lamp between them would become famous when animated by John Lasseter as Luxo Jr (now in the logo for Pixar movies).”
Fuente: http://urban3d.net/interview-pixar-cofounder-alvy-ray-smith/
UPDATE1: http://manillismo.blogspot.com/2022/08/foto-alvy-ed-catmull-carpenter.html
sábado, 4 de abril de 2015
Tributo a Rescue on Fractalus
Rescue on Fractalus! Carpenter's comment
Loren Carpenter speaks (found in a newsgroup discussion):
"Neither I nor anyone at Lucasfilm ever published anything, as far as I can remember. I did the one for Rescue on Fractalus and the folks at LFL adapted it for Eidolon and Koronis Rift later. Ballblazer doesn't use any fractal code.
The algorithm is the simplest possible midpoint subdivision, subject to the constraint that the landscape be consistent from frame to frame. The random displacement is derived from 2 bits (sign & overflow) of the 8-bit sum of the tags on the ends of an edge.
if overflow then
displacement = 0 /* bisect the line */
else
if negative
displacement = -edge_length/4
else
displacement = edge_length/4
The landscape is a 16x16 mesh of edges, repeating forever over the plane.
There is a lot more detail, especially about perspective, but I'm not sure LFL wants me talking about it yet."
Note from Atarimania: Further explanation of the math behind can be found in Carpenter's paper .
Post Scriptum: For an in-depth treatment of fractals for graphics rendering,
see Communications of the Association for Computing Machinery, Volume 25,
Number 6, pages 371-84.
The "...constraint that the landscape be consistent
from frame to frame..." may refer to the idea of pixel replication as seen
in games like Afterburner and Outrun. Note that as an object gets larger,
it also gets blockier. Fractal code can appear to create detail very
efficiently, making the object appear more complex than is otherwise possible.
This can also be seen in the player vehicles in Ballblazer.
Regarding perspective, two main techniques have been used in the past that I
have noted. One is to use different shades of grey for mountains of
different distance, and gradually change colours as the player moves closer
or farther away. The other is most noticeable in Rescue on Fractalus,
where there is a mesh that converges in the distance on a vanishing point.
Still research to be done...
sábado, 30 de julio de 2011
Fractal Mountain
Acá hay un Applet de la montaña fractal que me imagino fue basado en el mismo articulo de Scientific American: http://www73.pair.com/bgw/applets/1.02/MtFractal/MtFractal.html
UPDATE1: Encontré el mismo simple demo que hice arriba en un gif animado en Wikipedia: http://en.wikipedia.org/wiki/Fractal_landscape
UPDATE2: Artículo de Scientific American: Computer Recreations: Of Fractal Mountains, Graftal Plants and Other Computer Graphics at Pixar. Aparece en el libro: The Magic Machine: A Handbook of Computer Sorcery - A. K. Dewdney
UPDATE3: secuencia completa de cálculo:



















































