##========================================================================================
## Plugin description file for EQUINOX-3D
##
## AUTHOR:  Gabor Nagy
## DATE:    2023-Jun-02 18:08:56
##
## EQUINOX-3D is (TM) and Copyright (C) 1992-2018 by Gabor Nagy. All rights reserved.
##========================================================================================

Scene saving/loading
{
Name	= Files;	# The plugin name that will appear in the plugin-manager
Object	= Files;	# The name of the dynamic executeable file (.so)
}


Display/Hide things
{
Name	= Display;
Object	= Display;
}


#
# Modeling
#

Subdivision surfaces
{
Name	= Modeling/Subdivision surface;
Object	= Surface/SubdivisionSurface;
}

Boolean
{
Name	= Modeling/Boolean;
Object	= Boolean;
}

Extrude tool
{
Name	= Modeling/Extrude;
Object	= Surface/Extrude;
}

Revolve tool
{
Name	= Modeling/Revolve;
Object	= Surface/Revolve;
}

Loft tool
{
Name	= Modeling/Loft;
Object	= Surface/Skin;
}

Mirror
{
Name	= Modeling/Mirror;
Object	= Mirror;
}

Merge Geometries, Models etc.
{
Name	= Modeling/Merge;
Object	= Merge;
}

Geometry operations
{
Name	= Modeling/Geometry operations;
Object	= Geometries;
}

Tesselate/triangulate
{
Name	= Modeling/Tesselate or triangulate;
Object	= Tesselate;
}

Geometry cleanup
{
Name	= Modeling/Mesh clean-up tools;
Object	= Cleanup;
}

PolyGroup operations
{
Name	= Modeling/PolyGroup ops;
Object	= PolyGroups;
}


#
# Primitives
#

Create a vector
{
Name	= Primitives/Vector;
Object	= Primitives/Vector;
}

2D primitives: circle, disc
{
Name	= Primitives/2D;
Object	= Primitives/2D;
}

Create a box
{
Name	= Primitives/Box;
Object	= Primitives/Box;
}

Create a grid
{
Name	= Primitives/Grid;
Object	= Primitives/Grid;
}

Create a tetrahedron, icosahedron or dodecahedron
{
Name	= Primitives/Polyhedra;
Object	= Primitives/Polyhedra;
}

Create a cylinder, capsule or tube
{
Name	= Primitives/Cylinder;
Object	= Primitives/Cylinder;
}

Create a sphere
{
Name	= Primitives/Sphere;
Object	= Primitives/Sphere;
}

Create a torus
{
Name	= Primitives/Torus;
Object	= Primitives/Torus;
}

Create 3D Text
{
Name	= Primitives/Text;
Object	= Primitives/Text;
}

Create a fractal terrain
{
Name	= Primitives/Fractal terrain;
Object	= Primitives/Terrain;
}

Create a soccer-ball
Name	= Primitives/Soccer-ball;
Object	= Primitives/Soccerball;


#
# Splines and Faces
#
Spline editing
{
Name	= Splines and Faces/Splines;
Object	= Splines;
}

Spline convert to linear
{
Name	= Splines and Faces/Linearize;
Object	= SplineLinearize;
}

Spline offset
{
Name	= Splines and Faces/Spline offset;
Object	= SplineOffset;
}

Face editing
{
Name	= Splines and Faces/Faces;
Object	= Faces;
}


Camera
{
Name	= Camera;
Object	= Camera;
}


#
# Info
#
Edit
{
Name	= Info/Edit attributes;
Object	= Edit;
}

Info
{
Name	= Info/Show info;
Object	= Info;
}


#
# Lights
#
Create/edit lights
{
Name	= Lights/Lights;
Object	= Lights/Lights;
}

Create area lights
{
Name	= Lights/Area;
Object	= Lights/Area;
}


Create grass on the surface of an object
{
Name	= Nature/Grass;
Object	= Nature/Grass;
}


Transformations
{
Name	= Transforms;
Object	= Transforms;
}


Hierarchy manipulation
{
Name	= Hierarchies;
Object	= Hierarchies;
}


Clone: duplicate, instantiate etc.
{
Name	= Clone;
Object	= Clone;
}


Advanced selecting
{
Name	= Selecting;
Object	= Select;
}


#
# Animation
#
Path-constraint animation
{
Name	= Animation/Path animation;
Object	= Animation/Path;
}

Linearize fcurves
{
Name	= Animation/FCurve linearize;
Object	= Animation/FCurves;
}

Skeletons/joints
{
Name	= Animation/Skeletons & IK;
Object	= Animation/Skeleton;
}

Aim constraints
{
Name    = Animation/Aim constraint;
Object  = Animation/AimConstraint;
}

Constraints
{
Name    = Animation/Constraints;
Object  = Animation/Constraints;
}

Skinning
{
Name	= Deformers/SkinMesh;
Object	= Deformers/SkinMesh;
}



#
# Rendering
#

Rendering
{
Name	= Rendering/Main;
Object	= Rendering/Main;
}

Universal shader code generator. Must be loaded before any renderers
{
Name	= Rendering/SL;
Object	= Rendering/SL;
}

#
# Shaders must come after renderers
#
Cg
{
Name	= Rendering/Cg;
Object	= Rendering/Cg;
}

GLSL
{
Name	= Rendering/GLSL;
Object	= Rendering/GLSL;
}

The classical ray-tracer and path-tracer
{
Name	= Rendering/Ray-tracer;
Object	= Rendering/RayTracer;
}

GPU ray-tracer
{
Name	= Rendering/GPU ray-tracer;
Object	= Rendering/GPURT;
}

Real-time shadows, using frame-buffer object depth-maps
{
Name	= Rendering/Shadow mapping;
Object	= HW/Shadow;
}


#
# Materials. These must come after renderers, so they are can be registered for the different renderers
#
Materials
{
Name	= Materials/Material editing;
Object	= Materials;
}

Blinn shader
{
Name	= Materials/Blinn;
Object	= Shaders/Material/Blinn;
}

Physically accurate metal shader
{
Name	= Materials/Metal;
Object	= Shaders/Material/Metal;
}

Ward's anisotropic shader
{
Name	= Materials/Ward's anisotropic;
Object	= Shaders/Material/Anisotropic;
}

Constant shader with shadows
{
Name	= Materials/Constant with shadows;
Object	= Shaders/Material/ConstantWithShadows;
}

Metalness/roughness PBR shader
{
Name	= Materials/Material_PBR;
Object	= Shaders/Material/PBR;
}

Irradiance-map shader
{
Name	= Materials/IrradianceMap;
Object	= Shaders/Material/IrradianceMap;
}

Normal shader
{
Name	= Materials/Normal;
Object	= Shaders/Material/Normal;
}







#
# Physics
#

Wave simulation
{
Name	= Physics/Height-field waves;
Object	= Physics/Waves;
#Load	= FALSE;
}


#
# Code example plugins
#
{
Name	= Code examples/Hello world;
Object	= Examples/HelloWorld;
Load	= FALSE;
}

{
Name	= Code examples/Simple Polygon;
Object	= Examples/SimplePolygon;
#Load	= FALSE;
}

{
Name	= Code examples/Build a hierarchy with primitives;
Object	= Examples/BuildHierarchy;
Load	= FALSE;
}

{
Name	= Code examples/Build surfaces with Revolve and Extrude;
Object	= Examples/BuildSurfaces;
Load	= FALSE;
}

Name	= Code examples/Renderer sample;
Object	= Examples/MyRenderer;


Name	= Code examples/Simple;
Object	= Simple;
