当前位置: 首页>>代码示例>>Java>>正文


Java Perlin类代码示例

本文整理汇总了Java中com.flowpowered.noise.module.source.Perlin的典型用法代码示例。如果您正苦于以下问题:Java Perlin类的具体用法?Java Perlin怎么用?Java Perlin使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


Perlin类属于com.flowpowered.noise.module.source包,在下文中一共展示了Perlin类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: WorldGenerator

import com.flowpowered.noise.module.source.Perlin; //导入依赖的package包/类
public WorldGenerator(int gen_seed, int num_biomes, int map_width) {
    biome_list = new ArrayList<>();
    max_heights = new HashMap<>();
    biome_locations = new HashMap<>();

    /* separation of different biomes */
    Voronoi biomes = new Voronoi();
    biomes.setSeed(gen_seed);
    biomes.setFrequency(0.01);

    /* random variation sprinkled around the terrain */
    Perlin basefluct = new Perlin();
    basefluct.setSeed(gen_seed);
    basefluct.setFrequency(0.02f);

    /* generate the biomes of the world */
    for (int i = 0; i < num_biomes; i++) {
        biome_list.add(new Biome(i));
    }

    /* find which biome will be at each x-value of the world. */
    for (int i = 0; i < map_width; i++) {
        biome_locations.put(i, (int) (Math.abs(biomes.getValue(i, 0, 0)) * num_biomes));
    }

    /* add the base variation to the terrain */
    for (int i = 0; i < map_width; i++) {
        max_heights.put(i, 10 + (int) (Math.abs(basefluct.getValue(i, 0, 0)) * 7));
    }

    /* add hills */
    for (int i = 0; i < map_width; i++) {
        if (MathUtils.randomBoolean(biome_list.get(biome_locations.get(i)).getHilliness())) {
            buildHill(i, MathUtils.random(6, 10));
        }
    }
}
 
开发者ID:treeman1111,项目名称:Particles,代码行数:38,代码来源:WorldGenerator.java


注:本文中的com.flowpowered.noise.module.source.Perlin类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。