X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=vrfileman;a=blobdiff_plain;f=src%2Ficon.cc;fp=src%2Ficon.cc;h=a72a6d0a095112e67a23da9c899e4c222a9e469b;hp=0000000000000000000000000000000000000000;hb=d0cc9ec2f92f149279ebc8f1c29d2be627074488;hpb=8afeabf06c79c755e5aaffa224e06c4abc92d833 diff --git a/src/icon.cc b/src/icon.cc new file mode 100644 index 0000000..a72a6d0 --- /dev/null +++ b/src/icon.cc @@ -0,0 +1,69 @@ +#include +#include "icon.h" +#include "fs.h" +#include "meshgen.h" +#include "mesh.h" + +IconRenderer::~IconRenderer() +{ +} + +bool IconRenderer::init() +{ + return true; +} + +void IconRenderer::shutdown() +{ +} + + +// Shapes icon renderer +enum { + SHAPE_SPHERE, + SHAPE_BOX, + SHAPE_TORUS, + SHAPE_CONE, + NUM_SHAPES +}; + +struct ShapesIconsPriv { + Mesh *shape[NUM_SHAPES]; +}; + +ShapesIcons::ShapesIcons() +{ + priv = new ShapesIconsPriv; + memset(priv, 0, sizeof *priv); +} + +ShapesIcons::~ShapesIcons() +{ + shutdown(); + delete priv; +} + +bool ShapesIcons::init() +{ + for(int i=0; ishape[i] = new Mesh; + } + + gen_geosphere(priv->shape[SHAPE_SPHERE], 1.0, 2); + gen_box(priv->shape[SHAPE_BOX], 1, 1, 1); + gen_torus(priv->shape[SHAPE_TORUS], 0.9, 0.2, 16, 8); + gen_cone(priv->shape[SHAPE_CONE], 0.8, 1.0, 8, 2); + + return true; +} + +void ShapesIcons::shutdown() +{ + for(int i=0; ishape[i]; + } +} + +void ShapesIcons::draw(FSNode *node) const +{ +}