Skip to content

Releases: DavixDevelop/schem2obj

Schem2Obj 0.8

30 Apr 22:47
Compare
Choose a tag to compare

This release adds support for empty armor stands and armor stands wearing skulls and armor items (helmet, chestplate, boots, and leggings).
The companion Blender MCImportCleanUp_Blender.py script now also supports an improved glass material, which is turned on by default.

Changes:

  • Added support for armor stands & armor and vines
  • Added improved glass shader in MCImportCleanUp_Blender.py script

Schem2Obj 0.7

22 Jan 17:19
Compare
Choose a tag to compare

With the program now being stable enough and supporting the majority of blocks/tile entites/functional entites, this is the first stable release.

This release adds an optional parameter -biome <biome_id> to specify which biome to use (to color the grass, foliage, and water). You can find a list of biomes and their ID's before 1.13 here in the Dec column.

This update also adds support for Fence Gates and Walls.

Changes:

  • Dropped alpha tag
  • Added new optional parameter -biome <biome_id>
  • Added support for the following Blocks:
    • Wall
    • Fence Gate

Future plans

Going forward the next big step will be the start of developing a GUI. The current project will become a core component, meaning it will become a separate subproject, while a new subproject will contain the GUI with executables for Windows/Mac...

This way, the core subproject will be able to be used as a library, while not containing the unnecessary code for the GIU.

Schem2Obj 0.6 Alpha

09 Dec 15:58
Compare
Choose a tag to compare
Schem2Obj 0.6 Alpha Pre-release
Pre-release

With the new memory optimizations, converting larger schematics is now possible.

Instead of generating the blocks in a single array, and processing each block (checking for adjacent blocks), the program now generates Singleton cube models of each block/tile entity and only stores the index of the block/tile entity and reference to the key of the cube model.
After generating the Singleton's, each block index gets processed (check for adjacent blocks and moved to the location in the schematic space), converted to the Wavefront format, and written to the OBJ file.

Each cube model's cube now also stores the corners and texture coordinates, and Its faces only store and index to each corner/texture coordinate, so as not to store duplicates of vertices and uv's.

By default (if the optional parameter -allBlocks isn't set) the program now export's a single object in the OBJ file, instead of a separate object for each block. For example, with separate objects for each block, the size of the exported OBJ was 295MB, while with the single object for all blocks, the size of the exported OBJ is 74MB and only takes a couple of seconds to import, for example, Blender.

Changes:

  • Memory-optimized generating and converting of blocks, to enable converting larger schematics
  • The exported OBJ file (if the optional parameter -allBlocks isn't set), now consists of only one object,
    as to save on storage space and enable faster loading of the OBJ file

Schem2Obj 0.5 Alpha

04 Dec 20:14
Compare
Choose a tag to compare
Schem2Obj 0.5 Alpha Pre-release
Pre-release

Besides this update adding support for many entities, it also overhauls the entire namespace system.

This was changed to add support for item frames. Besides overhauling it, it also removes the old blocks & entities namespace system, which was separate, as now the new namespace system stores all info about blocks, entities, tile entities in one place. It also adds a option for the namespace to carry custom data (as to enabled tile entities to work) and display mode of the block (only fixed and block for now).

Each cube models also now must generate a unique key, as to easier store the generated cube model in memory for later access. Before this, the namespace itself was used as this uniques key, but as each block can also carry addition custom data (ex tile entities like signs), the namespace itself wasn't used a key, and each tile entity and other blocks had to store the cube models of the variants in a static map. With the new update, all cube models can now be stored in a single map inside CubeModelFactory.

The update also adds a new optional parameter -christmasChests. If set, all chests (except ender chests) use the Christmas texture.

Changes:

  • Added support for following Tile entities:
    - Banners (Colored and patterned)
    - Signs (ASCII and Unicode glyphs)
    - Skulls (Vanilla skulls and player heads)
    - Chests (All variants, including Christmas chests)
    • Added support for following Entities:
      • Minecart
      • Paintings
      • Boats (All variants)
      • Item Frames (Including holding items (all supported blocks & entities))
    • Overhauled namespace system (to support item frames)

Schem2Obj 0.4 Alpha

22 Nov 20:58
Compare
Choose a tag to compare
Schem2Obj 0.4 Alpha Pre-release
Pre-release

Optimized resource loading (1.5-2.5x faster than 0.3)

Changes:

  • Removed ResourcePackUtility, which loaded all resources into memory, created Materials, BlockModels, and BlockStates from them, and stored them in memory, regardless if they were used or not
  • Introduced ResourceLoader that handles both built-in assets, resources in folders, and resources in zip/jar files

Schem2Obj 0.3 Alpha

22 Nov 00:46
Compare
Choose a tag to compare
Schem2Obj 0.3 Alpha Pre-release
Pre-release

Added support for zipped resource packs.

Changes:

  • Added new required parameter -minecraftFolder (absolute path to Minecraft installation game directory)
  • Added support for zipped resource packs
  • Removed Minecraft textures, models, and blockstates from resources

The reason why they were removed is because It's against the Minecraft EULA to store the default textures, models, and blockstates in the source code

Schem2Obj 0.2 Alpha

20 Nov 01:21
Compare
Choose a tag to compare
Schem2Obj 0.2 Alpha Pre-release
Pre-release

Decoupled converting block models directly to OBJ.

This will enable adding possible other output formats (Besides Wavefront OBJ) in the future

Changes:

  • Introduced the concept of cube models, where the CubeModelFactory first converts the block models to cube models, and then another Factory (In this case WavefrontObjectFactory) exports the cube model to its format, which can then be written to a file.
  • Removed the old wavefront-specific custom blocks in favor of the new cube model blocks and entities
  • Added support for beds as the first tile entity

Schem2Obj 0.1 Alpha

13 Nov 15:19
Compare
Choose a tag to compare
Schem2Obj 0.1 Alpha Pre-release
Pre-release

First alpha release of Schem2Obj. All basic blocks (that are only basic cubes), and some builtin blocks (ex, water and lava) are supported.

Full list of supported custom blocks & entities:

  • Grass Block (non-snowy and snowy)
  • Glass Pane & Block (regular and stained)
  • Stairs
  • Doors
  • Fences
  • Redstone Dust
  • Slabs
  • Iron Bars
  • Water
  • Lava
  • Fire
  • Leaves
  • Cauldron
  • Command Block
  • Lit Furnace
  • Lit Pumpkin
  • Rough Prismarine Block
  • Sea Lantern
  • Magma Block (fixed compressed texture)
  • Beds