What is "3D Programming" ?

1/ 3D programming consists in creating 2D images which represent 3 dimensions spaces (through Projections provided by openGL and other libraries or tools). Complex images, rendered in "series" give animations... called CGIs or VIDEO-GAMES and also "3D-viewers" applications (like google earth and many 3D Data-Visualization tools) and finally Simulators (Flying, Driving, Virtual "Worlds", etc.).

2/ It also consists in creating objects shapes, through the definition of surfaces; with vertices, edges and faces to produce Meshes (and particles systems). Meshes are placed in scenes for graphical rendering or 3D-printable !

OpenSCAD enables one to program shapes in a very cool modular way. One can also program in Blender through scripting (with Blender Python APIs).

3/ More recently, it also consists in reading distance sensors and reconstruct 3 dimensions spaces and objects to program interactions between a machine and the environment (mainly for Human-Machine Interfaces or Automation). One great library for that is "Point Clouds Library" (with wrappers to several languages).

PointsCloud.Org Illustration for Recognition of a wolf

Two images courtesy of https://pointclouds.org/

[Doc v1.2] [top images served by Wikipedia ! <3 !]