Skip to content

Commit

Permalink
Merge pull request #70 from LucasDower/0.6
Browse files Browse the repository at this point in the history
0.6.0 release
  • Loading branch information
LucasDower authored Oct 7, 2022
2 parents b16f253 + e200ee5 commit 7ccf006
Show file tree
Hide file tree
Showing 123 changed files with 13,671 additions and 9,743 deletions.
10 changes: 8 additions & 2 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
"ecmaVersion": "latest"
},
"plugins": [
"@typescript-eslint"
"@typescript-eslint",
"simple-import-sort"
],
"rules": {
"linebreak-style": "off",
Expand All @@ -31,6 +32,11 @@
"no-unused-vars": "warn",
"brace-style": [2, "1tbs", { "allowSingleLine": true }],
"block-spacing": [2, "always"],
"semi": "error"
"semi": "error",
"spaced-comment": "off",
"keyword-spacing": "off",
"space-before-function-paren": "off",
"simple-import-sort/imports": "error",
"simple-import-sort/exports": "error"
}
}
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,9 @@ ObjToSchematic-darwin-x64
/dev
/tools/blocks
/tools/models
/tests/out
/logs/
notes.txt
*.DS_Store
*.DS_Store
.dependency-cruiser.js
dependencygraph.svg
34 changes: 19 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<h1>
<p align="center">
<img src="res/static/icon.png" alt="Logo" width="64" height="64">
<br>
<img src="res/static/icon.png" alt="Logo" width="64" height="64"><br>
ObjToSchematic
</p>
</h1>
Expand All @@ -19,8 +18,10 @@
<img src="https://github.com/LucasDower/ObjToSchematic/actions/workflows/tests.js.yml/badge.svg" alt="Logo">
</p>

![Preview](https://i.imgur.com/HgQaEIO.png)
<sub>"Homo erectus georgicus" (https://skfb.ly/6ADT8) by Geoffrey Marchal is licensed under Creative Commons Attribution-NonCommercial (http://creativecommons.org/licenses/by-nc/4.0/).</sub>
<p align="center">
<img src="res/samples/noodles.png" alt="Noodles">
<sub>"Noodle Bowl - 3DDecember Day9" (https://skfb.ly/orI9z) by Batuhan13<br>is licensed under Creative Commons Attribution (http://creativecommons.org/licenses/by/4.0/).</sub>
</p>

## Usage
You can either download the [latest release](https://github.com/LucasDower/ObjToSchematic/releases) or if you want the latest features you can build it yourself by following the instructions below.
Expand All @@ -31,6 +32,11 @@ You can either download the [latest release](https://github.com/LucasDower/ObjTo
* Run `npm install`.
* Run `npm start`.

<p align="center">
<img src="res/samples/editor.png">
<sub>"Cut Fish" (https://skfb.ly/orWLC) by Suushimi<br>is licensed under Creative Commons Attribution-NonCommercial (http://creativecommons.org/licenses/by-nc/4.0/).</sub>
</p>

### Advanced

#### Block Palettes
Expand Down Expand Up @@ -87,19 +93,20 @@ If you want to use the program without using the GUI, you can edit `/tools/headl
* 🟢 **Buffer refactor to support `OES_element_index_uint` WebGL extension (support for uint32 index buffers instead of uint16)**

0.6
* 🟢 **Web workers**
* Processing UI animation
* Prevent UI hanging
* 🟢 **Options for handling falling blocks and overlapping voxels**
* 🟢 **Sponge schematics exporter (.schem)**
* 🟢 **Structure blocks exporter (.nbt)**
* ⚪ Support for simplifying complex meshes
* 🟡 Web workers (see [web-workers](https://github.com/LucasDower/ObjToSchematic/tree/web-workers))
* Progress bar
* Prevent UI hanging
* 🟢 Alpha support
* 🟢 **Alpha support**
* Alpha texture maps
* Transparent blocks
* ⚪ Importers for .fbx and .gltf
* 🟢 **Config file**
* 🟢 **Log files**

0.7
* ⚪ Support for simplifying complex meshes
* ⚪ Node.js C++ addons
* ⚪ Block painting
* ⚪ Building guides
Expand All @@ -114,9 +121,9 @@ This is an non-commercial **unofficial** tool that is neither approved, endorsed
![MinecraftPreview](https://i.imgur.com/LhTZ4G9.png)

## Contributing
Any contributions are welcome, just fork and submit a PR! Just make sure the code style follows the rulings in the `.eslintrc.json` and pass the CI build task.
Any contributions are welcome, just fork and submit a PR! Just make sure the code style follows the rulings in the `.eslintrc.json` by running `npm run lint` and the tests all pass by running `npm test`.

Currently there's not much docs but if you're looking for where to get started, look at `app_context.ts` and follow `_import()`, `_simplify()`, `_voxelise()`, `_assign()`, and `_export()`. If you're looking to add elements to the UI, look at `ui/layout.ts`, I'm not using a UI framework because I'm a nutter. Adding more file formats to import from and export to would be nice. Adding new default block palettes would be great also.
Currently there's not much docs but if you're looking for where to get started, look at `app_context.ts` and follow `_import()`, `_voxelise()`, `_assign()`, and `_export()`. If you're looking to add elements to the UI, look at `ui/layout.ts`, I'm not using a UI framework because I'm a nutter. Adding more file formats to import from and export to would be nice. Adding new default block palettes would be great also.

If you have any questions or need help getting started then feel free to join the [Discord](https://discord.gg/McS2VrBZPD) or message me **SinJi#4165**.

Expand All @@ -128,9 +135,6 @@ To allow for your favourite debugging tools like breakpoints and call stacks, I'
<img src="https://i.imgur.com/wmNQnkN.png" alt="Gallery1" width="600"><br>
<sub>"Creepy Lady Bust Statue Scan" (https://skfb.ly/6B7pK) by alex.toporowicz is licensed under Creative Commons Attribution (http://creativecommons.org/licenses/by/4.0/).</sub>
<br>
<img src="https://imgur.com/oewDRvM.png" alt="Gallery2" width="600"><br>
<sub>"Cut Fish" (https://skfb.ly/orWLC) by Suushimi is licensed under Creative Commons Attribution-NonCommercial (http://creativecommons.org/licenses/by-nc/4.0/).</sub>
<br>
<img src="https://imgur.com/SF33FGa.png" alt="Gallery3" width="600"><br>
<sub>"Pivot Demo: Journey" (https://skfb.ly/6WCIJ) by Sketchfab is licensed under Creative Commons Attribution (http://creativecommons.org/licenses/by/4.0/).</sub>
<br>
Expand Down
4 changes: 4 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@
</head>

<body>
<div class="progress-bar-container">
<div id="progress-bar" class="progress-bar" style="width:0%"></div>
</div>

<!-- The UI is dynamically built at runtime, see ./src/ui/layout.ts for details -->
<div class="column-properties" id="properties">
</div>
Expand Down
7 changes: 7 additions & 0 deletions jestconfig.full.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"transform": {
"^.+\\.(t|j)sx?$": "ts-jest"
},
"testRegex": "(/test/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
"moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json", "node"]
}
3 changes: 2 additions & 1 deletion jestconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,6 @@
"^.+\\.(t|j)sx?$": "ts-jest"
},
"testRegex": "(/test/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
"moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json", "node"]
"moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json", "node"],
"modulePathIgnorePatterns": ["/tests/full/"]
}
Loading

0 comments on commit 7ccf006

Please sign in to comment.