Sha256: 842fd440d662c35b368e398a0bd199cf3b8603106a598c51d09e8efd6443a51d

Contents?: true

Size: 1.14 KB

Versions: 6

Compression:

Stored size: 1.14 KB

Contents

package org.sunflow.core;

import org.sunflow.PluginRegistry;
import org.sunflow.system.UI;
import org.sunflow.system.UI.Module;

class AccelerationStructureFactory {

    static AccelerationStructure create(String name, int n, boolean primitives) {
        if (name == null || name.equals("auto")) {
            if (primitives) {
                if (n > 20000000) {
                    name = "uniformgrid";
                } else if (n > 2000000) {
                    name = "bih";
                } else if (n > 2) {
                    name = "kdtree";
                } else {
                    name = "null";
                }
            } else {
                if (n > 2) {
                    name = "bih";
                } else {
                    name = "null";
                }
            }
        }
        AccelerationStructure accel = PluginRegistry.ACCEL_PLUGINS.createObject(name);
        if (accel == null) {
            UI.printWarning(Module.ACCEL, "Unrecognized intersection accelerator \"%s\" - using auto", name);
            return create(null, n, primitives);
        }
        return accel;
    }
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
joonsrenderer-1.3.1-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java
joonsrenderer-1.2.0-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java
joonsrenderer-1.1.3-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java
joonsrenderer-1.1.2-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java
joonsrenderer-1.1.1-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java
joonsrenderer-1.1-java src/main/java/org/sunflow/core/AccelerationStructureFactory.java