=======
Spheres
=======

HOOPS/3dGS supports a 'sphere' primitive. It is tessellated at draw time which can greatly reduce the memory footprint of your application if spheres are widely used. It is inserted via a center point, radius, and axis/ortho vectors. The axis/ortho vectors would typically be NULL, but are provided to more easily allow application of a texture (a sphere that is tessellated using axis/ortho vectors has 'poles' and thus a texture can be applied by 'wrapping' it around the sphere as you would around a cylinder) A sample call is as follows:

.. tabs::

	.. group-tab:: C++
	
		.. literalinclude:: ../../../../hoops_3df/demo/common/sanity/0700_docs_0017.cpp
		   :start-after: //! [insert_sphere]
		   :end-before: //! [insert_sphere]
		   
The tessellation of the sphere is controlled by the "sphere" option within the "tessellation" rendering option. An example of a tessellation setting would be:

.. tabs::

	.. group-tab:: C++
	
		.. literalinclude:: ../../../../hoops_3df/demo/common/sanity/0700_docs_0017.cpp
		   :start-after: //! [sphere_tess]
		   :end-before: //! [sphere_tess]
		   
As with cylinders, 0 and -1 have special meaning. 0 means draw a point at the center. -1 means draw nothing at all. 
