Schlagwörter: bloxel Kommentarverlauf ein-/ausschalten | Tastaturkürzel

  • Andreas Höhmann 0:10 am Monday, 23. January 2012 Permalink |
    Tags: bloxel, github,   

    jmonkey maven support next round 

    jmonkey have no maven support … here is my solution 🙂

    1. clone jme3-thirdparty from git, mvn install … done
    2. clone jme3-buildhelper, copy pom.xml into jmonkey-engine … done
    3. start hacking your jmonkey game with maven build support 🙂

  • Andreas Höhmann 1:24 am Saturday, 13. August 2011 Permalink |
    Tags: bloxel, , perlin noise, tessellation   

    Bloxel Perlin Volume Renderer 

    We are making progress 😀

    I implemented a tessellation algorithm for volume -> mesh creation … here are some pictures from the bloxel labs …

  • Andreas Höhmann 22:05 am Saturday, 19. February 2011 Permalink |
    Tags: bloxel, heightmap,   

    Heightmap based terrain loading for bloxel 

    Last night I finished the first prototype of a heightmap based TerrainLoader.

    • I’m using a com.jme3.terrain.heightmap.HillHeightMap to create a 512×512 2D heightmap
    • our 3D TerrainChunkLoader (our manager for infinite worlds) map a TerrainChunk (x,y,z) to a region of this 2D map
    • here I had some problems to transform the 512×512 heightmap (2D) to the 4×4 terrain-chunks (3D) … but now it works 🙂




    Update 20.02.2011 – better textures for grass and dirt

  • Andreas Höhmann 3:26 am Tuesday, 15. February 2011 Permalink |
    Tags: bloxel,   

    Bloxel 0.2.0 with better performance 

    To handle scenes with many elements you have to „merge“ identical objects (Geometry’s) … I did it for bloxel 0.2.0 and the performance is now much better … here are two brand new screenshots :


    JMonkey contains a class for that :  jme3tools.optimize.GeometryBatchFactory. This forum entry shows me the way :

    FYI: our main application loop contains a „updateTerrain“ method:

    // near elements ... player can add/remove such elements ...
    final TerrainElementsResult result = terrainManager.getTerrainElements(thePlayerPosition, theWalkDirection);
    final Set<TerrainElement> currentElements = Sets.newLinkedHashSet(currentTerrainElements);
    final Set<TerrainElement> elementsToAdd = Sets.difference(new HashSet(result.getNearElements()), currentElements);
    final Set<TerrainElement> elementsToRemove = Sets.difference(currentTe, new HashSet(result.getNearElements()));
    // ... add new elements to scene, physics, cache etc ...
    // ... remove old elements from scene, physics, cache etc ...
    // far elements
    final Iterator<TerrainElement> iterator = result.getFarElements().iterator();
    final List<Geometry> geos = Lists.newArrayList();
    while (iterator.hasNext()) {
      final TerrainElement te =;
      Bloxel bloxel = bloxelCache.getFromCache(te.getCenter());
      if (bloxel == null) {
        bloxel = bloxelFactory.create(te.getBloxelType());
    final List<Geometry> makeBatches = GeometryBatchFactory.makeBatches(geos);
    final Material material = new Material(assetManager, "Common/MatDefs/Misc/WireColor.j3md");
    material.setColor("Color", ColorRGBA.White);
    for (final Geometry geometry : makeBatches) {
      // for debugging
      // geometry.setMaterial(material);
    System.out.println("update far terrain time: " + (System.currentTimeMillis() - start));

    Good night 😉

  • Andreas Höhmann 13:16 am Thursday, 10. February 2011 Permalink |
    Tags: bloxel, , opengl   

    Bloxel 0.1.0 

    I’m working on a new hobby project called BLOXEL – Yet another Minecraft clone 😉

    We try to implement a infinit open world with the  JMonkey 3D Game engine – all in Java!

    Here is the first screenshot


    Pictures of a brand new glass bloxel with a nice transparency effect

Neuen Beitrag erstellen
nächster Beitrag/nächster Kommentar
vorheriger Beitrag/vorheriger Kommentar
zeige/verstecke Kommentare
Zum Anfang gehen
zum Login
Zeige/Verberge Hilfe
Shift + ESC