public DynamicObjectColorProvider(IDynamicObject entity) { int colorSourceCount = entity.ColorSourceCount; if (colorSourceCount == 0) { return; } permutations = new int[colorSourceCount]; interpolators = new float[colorSourceCount]; for (int source = 0; source < colorSourceCount; source++) { permutations[source] = entity.GetColorPermutation(source); interpolators[source] = (float)random.NextDouble(); } method = new DynamicColorRetrievalMethod(entity.GetColor); }