Use https by default
[gentoo.git] / dev-games / ogre / metadata.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
3 <pkgmetadata>
4   <herd>games</herd>
5   <longdescription>
6 OGRE (Object-Oriented Graphics Rendering Engine) is a scene-oriented, flexible 3D 
7 engine written in C++ designed to make it easier and more intuitive for developers 
8 to produce games and demos utilising 3D hardware. The class library abstracts all 
9 the details of using the underlying system libraries like Direct3D and OpenGL and 
10 provides an interface based on world objects and other intuitive classes.
11
12 Productivity features
13
14     * Simple, easy to use OO interface designed to minimise the effort required to render 3D scenes, and to be independent of 3D implementation e.g. Direct3D/OpenGL/Glide etc.
15     * Extensible example framework makes getting your application running is quick and simple
16     * Common requirements like render state management, hierarchical culling, dealing with transparency are done for you automatically saving you valuable time
17     * Clean, uncluttered design and full documentation of all engine classes
18
19 Platform and 3D API support
20
21     * Direct3D and OpenGL support
22     * Windows (all major versions), Linux and Mac OSX support
23     * Builds on Visual C++ 6 (with STLport), Visual C++.Net (with STLport), Visual C++.Net 2003
24     * Builds on gcc 3+ on Linux / Mac OSX
25
26 Material / Shader support
27
28     * Load textures from PNG, JPEG or TGA files, MipMaps generated automatically, resizes maps to align with hardware requirements
29     * Procedural texture coordinate generation (e.g. environment mapping) and modification (scrolls, warps, rotations)
30     * Unbounded number of texture layers with many texture blending effects, animated textures
31     * Multitexturing hardware used to best effect automatically, combined with automatic fallback to mulitpass rendering
32     * Object transparency and other scene-level blending effects
33     * All defineable through text scripts to allow you to set up and tweak advanced materials without recompiling
34
35 Meshes
36
37     * Flexible mesh data formats accepted
38     * Export from Milkshape3D direct to OGRE .mesh and .skeleton format
39     * Skeletal animation (including blending of multiple animations)
40     * Biquadric Bezier patches for curved surfaces
41     * Progressive meshes 
42
43 Scene Features
44
45     * Highly customisable, flexible scene management, not tied to any single scene type. Use predefined classes for scene organisation if they suit or plug in your own subclass to gain full control over the scene organisation
46     * Generic SceneManager hierarchically culls by bounding volumes
47     * Example plugin (BspSceneManager) specialises to allow fast indoor renders, loading Quake3 levels inc. shader script parsing support
48     * Hierarchical scene graph; nodes allow objects to be attached to each other and follow each others movements, articulated structures etc
49     * Scene querying features 
50
51 Special Effects
52
53     * Particle Systems, including easily extensible emitters and affectors (customisable through plugins). Systems can be defined in text scripts for easy tweaking. Automatic use of particle pooling for maximum performance
54     * Support for skyboxes, skyplanes and skydomes, very easy to use
55     * Billboarding for sprite graphics
56     * Transparent objects automatically managed (rendering order and depth buffer settings all set up for you)
57
58 Misc features
59
60     * Common resource infrastructure for memory management and loading from archives (ZIP, PK3)
61     * Flexible plugin architecture allows engine to be extended without recompilation
62     * 'Controllers' allow you to easily organise derived values between objects e.g. changing the colour of a ship based on shields left
63     * Debugging memory manager for identifying memory leaks
64     * ReferenceAppLayer provides an example of how to combine OGRE with other libraries, for example ODE for collision and physics
65     * XMLConverter to convert efficient runtime binary formats to/from XML for interchange or editing
66
67 Exporters
68
69     * 3D Studio Max (meshes and animation)
70     * Milkshape 3D (meshes and animation)
71     * Blender3D (meshes)
72     * Wings3D (meshes)
73     * VRML97 (meshes)
74     * Maya (meshes)
75 </longdescription>
76   <use>
77     <flag name="boost">enable boost support</flag>
78     <flag name="cg">NVIDIA toolkit plugin</flag>
79     <flag name="double-precision">more precise calculations at the expense of speed</flag>
80         <flag name="freeimage">support images via freeimage</flag>
81         <flag name="gl3plus">Build OpenGL 3+ RenderSystem (EXPERIMENTAL)</flag>
82         <flag name="gles2">build OpenGL ES 2.x RenderSystem</flag>
83         <flag name="gles3">Enable OpenGL ES 3.x Features</flag>
84     <flag name="ois">pull in Object-oriented Input System library for samples</flag>
85     <flag name="poco">when USE=threads, use poco for threading</flag>
86     <flag name="tbb">when USE=threads, use tbb for threading</flag>
87     <flag name="tools">build+install helper tools</flag>
88     <flag name="zip">support zip archives</flag>
89   </use>
90 </pkgmetadata>