Functions |
|
RxPipeline * | RpAtomicSkyGetAllInOnePipeline (void) |
RxPipeline * | RpAtomicSkyGetPS2ManagerPipeline (void) |
RxPipeline * | RpAtomicSkyGetVanillaPipeline (void) |
|
RpAtomicSkyGetAllInOnePipeline returns a pointer to the default atomic AllInOne pipeline. This atomic object pipeline is effectively the vanilla instance pipeline concatenated with the default material pipeline. This pipeline is somewhat less flexible than the split object/material pipelines, since the whole atomic is rendered the same way - material pipelines are ignored. However, it executes faster because passing packets between pipelines is quite slow. Any rendering effect can still be achieved (uniformly across the whole object) by simply concatenating any custom material pipeline onto the PS2ObjAllInOne.csl node and using the RxPipelineNodePS2ObjAllInOneSetGrouping node API function to tell this node to send all meshes in the object down the rest of the object pipeline rather than to pipelines specified by the materials of the object. By default, atomics are rendered using the PS2All-based pipeline (see RpAtomicSkyGetPS2AllPipeline). If you wish to submit 2D triangles through Submit.csl (i.e you want to do transformation and lighting and whatever else CPU-side - which will of course be very slow) then rather than use this atomic object pipeline, you should use a generic (non-PlayStation 2-specific) one. The world plugin must be attached before using this function. The PlayStation 2 all-in-one atomic object pipeline: PS2ObjAllInOne.csl v PS2MatInstance.csl v PS2MatBridge.csl
|
|
RpAtomicSkyGetPS2ManagerPipeline returns a pointer to the default atomic PS2Manager pipeline. The atomic pipeline based on the PS2Manager node renders atomics using just this node (shrinking the pipe to a single node is a significant speed win on PlayStation 2), ignoring material pipelines, so all meshes in an atomic will be rendered in the same style (that defined by the atomic pipeline). This node will be made much more customisable in future releases such that it will be all you need on PlayStation 2 (bar nodes like PVSWorldSector.csl). By default, atomics are rendered using the PS2All-based pipeline (see RpAtomicSkyGetPS2AllPipeline). If you wish to submit 2D triangles through Submit.csl (i.e you want to do transformation and lighting and whatever else CPU-side - which will of course be very slow) then rather than use this atomic object pipeline, you should use a generic (non-PlayStation 2-specific) one. The world plugin must be attached before using this function. The PS2Manager atomic object pipeline: PS2Manager.csl
|
|
RpAtomicSkyGetVanillaPipeline returns a pointer to the default atomic Vanilla pipeline. This atomic object pipeline is the 'vanilla' one (i.e no tricks have been used to trade off flexibility and speed - see RpWorldSectorSkyGetPS2ManagerPipeline and RpWorldSectorSkyGetAllInOnePipeline) and it deals with per-object data (transformation matrix, lights, etc) before passing one packet per mesh to RpMaterial-specified material pipelines. By default, atomics are rendered using the PS2All-based pipeline (see RpAtomicSkyGetPS2AllPipeline). If you wish to submit 2D triangles through Submit.csl (i.e you want to do transformation and lighting and whatever else CPU-side - which will of course be very slow) then rather than use this atomic object pipeline, you should use a generic (non-PlayStation 2-specific) one. The world plugin must be attached before using this function. The PlayStation 2 vanilla atomic object pipeline: PS2ObjAllInOne.csl
|
Converted from CHM to HTML with chm2web Pro 2.85 (unicode) |