Texture Antialiasing?

Is there any way to enable antialiasing on transparent textures like a fence or those really low poly trees and grass?

On a completely different note, how are different quality levels in games normally done?  For example, would there be a completely separate set of models and textures for low and high quality?  Would the textures and models be resized/Level of detailed in game?

For the transparency question, you will have to wait… For the other one, There are several ways of doing it… One is as you said, create several models, each at some poly count appropriate for showing at a certain distance from camera. The other is to use DynamicLevelOfDetail, you can check the Test in the jmetest directory.

i think hes asking for the quality change in game based the options the user chooses.



for textures that can be done via texture filter options in jme. for models, i guess u will have to use a complete different set of models.

That is not exactly true… The dynamic LOD removes triangles from a mesh dynamically (hence the name!  ;)) based on the amount of information the model would lose. The textures, if MIP-mapped would display the best approximation given the area of that texture that covers the screen. Static LOD does the same but switching between models and not textures (it does not modify your meshes).

LOD is automatically done for mipmapped textures as duenez said, model LOD can be done in several ways:

  1. DistanceLodNode can be used to switch between models depending on distance to camera.
  2. ClodMesh removes triangles from the model depending on distance to camera dynamically.
  3. Depending on game settings, you can decide to load low-res models for in-game objects to improve performance, this is generally better than CLOD/ClodMesh since the low-res model has been carefully constructed by the artist to look as best as possible even with a low triangle count, the problem is that it's more work…

The other option is to use RenderToTexture (imposters) when the model is far enough… That should improve the performance by a lot.



@Momoko: Stop chasing me in the posts! }:-@ … for every post I make, there is an answer from you right next to it  XD

i personally dont find LOD very useful just because they cant maintain the quality. yes u do get a performance increase with LOD but not much and the quality just reduces like crazy. i cant seem to be able to find a point where the performance gain is significant and the quality of the graphic is still good enough.

neakor said:

i personally dont find LOD very useful just because they cant maintain the quality. yes u do get a performance increase with LOD but not much and the quality just reduces like crazy. i cant seem to be able to find a point where the performance gain is significant and the quality of the graphic is still good enough.


Yeah, I have to agree there.  It doesn't see to me like the gain is worth the loss of quality.  You can really see the models distort as the LOD decreases.

That is perhaps the best way would be to use a DLOD. This way, the overhead is minimal (in the sense of modeling/programming), and the difference at each step is 1 or 2 triangles which is not noticeable… Check the TestAutoClodMesh test and see for yourself.