Coding Challenge: 3D on Apple II
Take a trip back in time and watch me attempt to build a 3D graphics engine in AppleSoft BASIC on a restored Apple II+ computer! Can I render a spinning cube? Code: https://thecodingtrain.com/challenges/175-3D-cube-applesoft-basic
๐ Watch this video ad-free on Nebula https://nebula.tv/videos/codingtrain-apple-challenge-3d-cube
๐ฅ Previous video: https://youtu.be/UNkHditYGls?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
๐ฅ All videos: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
References:
๐พ Big Mess o' Wires: http://www.bigmessowires.com/floppy-emu/
โจ Nebula: https://nebula.tv/videos/codingtrain-apple-challenge-3d-cube
๐ง What is Code?: https://nebula.tv/what-is-code
๐ถ Coding Together: https://soundcloud.com/user-207981744-979066415/coding-together
Related Videos:
๐ฅ Coding Together Track: https://thecodingtrain.com/tracks/coding-together-apple-ii
๐ฅ Polar Coordinates: https://youtu.be/O5wjXoFrau4
๐ฅ 3D Rendering with Rotation and Projection: https://youtu.be/p4Iz0XJY-Qk
AppleSoft BASIC:
๐ถ Beagle Basic: http://www.apple-iigs.info/doc/fichiers/BeagleBasic.pdf
๐ The AppleSoft Tutorial: http://cini.classiccmp.org/pdf/Apple/The%20Applesoft%20Tutorial.pdf
๐ Basic Programming Reference Manual: https://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Software/Languages/Applesoft%20BASIC/Manuals/Applesoft%20II%20BASIC%20Programming%20Reference%20Manual.pdf
๐ชง Peeks, Pokes and Pointers: https://archive.org/details/peeks-pokes-pointers
Apple II Emulators:
โ Applesoft BASIC in JavaScript: https://www.calormen.com/jsbasic/
๐ Apple IIjs: https://www.scullinsteel.com/apple2/
๐ MicroM8: https://paleotronic.com/software/microm8/
Unedited Raw Footage:
โญ๏ธ Session 1: https://youtu.be/4yByzgGSfzQ?t=8125s
โญ๏ธ Session 2: https://youtu.be/lzAPLYApVTU?t=2854s
โญ๏ธ Session 3: https://youtu.be/g7NAQyBCkZw?t=1438s
Related Coding Challenges:
๐ 112 3D Rendering with Rotation and Projection: https://youtu.be/p4Iz0XJY-Qk
๐ 173 AppleSoft Basic Snake Game: https://youtu.be/7r83N3c2kPw
๐ 174 AppleSoft Basic Fractal Tree: https://youtu.be/UNkHditYGls
Timestamps:
0:00 The future of computer graphics!
0:39 Viewer comments
1:58 Editing code in BASIC
3:28 Floppy Emu disk emulator
5:09 Double buffered animation
6:55 Initialize high resolution graphics for 2 pages
7:42 Animating a line
8:50 CALL to clear the screen
9:22 Switching screens
13:18 The "draw loop"
14:55 Rotate a line
15:45 Add points
16:36 Add a subroutine that draws a line between two points
17:55 Scaling the line
20:55 Matrix Multiplication for Rotation
29:26 Animate rotation
32:00 Clear background
33:17 Subroutine to add the points of a cube
35:40 Subroutine to draw the lines
36:46 Incorporating matrix math.
40:24 Edit code to add more points
41:46 Connect the points to draw a cube
43:03 Beautiful, 3D rotating cube!!
43:17 x-axis rotation
43:52 Ways to optimize the code
44:42 Can you add perspective projection?
45:08 See you next time on Coding Together!
Editing by Mathieu Blanchette
Animations by Jason Heglund
Coding Together Theme by Will from America (https://twitter.com/willfromamerica)
Eye of the Tiger cover by Leon from @neo
Additional music from from Epidemic Sound
๐ Website: http://thecodingtrain.com/
๐พ Share Your Creation! https://thecodingtrain.com/guides/passenger-showcase-guide
๐ฉ Suggest Topics: https://github.com/CodingTrain/Suggestion-Box
๐ก GitHub: https://github.com/CodingTrain
๐ฌ Discord: https://thecodingtrain.com/discord
๐ Membership: http://youtube.com/thecodingtrain/join
๐ Store: https://standard.tv/codingtrain
๐๏ธ Twitter: https://twitter.com/thecodingtrain
๐ธ Instagram: https://www.instagram.com/the.coding.train/
๐ฅ Coding Challenges: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
๐ฅ Intro to Programming: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6Zy51Q-x9tMWIv9cueOFTFA
๐ p5.js: https://p5js.org
๐ p5.js Web Editor: https://editor.p5js.org/
๐ Processing: https://processing.org
๐ Code of Conduct: https://github.com/CodingTrain/Code-of-Conduct
This description was auto-generated. If you see a problem, please open an issue: https://github.com/CodingTrain/thecodingtrain.com/issues/new
#3dgraphics #1980s #appleii #matrixmath #basic