-
Notifications
You must be signed in to change notification settings - Fork 50
apis
Zhou edited this page Oct 24, 2018
·
4 revisions
Puresoft3D’s APIs are 10 classes, and their public member functions. 90% of the API functions a client programme will call are in the class PuresoftPipeline, which is the ‘core module’ mentioned several times above. You can quickly go through the declarations of the public member functions first. Actually I guess you could understand most of them at the first glance without any further explanation providing you are enough familiar with the indirect mode OpenGL APIs. But if you want explanation of any certain API, you can find it in API readme document.
Besides the core module, there are some other classes exposed to the client programme as part of the API. The following table listed all the classes as APIs.
Category | Class Purpose | |
---|---|---|
Core module class | PuresoftPipeline | Core module. Implements all draw-call related APIs. |
Other public classes | PuresoftVBO | Data buffer for vertex attributes. Represents OpenGL’s VBO. |
PuresoftVAO | Collection of a bunch of PuresoftVBOs. Represents OpenGL’s VAO. | |
PuresoftFBO | Frame buffer. In Puresoft3D, frame buffer is used as render target as well as texture. Similar to OpenGL’s FBO. | |
PuresoftVertexProcessor ? | Vertex processor base class. Similar to OpenGL’s vertex shader. | |
PuresoftInterpolationProcessor ? | Interpolation processor base class. We will talk about its details later. | |
FragmentProcessorOutput | Interface that receives output from fragment processor. | |
PuresoftFragmentProcessor ? | Fragment processor base class. Similar to OpenGL’s fragment shader. | |
PuresoftDDrawRenderer | An out of box blitter class using DirectDRAW to accelerate. | |
PuresoftDefaultPictureLoader | Helper class to facilitate texture loading. It uses Gdiplus. | |
? These three base classes are interface classes for the client programme to implement. |