3D modeli OpenGL® so v najbolj splošnem smislu zbirke povezanih točk v tridimenzionalnem (3D) prostoru, imenovane točki, ki se združujejo v zaporedje poligonov, ki jih je mogoče upodabljati tako, da predstavljajo predmet v virtualnem prostoru. Skoraj vse 3D objekte, ki niso oblikovni primitivi, kot so trikotniki, res lahko štejemo za 3D modele OpenGL®. V bolj praktičnem smislu se sklicevanja na 3D model OpenGL® običajno nanašajo na kompleksen 3D objekt, ki je bil zgrajen v programu za 3D modeliranje. Celoten model najpogosteje vključuje teksture, površinske normale in zemljevide izboklin ter, za animirane objekte, informacije o skeletu in uteži oglišč.
OpenGL® je zasnovan kot knjižnica grafičnih funkcij, ki se uporabljajo za hitre prikazne rutine, tako da ne zagotavlja resnične podpore na visoki ravni za 3D modele. Namesto tega se običajno uporabljajo vmesne programske knjižnice za nalaganje modelov iz priljubljenih formatov datotek in njihovo namestitev v podatkovne strukture v pomnilniku, ki jih lahko uporablja OpenGL®. Popolnoma realizirani 3D modeli OpenGL® so zelo zapleteni za ustvarjanje, zato jih skoraj vedno naredite s programsko opremo za modeliranje s polnimi funkcijami. Čeprav se lahko knjižnica uporablja za nalaganje celotnega modela v OpenGL®, dejansko izvajanje funkcij, kot sta animacija ali gibanje, zahteva, da programer napiše kodo, ker OpenGL® nima nobene prirojene sposobnosti razen prikaza modela.
Vseh modelov OpenGL® 3D ni treba naložiti iz datoteke. Lahko jih zgradimo znotraj programa z uporabo zaporedja algoritmov ali postopkov. Ti proceduralno generirani modeli so lahko razširjeni primitivi, kot je krogla ali torus, ali pa so lahko bolj zapletene oblike, kot je vijačnica. Z uporabo fraktalnih algoritmov je mogoče izdelati 3D modele, ki približujejo gore, drevesa ali valovito vodo, in jih po potrebi manipulirati.
Pri uporabi 3D modelov OpenGL® se lahko pojavi nekaj zapletenosti. Najpogostejša je težava pri branju v datoteki, ker vsi 3D modelarji ne zagotavljajo specifikacije, kako se datoteka shrani. Druga težava so lahko lastniške metode za shranjevanje informacij o vozliščih, teksturah ali materialih. To bi pomenilo, da bi lahko nekatere dele modela naložili obrnjene ali pa bi bilo preslikavanje tekstur popolnoma neuporabno.
Težava, s katero se lahko srečamo z modeli OpenGL® 3D, ne glede na obliko datoteke, je razdelitev površin od modelerja do OpenGL®. Površine, kot so štirikotniki, so včasih razdeljene na trikotnike z uporabo ene formule, medtem ko OpenGL® lahko uporabi drugo. Zaradi tega se lahko pojavijo modeli z luknjami na površini, kar je lahko težava, ki jo je težko rešiti. Slabe razdelitve lahko vodijo tudi do pretirano razdeljenih modelov, zaradi česar postane preprost model zelo pomnilniško intenziven, saj se njegovo število poligonov povečuje.