The features that ogre is able to do are the ones that are common to OpenGL and Directx. But Since the two
APIs do not have the same politics. This leads to loosing many feature (espacially from OpenGL).
What I hope, it that Ogre do the Union of features not the Intersection. And any feature will be acvtivated since one or another render system was choosing.
ps: "This is just a point of view it is not a critic".
Last edited by n9ine on Fri Aug 13, 2010 1:04 pm, edited 2 times in total.
This is way too vague. You really need to propose particular features, not such a general statement, if you want anything done
You will probably have to make a strong case why you really absolutely need that feature, though, because the choice of rendersystems is meant to be transparent, and as such non-matching features are against Ogre's design principles.
Yah I understand that, I know that such thing is out of Ogre Design.
For mu case, I hope that LINE drawing parameters can be added (line width, striple,...).
This is the problem with OpenGL, too many features being supported with little testing or documentation, and they're so many sometimes the documentation starts getting obscure (i.e. driver bugs, anyone?)
Also another problem is mantaining extensions. Often you have feature XYZ, which is implemented by NVIDIA, it gets called "NV_XYZ", then by ATI, so you get "ATI_XYZ", and then it gets into core: "GL_XYZ"
Not to mention if this extension is too old, it may happen a recent driver removed support for it's particular extension because nobody actually used (i.e.) ATI_XYZ.
So you end up implementing the same thing 3 times, and not even at all at once. You have to wait. Sometimes even years.
If you have the dedication to implement everything around 3 times, remove deprecated OGL functionality while still ensuring Ogre supports it, then you're welcome to try it.
Also don't forget you will need an easy, clear way to tell developers they can't use feature "ABC" if they're using Direct3D plugins, so they take it into account and doesn't unexpectedly crash.