Skip to content
Zhou edited this page Oct 24, 2018 · 4 revisions

THE APIs

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.

RETURN TO LETS-SET-OFF
RETURN TO INDEX

Clone this wiki locally