Hello
@easternbun
You know, it's not so simple to answer to your question in several words...
The package that you should investigate here is OpenGl.
OCCT provides several classes with abstract interface in Graphic3d package, e.g. Graphic3d_Group, Graphic3d_View. Top-level AIS package communicates to these interfaces. OpenGl package is an implementation for these interfaces. You switch this implementation ON in your application when create an OpenGl_GraphicDriver.
Having this, all calls to Graphic3d_Group (e.g. from AIS_InteractiveContext or AIS_InteractiveObject) are moved to OpenGl impelmentation.
It might be interesting to start investigation of OpenGl from OpenGl_Group::AddPrimitiveArray, that adds new OpenGl_Elements. These prepared elements contain structures that lately will be given to raw openGl.
The next point to investigate is OpenGl_Context that manages the parameters of glViewport, camera martices and otherы.
Hope, these tips will be helpful for you,
Natalia