Computer displays are all broken into describe chunks called pixels
- Gameboy - 160 x 144 - Super Mario World
- NES - 256 x 240
- Playstation 1 - 256 x 224
- DVD - 720 x 480
- 1080p - 1920 x 1080
def draw_sprite(data, width=8):
"""
--####--
-#----#-
#-#--#-#
#------#
#-####-#
#------#
-#----#-
--####--
As linear pixel data
--####---#----#-#-#--#-##------##-####-##------#-#----#---####--
"""
for line_number in range(len(data)//width):
print(data[line_number * width:(line_number + 1) * width])
sprite_data = '--####---#----#-#-#--#-##------##-####-##------#-#----#---####--'
draw_sprite(sprite_data)The process of taking chunks from data from one memory location and copying it to another is called blit-ing bit block transfer.
- MicroMages NES Game - 8x8 Sprite explanation
- computer-vision-basics-in-microsoft-excel
- Designing 2D graphics in the Japanese industry
- western world used core tools - japan used home grown tech
- historical look at tools and artwork
- When graphic designers from Taito, SNK and other companies used a joystick to draw dot by dot.
- algorithms
- [line-drawing] Bresenham
Examples
- BattleZone PC
- Red Alarm
- Elite BBC
Polygon Filling Algorithm [polygon]
Examples
- Carrier Command Amiga
- Elite PC
Draw triangles in the correct order
The processes of taking triangle geometry and drawing it as pixels is called rasterisation
- Software Texture Mapping
- Quake 1 - Different renderers
- What makes the graphics of the original PlayStation look so unique? YouTube 15min
Quake 1 engine was sold/licensed to game developers.
GitHub: rlsw – Raylib software OpenGL renderer in less than 5k LOC HN Comments OpenGL Compatible - plain C with no dependencies!
3D Graphics Cards are a completely separate computer inside your computer that is dedicated to drawing triangles.
Modern game programmers do NOT write code to 'blit sprites' or 'rasterise triangles'. These are solved problems. Modern game programmers use graphics library's and hardware.
Mobile chipsets - 200 Million triangles per second - source imagination graphics benchmark guide
- Enhancing Photorealism Enhancement
- Use of AI to apply photo-realism to game footage (GTA5)
- Temprolly stable
- 8k 3D Holographic display
- A Brief History of Graphics 45min documentary - Ahoy
- fabiensanglard.neta - Game code teardowns
- VoxelSpace
- CGA 1024 Colors
- [cga]
- haiku_icons
- History of Computer graphics
- How Prince of Persia Defeated Apple II's Memory Limitations | War Stories | Ars Technica
- Freescape 3D engine for 8bit computers
- Ray Tracing In Notepad.exe At 30 FPS
- Grafica Obscura - a collection of computer graphics hacks 70's to 90's #papercraft [maths] Link to algorithms.md for pixelart resizing