Skip to content

Commit

Permalink
Merge branch 'master' into navigation
Browse files Browse the repository at this point in the history
  • Loading branch information
Zylann committed Dec 11, 2024
2 parents 18f2659 + 700fd27 commit d5cc96f
Show file tree
Hide file tree
Showing 373 changed files with 11,458 additions and 7,498 deletions.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Linking a minimal project that reproduces the issue may help:
- Remove any scripts, nodes and assets that aren't necessary to reproduce the issue.
- Don't use fullscreen or large screen size.
- If scripts are needed, prefer GDScript, as C# is harder to setup
- Don't embed scripts or shaders inside resource or scenes, save them as their own files

If you see any errors in the console, that may also help.

Expand Down
14 changes: 13 additions & 1 deletion .github/workflows/fuzzer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,16 @@ jobs:
${{github.job}}-${{env.GODOT_BASE_BRANCH}}-${{github.ref}}
${{github.job}}-${{env.GODOT_BASE_BRANCH}}
# Fix the issue of running out of disk space during Compilation stage
# Taken from here: https://github.com/orgs/community/discussions/26351#discussioncomment-3251595
- name: Free disk space
run: |
sudo swapoff -a
sudo rm -f /swapfile
sudo apt-get clean
docker rmi $(docker image ls -aq)
df -h
# NO-PIE is for more detailed bactraces with line symbols
- name: Compilation
env:
Expand Down Expand Up @@ -107,7 +117,9 @@ jobs:
uses: actions/checkout@v4
with:
repository: qarmin/Qarminer
ref: ${{ env.GODOT_BASE_BRANCH }}
# At the time of writing, qarmin did not put out later than 4.1 versions, but claims that it works with Godot versions up to 4.3+
# See https://github.com/qarmin/Qarminer/issues/32
ref: 4.1
path: fuzzer

- name: Copy fuzzer settings
Expand Down
40 changes: 32 additions & 8 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ jobs:
# To fix this we would have to cherry-pick 41890ff9c3028d3b05d993f8f7ec42c346824304 to the 4.0 branch.
# There might be other issues cropping up, since there doesn't seem to be an official CI checking this.
warnings: all
werror: yes

- name: 4.1 Editor
precision: single
Expand All @@ -41,40 +42,63 @@ jobs:
executable_name: godot.linuxbsd.editor.x86_64
godot_base_branch: "4.1"
warnings: extra

werror: yes

- name: 4.2 Editor
precision: single
target: editor
production: no
executable_name: godot.linuxbsd.editor.x86_64
godot_base_branch: "4.2"
warnings: extra
# TODO Had to turn off warning as errors, even though it worked in the past.
# Downgrading warnings to `all` or `moderate` did not fix it.
# Something in Godot 4.2, or in the version of GCC in the buildroot, has changed causing this to happen:
# drivers/gles3/storage/texture_storage.cpp:1513:31: error: 'void* memset(void*, int, size_t)'
# specified bound between 18446744065119617024 and 18446744073709551612 exceeds maximum object size
# [-Werror=stringop-overflow=]
# memset(v_offsets, 0, sizeof(int) * base_size);
# ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Looking at the code, I could not find what's wrong.
werror: no

- name: master Editor
precision: single
target: editor
production: no
executable_name: godot.linuxbsd.editor.x86_64
godot_base_branch: "master"
warnings: extra
werror: yes

# --- Builds with artifacts ---

- name: 4.2 Editor
- name: 4.3 Editor
precision: single
target: editor
production: yes
executable_name: godot.linuxbsd.editor.x86_64
godot_base_branch: "4.2.2-stable"
godot_base_branch: "4.3-stable"
warnings: extra
werror: yes

- name: 4.2 Template
- name: 4.3 Template
precision: single
target: template_release
production: yes
executable_name: godot.linuxbsd.template_release.x86_64
godot_base_branch: "4.2.2-stable"
godot_base_branch: "4.3-stable"
warnings: extra
werror: yes

- name: 4.2 Editor Float64
- name: 4.3 Editor Float64
precision: double
target: editor
production: yes
executable_name: godot.linuxbsd.editor.double.x86_64
godot_base_branch: "4.2.2-stable"
godot_base_branch: "4.3-stable"
warnings: extra
werror: yes

steps:
# Clone Godot
Expand Down Expand Up @@ -155,7 +179,7 @@ jobs:
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
run: |
PATH=${GITHUB_WORKSPACE}/x86_64-godot-linux-gnu_sdk-buildroot/bin:$PATH
scons verbose=yes warnings=${{matrix.warnings}} werror=yes platform=linuxbsd tests=no dev_build=no target=${{matrix.target}} production=${{matrix.production}} precision=${{matrix.precision}}
scons verbose=yes warnings=${{matrix.warnings}} werror=${{matrix.werror}} platform=linuxbsd tests=no dev_build=no target=${{matrix.target}} production=${{matrix.production}} precision=${{matrix.precision}}
# Make build available
- uses: actions/upload-artifact@v4
Expand Down
40 changes: 20 additions & 20 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@ jobs:
arch: [x86_64, arm64]
target: [editor, template_release]
include:
- name: 4.2 Editor
- name: 4.3 Editor
target: editor
executable_name: godot.macos.editor
godot_base_branch: "4.2.2-stable"
godot_base_branch: "4.3-stable"

- name: 4.2 Template
- name: 4.3 Template
target: template_release
executable_name: godot.macos.template_release
godot_base_branch: "4.2.2-stable"
godot_base_branch: "4.3-stable"

steps:
# Clone Godot
Expand Down Expand Up @@ -125,7 +125,7 @@ jobs:
- uses: actions/checkout@v4
with:
repository: godotengine/godot
ref: 4.2
ref: "4.3-stable"

- uses: actions/download-artifact@v4
with:
Expand All @@ -136,27 +136,27 @@ jobs:
# Use `ditto` # macos specific archiver to workaround https://github.com/actions/upload-artifact/issues/38
- name: Create editor .app bundle
run: |
cp -r misc/dist/macos_tools.app ./Godot.app
mkdir -p Godot.app/Contents/MacOS
cp bin/godot.macos.editor.universal Godot.app/Contents/MacOS/Godot
chmod +x Godot.app/Contents/MacOS/Godot
codesign --force --timestamp --options=runtime --entitlements misc/dist/macos/editor.entitlements -s - Godot.app
ditto -c -k --sequesterRsrc --keepParent Godot.app Godot.app.zip
cp -r misc/dist/macos_tools.app ./godot.macos.editor.app
mkdir -p godot.macos.editor.app/Contents/MacOS
cp bin/godot.macos.editor.universal godot.macos.editor.app/Contents/MacOS/Godot
chmod +x godot.macos.editor.app/Contents/MacOS/Godot
codesign --force --timestamp --options=runtime --entitlements misc/dist/macos/editor.entitlements -s - godot.macos.editor.app
ditto -c -k --sequesterRsrc --keepParent godot.macos.editor.app godot.macos.editor.app.zip
- name: Create macos template
run: |
cp -r misc/dist/macos_template.app .
mkdir -p macos_template.app/Contents/MacOS
cp bin/godot.macos.template_release.universal macos_template.app/Contents/MacOS/godot_macos_release.universal
chmod +x macos_template.app/Contents/MacOS/godot_macos*
ditto -c -k --sequesterRsrc --keepParent macos_template.app macos_template.app.zip
cp -r misc/dist/macos_template.app ./godot.macos.template.app
mkdir -p godot.macos.template.app/Contents/MacOS
cp bin/godot.macos.template_release.universal godot.macos.template.app/Contents/MacOS/godot_macos_release.universal
chmod +x godot.macos.template.app/Contents/MacOS/godot_macos*
ditto -c -k --sequesterRsrc --keepParent godot.macos.template.app godot.macos.template.app.zip
- uses: actions/upload-artifact@v4
with:
name: Godot.app
path: Godot.app.zip
name: godot.macos.editor.app
path: godot.macos.editor.app.zip

- uses: actions/upload-artifact@v4
with:
name: macos_template
path: macos_template.app.zip
name: godot.macos.template.app
path: godot.macos.template.app.zip
9 changes: 8 additions & 1 deletion .github/workflows/mono.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ concurrency:

# Global Cache Settings
env:
GODOT_BASE_BRANCH: "4.2.2-stable"
GODOT_BASE_BRANCH: "4.3-stable"
SCONS_CACHE_LIMIT: 4096

jobs:
Expand Down Expand Up @@ -194,6 +194,13 @@ jobs:
repository: godotengine/godot
ref: ${{ env.GODOT_BASE_BRANCH }}

# The version of ThorVG in 4.3-stable hits an error in latest MSVC (see godot#95861).
# We should no longer need this in 4.3.1 and later.
- name: Patch ThorVG
run: |
curl -LO https://github.com/godotengine/godot/commit/4abc358952a69427617b0683fd76427a14d6faa8.patch
git apply 4abc358952a69427617b0683fd76427a14d6faa8.patch
# Clone our module under the correct directory
- uses: actions/checkout@v4
with:
Expand Down
17 changes: 12 additions & 5 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ concurrency:
# Global Cache Settings
# SCONS_CACHE for windows must be set in the build environment
env:
GODOT_BASE_BRANCH: "4.2.2-stable"
GODOT_BASE_BRANCH: "4.3-stable"
SCONS_CACHE_MSVC_CONFIG: true
SCONS_CACHE_LIMIT: 4096

Expand All @@ -25,27 +25,27 @@ jobs:
strategy:
matrix:
include:
- name: 4.2 Editor
- name: 4.3 Editor
target: editor
precision: single
executable_name: godot.windows.editor.x86_64.exe
tracy: no

- name: 4.2 Profiling Editor
- name: 4.3 Profiling Editor
target: editor
precision: single
# This is not a built-in feature of Godot so we have to do some changes manually
executable_name: godot.windows.tracy.editor.x86_64.exe
original_executable_name: godot.windows.editor.x86_64.exe
tracy: yes

- name: 4.2 Editor Float64
- name: 4.3 Editor Float64
target: editor
precision: double
executable_name: godot.windows.editor.double.x86_64.exe
tracy: no

- name: 4.2 Template
- name: 4.3 Template
target: template_release
precision: single
executable_name: godot.windows.template_release.x86_64.exe
Expand All @@ -63,6 +63,13 @@ jobs:
with:
path: modules/voxel

# The version of ThorVG in 4.3-stable hits an error in latest MSVC (see godot#95861).
# We should no longer need this in 4.3.1 and later.
- name: Patch ThorVG
run: |
curl -LO https://github.com/godotengine/godot/commit/4abc358952a69427617b0683fd76427a14d6faa8.patch
git apply 4abc358952a69427617b0683fd76427a14d6faa8.patch
# Upload cache on completion and check it out now
# Editing this is pretty dangerous for Windows since it can break and needs to be properly tested with a fresh cache.
- name: Load .scons_cache directory
Expand Down
24 changes: 17 additions & 7 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,21 @@
Voxel Tools for Godot Engine
--------------------------------
MIT License

Copyright (c) 2016-2022 Marc Gilleron
Copyright (c) 2016-2024 Marc Gilleron

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ Thanks for your support :)
```
Aaron Franke (aaronfranke)
Bewildering
Eerrikki
```

### Silver supporters
Expand Down Expand Up @@ -102,6 +103,7 @@ SummitCollie
nulshift
ddel-rio (Daniel del Río Román)
Cyberphinx
Mia (Tigxette)
```


6 changes: 3 additions & 3 deletions SCsub
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ if INCLUDE_TESTS:
# SQLite
env_sqlite = env_voxel.Clone()

# Turn off some warnings produced when compiling with warnings=extra
if env["warnings"] == "extra":
env_sqlite.disable_warnings()
# Turn off warnings, we get some with Clang and with `warnings=extra`
env_sqlite.disable_warnings()

# if not env_sqlite.msvc:
# env_sqlite.Append(CXXFLAGS=["-Wno-discarded-qualifiers"])

Expand Down
1 change: 1 addition & 0 deletions common.py
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ def get_sources(env, is_editor_build, include_tests):
"util/godot/core/string.cpp",
"util/godot/core/variant.cpp",
"util/godot/core/packed_arrays.cpp",
"util/godot/core/rect2i.cpp",

"util/godot/direct_mesh_instance.cpp",
"util/godot/direct_multimesh_instance.cpp",
Expand Down
1 change: 0 additions & 1 deletion config.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ def get_doc_classes():
"VoxelMesher",
"VoxelMesherBlocky",
"VoxelMesherCubes",
"VoxelMesherDMC",
"VoxelMesherTransvoxel",
"VoxelMeshSDF",
"VoxelModifier",
Expand Down
6 changes: 6 additions & 0 deletions constants/voxel_string_names.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,12 @@ VoxelStringNames::VoxelStringNames() {
async_search_completed = StringName("async_search_completed");

file_selected = StringName("file_selected");

jitter = StringName("jitter");
triangle_area_threshold = StringName("triangle_area_threshold");
density = StringName("density");
noise_dimension = StringName("noise_dimension");
noise_on_scale = StringName("noise_on_scale");
}

} // namespace zylann::voxel
7 changes: 7 additions & 0 deletions constants/voxel_string_names.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#ifndef VOXEL_STRING_NAMES_H
#define VOXEL_STRING_NAMES_H

#include "../util/containers/fixed_array.h"
#include "../util/godot/core/string_name.h"
#include "../util/math/ortho_basis.h"

Expand Down Expand Up @@ -105,6 +106,12 @@ class VoxelStringNames {
StringName async_search_completed;

StringName file_selected;

StringName jitter;
StringName triangle_area_threshold;
StringName density;
StringName noise_dimension;
StringName noise_on_scale;
};

} // namespace zylann::voxel
Expand Down
Loading

0 comments on commit d5cc96f

Please sign in to comment.