diff --git a/Makefile b/Makefile index 52682667f..94d519baa 100644 --- a/Makefile +++ b/Makefile @@ -257,7 +257,12 @@ GLOBAL_ASM_OS_O_FILES = $(foreach file,$(GLOBAL_ASM_OS_FILES),$(BUILD_DIR)/$(fil GLOBAL_ASM_AUDIO_O_FILES = $(foreach file,$(GLOBAL_ASM_AUDIO_C_FILES),$(BUILD_DIR)/$(file:.c=.o)) GLOBAL_ASM_RACING_O_FILES = $(foreach file,$(GLOBAL_ASM_RACING_C_FILES),$(BUILD_DIR)/$(file:.c=.o)) - +ifneq ($(BLENDER),) +else ifneq ($(call find-command,blender),) + BLENDER := blender +else ifeq ($(DETECTED_OS), windows) + BLENDER := "C:\Program Files\Blender Foundation\Blender 3.6\blender.exe" +endif #==============================================================================# # Compiler Options # @@ -402,6 +407,12 @@ doc: clean: $(RM) -r $(BUILD_DIR) +model_extract: + $(PYTHON) tools/blender/extract_models.py $(BLENDER) + +fast64_blender: + $(BLENDER) --python tools/blender_extension/fast64_run.py + distclean: distclean_assets $(RM) -r $(BUILD_DIR_BASE) ./extract_assets.py --clean diff --git a/open_blender_fast64.bat b/open_blender_fast64.bat deleted file mode 100644 index df72ffd83..000000000 --- a/open_blender_fast64.bat +++ /dev/null @@ -1 +0,0 @@ -"c:\Program Files\Blender Foundation\Blender 4.0\blender.exe" --python tools/blender_extension/fast64_run.py \ No newline at end of file diff --git a/open_blender_fast64.sh b/open_blender_fast64.sh deleted file mode 100755 index 39de4bb7f..000000000 --- a/open_blender_fast64.sh +++ /dev/null @@ -1 +0,0 @@ -blender --python tools/blender_extension/fast64_run.py \ No newline at end of file diff --git a/tools/blender/extract_models.py b/tools/blender/extract_models.py index 79e289fe6..f6bf6f6db 100644 --- a/tools/blender/extract_models.py +++ b/tools/blender/extract_models.py @@ -5,6 +5,7 @@ import os import argparse parser = argparse.ArgumentParser(description="Extract 3D models from .blend files") +parser.add_argument("blender", type=str, help="Path to blender executable") parser.add_argument("-t", "--threads", type=int, default=1, help="Number of threads to use") args = parser.parse_args() @@ -13,10 +14,7 @@ if not os.path.exists("models"): models:list[dict[str, str|list[str]]] = json.load(open("tools/blender/3d_models.json")) -if os.name == "nt": - blender = "c:/Program Files/Blender Foundation/Blender 4.0/blender.exe" -else: - blender = "blender" +blender = args.blender args_blender = [ "--background",