| 941 | avgComplexity *= 1.0f / NStoreComplexities; |
| 942 | } |
| 943 | float Scene::GetSmokeGeneralization() const |
| 944 | { |
| 945 | return _lodInvWidth * 0.1f; |
| 946 | } |
| 947 | |
| 948 | #else |
| 949 | |
| 950 | static inline float CoveredArea(Object* obj, float dist2, float oScale) |
| 951 | { |
| 952 | LODShape* shape = obj->GetShape(); |
| 953 | if (!shape) |
| 954 | return 0; |
| 955 | float radius = shape->BoundingSphere() * oScale; |
| 956 | |
| 957 | Camera* cam = GScene->GetCamera(); |
| 958 | // return area in pixels |
| 959 | float areaK = cam->InvLeft() * cam->InvTop() * GEngine->Width() * GEngine->Height(); |
| 960 | |
| 961 | const float maxArea = 0.5f; |
| 962 | // if (Square(radius)/dist2>maxArea) |
| 963 | if (Square(radius) > dist2 * maxArea) |
| 964 | { |