From cf298c29e9f22e9d5e486ec14e1bf7e4955cce02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ni=C3=B1o=20D=C3=ADaz?= Date: Mon, 10 Oct 2022 19:06:21 +0100 Subject: [PATCH] Initial commit --- .gitignore | 8 + examples/basic_model/Makefile | 220 +++ examples/basic_model/assets.sh | 14 + examples/basic_model/screenshot.png | Bin 0 -> 18646 bytes examples/basic_model/source/dsma | 1 + examples/basic_model/source/main.c | 145 ++ examples/filesystem_loading/Makefile | 220 +++ examples/filesystem_loading/assets.sh | 13 + examples/filesystem_loading/screenshot.png | Bin 0 -> 9328 bytes examples/filesystem_loading/source/dsma | 1 + examples/filesystem_loading/source/main.c | 220 +++ examples/multiple_animations/Makefile | 220 +++ examples/multiple_animations/assets.sh | 15 + examples/multiple_animations/screenshot.png | Bin 0 -> 22027 bytes examples/multiple_animations/source/dsma | 1 + examples/multiple_animations/source/main.c | 234 +++ examples/performance/Makefile | 220 +++ examples/performance/assets.sh | 25 + examples/performance/screenshot.png | Bin 0 -> 26900 bytes examples/performance/source/dsma | 1 + examples/performance/source/main.c | 171 ++ examples/stress_test/Makefile | 220 +++ examples/stress_test/assets.sh | 36 + examples/stress_test/screenshot.png | Bin 0 -> 45411 bytes examples/stress_test/source/dsma | 1 + examples/stress_test/source/main.c | 243 +++ library/dsma.c | 211 +++ library/dsma.h | 36 + licenses/cc0-1.0.txt | 125 ++ licenses/mit.txt | 19 + models/one_quad/Quad.md5mesh | 33 + models/one_quad/Wiggle.md5anim | 207 +++ models/one_quad/one_quad.blend | Bin 0 -> 960336 bytes models/one_quad/one_quad.png | Bin 0 -> 36714 bytes models/robot/Bow.md5anim | 269 +++ models/robot/Robot.md5mesh | 1730 +++++++++++++++++++ models/robot/Walk.md5anim | 369 ++++ models/robot/Wave.md5anim | 469 +++++ models/robot/robot.blend | Bin 0 -> 1654988 bytes models/robot/robot.png | Bin 0 -> 36714 bytes models/wiggle/Shake.md5anim | 100 ++ models/wiggle/Wiggle.md5mesh | 103 ++ models/wiggle/wiggle.blend | Bin 0 -> 921088 bytes models/wiggle/wiggle.png | Bin 0 -> 36714 bytes readme.rst | 189 ++ tools/display_list.py | 324 ++++ tools/md5_to_dsma.py | 859 +++++++++ 47 files changed, 7272 insertions(+) create mode 100644 .gitignore create mode 100644 examples/basic_model/Makefile create mode 100644 examples/basic_model/assets.sh create mode 100644 examples/basic_model/screenshot.png create mode 120000 examples/basic_model/source/dsma create mode 100644 examples/basic_model/source/main.c create mode 100644 examples/filesystem_loading/Makefile create mode 100644 examples/filesystem_loading/assets.sh create mode 100644 examples/filesystem_loading/screenshot.png create mode 120000 examples/filesystem_loading/source/dsma create mode 100644 examples/filesystem_loading/source/main.c create mode 100644 examples/multiple_animations/Makefile create mode 100644 examples/multiple_animations/assets.sh create mode 100644 examples/multiple_animations/screenshot.png create mode 120000 examples/multiple_animations/source/dsma create mode 100644 examples/multiple_animations/source/main.c create mode 100644 examples/performance/Makefile create mode 100644 examples/performance/assets.sh create mode 100644 examples/performance/screenshot.png create mode 120000 examples/performance/source/dsma create mode 100644 examples/performance/source/main.c create mode 100644 examples/stress_test/Makefile create mode 100644 examples/stress_test/assets.sh create mode 100644 examples/stress_test/screenshot.png create mode 120000 examples/stress_test/source/dsma create mode 100644 examples/stress_test/source/main.c create mode 100644 library/dsma.c create mode 100644 library/dsma.h create mode 100644 licenses/cc0-1.0.txt create mode 100644 licenses/mit.txt create mode 100644 models/one_quad/Quad.md5mesh create mode 100644 models/one_quad/Wiggle.md5anim create mode 100644 models/one_quad/one_quad.blend create mode 100644 models/one_quad/one_quad.png create mode 100644 models/robot/Bow.md5anim create mode 100644 models/robot/Robot.md5mesh create mode 100644 models/robot/Walk.md5anim create mode 100644 models/robot/Wave.md5anim create mode 100644 models/robot/robot.blend create mode 100644 models/robot/robot.png create mode 100644 models/wiggle/Shake.md5anim create mode 100644 models/wiggle/Wiggle.md5mesh create mode 100644 models/wiggle/wiggle.blend create mode 100644 models/wiggle/wiggle.png create mode 100644 readme.rst create mode 100644 tools/display_list.py create mode 100755 tools/md5_to_dsma.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..aaf7ba4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*.swp +__pycache__/ +*.bin +*.dsa +*.dsm +build/ +*.nds +*.elf diff --git a/examples/basic_model/Makefile b/examples/basic_model/Makefile new file mode 100644 index 0000000..98f6233 --- /dev/null +++ b/examples/basic_model/Makefile @@ -0,0 +1,220 @@ +#--------------------------------------------------------------------------------- +.SUFFIXES: +#--------------------------------------------------------------------------------- + +ifeq ($(strip $(DEVKITARM)),) +$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") +endif + +include $(DEVKITARM)/ds_rules + +#--------------------------------------------------------------------------------- +# TARGET is the name of the output +# BUILD is the directory where object files & intermediate files will be placed +# SOURCES is a list of directories containing source code +# INCLUDES is a list of directories containing extra header files +# DATA is a list of directories containing binary files embedded using bin2o +# GRAPHICS is a list of directories containing image files to be converted with grit +# AUDIO is a list of directories containing audio to be converted by maxmod +# ICON is the image used to create the game icon, leave blank to use default rule +# NITRO is a directory that will be accessible via NitroFS +#--------------------------------------------------------------------------------- +TARGET := $(shell basename $(CURDIR)) +BUILD := build +SOURCES := source source/dsma +INCLUDES := include +DATA := data +GRAPHICS := +AUDIO := +ICON := + +# specify a directory which contains the nitro filesystem +# this is relative to the Makefile +NITRO := + +# These set the information text in the nds file +GAME_TITLE := DSMA Example +GAME_SUBTITLE1 := built with devkitARM +GAME_SUBTITLE2 := http://devitpro.org + +#--------------------------------------------------------------------------------- +# options for code generation +#--------------------------------------------------------------------------------- +ARCH := -marm -mthumb-interwork -march=armv5te -mtune=arm946e-s + +CFLAGS := -g -Wall -O3\ + $(ARCH) $(INCLUDE) -DARM9 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions +ASFLAGS := -g $(ARCH) +LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) + +#--------------------------------------------------------------------------------- +# any extra libraries we wish to link with the project (order is important) +#--------------------------------------------------------------------------------- +LIBS := -lnds9 + +# automatigically add libraries for NitroFS +ifneq ($(strip $(NITRO)),) +LIBS := -lfilesystem -lfat $(LIBS) +endif +# automagically add maxmod library +ifneq ($(strip $(AUDIO)),) +LIBS := -lmm9 $(LIBS) +endif + +#--------------------------------------------------------------------------------- +# list of directories containing libraries, this must be the top level containing +# include and lib +#--------------------------------------------------------------------------------- +LIBDIRS := $(LIBNDS) $(PORTLIBS) + +#--------------------------------------------------------------------------------- +# no real need to edit anything past this point unless you need to add additional +# rules for different file extensions +#--------------------------------------------------------------------------------- +ifneq ($(BUILD),$(notdir $(CURDIR))) +#--------------------------------------------------------------------------------- + +export OUTPUT := $(CURDIR)/$(TARGET) + +export VPATH := $(CURDIR)/$(subst /,,$(dir $(ICON)))\ + $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))\ + $(foreach dir,$(DATA),$(CURDIR)/$(dir))\ + $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) + +export DEPSDIR := $(CURDIR)/$(BUILD) + +CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) +CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) +SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) +PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png))) +BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) + +# prepare NitroFS directory +ifneq ($(strip $(NITRO)),) + export NITRO_FILES := $(CURDIR)/$(NITRO) +endif + +# get audio list for maxmod +ifneq ($(strip $(AUDIO)),) + export MODFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir)) + + # place the soundbank file in NitroFS if using it + ifneq ($(strip $(NITRO)),) + export SOUNDBANK := $(NITRO_FILES)/soundbank.bin + + # otherwise, needs to be loaded from memory + else + export SOUNDBANK := soundbank.bin + BINFILES += $(SOUNDBANK) + endif +endif + +#--------------------------------------------------------------------------------- +# use CXX for linking C++ projects, CC for standard C +#--------------------------------------------------------------------------------- +ifeq ($(strip $(CPPFILES)),) +#--------------------------------------------------------------------------------- + export LD := $(CC) +#--------------------------------------------------------------------------------- +else +#--------------------------------------------------------------------------------- + export LD := $(CXX) +#--------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------- + +export OFILES_BIN := $(addsuffix .o,$(BINFILES)) + +export OFILES_SOURCES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o) + +export OFILES := $(PNGFILES:.png=.o) $(OFILES_BIN) $(OFILES_SOURCES) + +export HFILES := $(PNGFILES:.png=.h) $(addsuffix .h,$(subst .,_,$(BINFILES))) + +export INCLUDE := $(foreach dir,$(INCLUDES),-iquote $(CURDIR)/$(dir))\ + $(foreach dir,$(LIBDIRS),-I$(dir)/include)\ + -I$(CURDIR)/$(BUILD) +export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) + +ifeq ($(strip $(ICON)),) + icons := $(wildcard *.bmp) + + ifneq (,$(findstring $(TARGET).bmp,$(icons))) + export GAME_ICON := $(CURDIR)/$(TARGET).bmp + else + ifneq (,$(findstring icon.bmp,$(icons))) + export GAME_ICON := $(CURDIR)/icon.bmp + endif + endif +else + ifeq ($(suffix $(ICON)), .grf) + export GAME_ICON := $(CURDIR)/$(ICON) + else + export GAME_ICON := $(CURDIR)/$(BUILD)/$(notdir $(basename $(ICON))).grf + endif +endif + +.PHONY: $(BUILD) clean + +#--------------------------------------------------------------------------------- +$(BUILD): + @mkdir -p $@ + @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile + +#--------------------------------------------------------------------------------- +clean: + @echo clean ... + @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +else + +#--------------------------------------------------------------------------------- +# main targets +#--------------------------------------------------------------------------------- +$(OUTPUT).nds: $(OUTPUT).elf $(GAME_ICON) +$(OUTPUT).elf: $(OFILES) + +# source files depend on generated headers +$(OFILES_SOURCES) : $(HFILES) + +# need to build soundbank first +$(OFILES): $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +# rule to build solution from music files +#--------------------------------------------------------------------------------- +$(SOUNDBANK) : $(MODFILES) +#--------------------------------------------------------------------------------- + mmutil $^ -d -o$@ -hsoundbank.h + +#--------------------------------------------------------------------------------- +%.bin.o %_bin.h : %.bin +#--------------------------------------------------------------------------------- + @echo $(notdir $<) + @$(bin2o) + +#--------------------------------------------------------------------------------- +# This rule creates assembly source files using grit +# grit takes an image file and a .grit describing how the file is to be processed +# add additional rules like this for each image extension +# you use in the graphics folders +#--------------------------------------------------------------------------------- +%.s %.h: %.png %.grit +#--------------------------------------------------------------------------------- + grit $< -fts -o$* + +#--------------------------------------------------------------------------------- +# Convert non-GRF game icon to GRF if needed +#--------------------------------------------------------------------------------- +$(GAME_ICON): $(notdir $(ICON)) +#--------------------------------------------------------------------------------- + @echo convert $(notdir $<) + @grit $< -g -gt -gB4 -gT FF00FF -m! -p -pe 16 -fh! -ftr + +-include $(DEPSDIR)/*.d + +#--------------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------------- diff --git a/examples/basic_model/assets.sh b/examples/basic_model/assets.sh new file mode 100644 index 0000000..b6e9935 --- /dev/null +++ b/examples/basic_model/assets.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +TOOLS=../../tools +ROBOT=../../models/robot + +python3 $TOOLS/md5_to_dsma.py \ + --model $ROBOT/Robot.md5mesh \ + --name robot \ + --output data \ + --texture 128 128 \ + --anim $ROBOT/Walk.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix diff --git a/examples/basic_model/screenshot.png b/examples/basic_model/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..bc336eb17a3732fe2b704a5bbbb26c5ce7c7e031 GIT binary patch literal 18646 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 literal 0 HcmV?d00001 diff --git a/examples/basic_model/source/dsma b/examples/basic_model/source/dsma new file mode 120000 index 0000000..ba40d2f --- /dev/null +++ b/examples/basic_model/source/dsma @@ -0,0 +1 @@ +../../../library \ No newline at end of file diff --git a/examples/basic_model/source/main.c b/examples/basic_model/source/main.c new file mode 100644 index 0000000..1da2204 --- /dev/null +++ b/examples/basic_model/source/main.c @@ -0,0 +1,145 @@ +// SPDX-License-Identifier: CC0-1.0 +// +// SPDX-FileContributor: Antonio Niño Díaz, 2022 + +#include + +#include + +#include "dsma/dsma.h" + +// Animated models +#include "robot_dsm_bin.h" + +// Animations +#include "robot_walk_dsa_bin.h" + +// Textures +#include "texture128_bin.h" + +void setup_video(void) +{ + videoSetMode(MODE_0_3D); + + vramSetBankA(VRAM_A_TEXTURE); + + consoleDemoInit(); + + glInit(); + + glEnable(GL_ANTIALIAS); + glEnable(GL_TEXTURE_2D); + + // Setup the rear plane + glClearColor(2, 2, 2, 31); // BG must be opaque for AA to work + glClearPolyID(63); // BG must have a unique polygon ID for AA to work + glClearDepth(0x7FFF); + + glViewport(0, 0, 255, 191); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(70, 256.0 / 192.0, 0.1, 40); + + glLight(0, RGB15(0, 31, 0), 0, floattov10(0.8), floattov10(-0.2)); + glLight(1, RGB15(31, 0, 0), 0, floattov10(-0.8), floattov10(-0.2)); + glLight(2, RGB15(31, 31, 0), floattov10(0.7), 0, floattov10(-0.7)); + glLight(3, RGB15(0, 0, 31), floattov10(-0.7), 0, floattov10(-0.7)); + + glMaterialf(GL_AMBIENT, RGB15(0, 0, 0)); + glMaterialf(GL_DIFFUSE, RGB15(31, 31, 31)); + glMaterialf(GL_SPECULAR, BIT(15) | RGB15(0, 0, 0)); + glMaterialf(GL_EMISSION, RGB15(0, 0, 0)); + glMaterialShinyness(); + + glMatrixMode(GL_MODELVIEW); + //glMatrixMode(GL_POSITION); // This rotates lights with the model + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_BACK | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); +} + +int main(void) +{ + // Basic 3D setup, mostly from libnds examples + setup_video(); + + // Load texture + int textureID; + glGenTextures(1, &textureID); + glBindTexture(0, textureID); + glTexImage2D(0, 0, GL_RGB, TEXTURE_SIZE_128, TEXTURE_SIZE_128, 0, + TEXGEN_TEXCOORD, (u8*)texture128_bin); + + // Get pointers to the animated model files + const void *dsa_file = robot_walk_dsa_bin; + const void *dsm_file = robot_dsm_bin; + + // Obtain number of frames in the animation + const uint32_t num_frames = DSMA_GetNumFrames(dsa_file); + + printf("\x1b[1;0HAnimate model: L/R"); + printf("\x1b[2;0HRotate model: Direction pad"); + printf("\x1b[3;0HExit demo: START"); + + int32_t frame = 0; + float rotateY = 0.0; + float rotateZ = 0.0; + + while(1) + { + glLoadIdentity(); + + gluLookAt(8.0, 3.0, 0.0, // camera possition + 0.0, 3.0, 0.0, // look at + 0.0, 1.0, 0.0); // up + + // Draw animated model + glPushMatrix(); + { + glRotateY(rotateY); + glRotateZ(rotateZ); + + glBindTexture(0, textureID); + + DSMA_DrawModel(dsm_file, dsa_file, frame); + } + glPopMatrix(1); + + scanKeys(); + u16 keys_held = keysHeld(); + + if (keys_held & KEY_UP) + rotateZ += 3; + if (keys_held & KEY_DOWN) + rotateZ -= 3; + if (keys_held & KEY_LEFT) + rotateY -= 3; + if (keys_held & KEY_RIGHT) + rotateY += 3; + + printf("\x1b[11;0HCurrent frame: %.2f ", f32tofloat(frame)); + + if (keys_held & KEY_R) + { + frame += 1 << 9; + if (frame >= (num_frames << 12)) + frame -= num_frames << 12; + } + if (keys_held & KEY_L) + { + frame -= 1 << 9; + if (frame < 0) + frame += num_frames << 12; + } + + glFlush(0); + + swiWaitForVBlank(); + + if (keys_held & KEY_START) + break; + } + + return 0; +} diff --git a/examples/filesystem_loading/Makefile b/examples/filesystem_loading/Makefile new file mode 100644 index 0000000..9e5e5dc --- /dev/null +++ b/examples/filesystem_loading/Makefile @@ -0,0 +1,220 @@ +#--------------------------------------------------------------------------------- +.SUFFIXES: +#--------------------------------------------------------------------------------- + +ifeq ($(strip $(DEVKITARM)),) +$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") +endif + +include $(DEVKITARM)/ds_rules + +#--------------------------------------------------------------------------------- +# TARGET is the name of the output +# BUILD is the directory where object files & intermediate files will be placed +# SOURCES is a list of directories containing source code +# INCLUDES is a list of directories containing extra header files +# DATA is a list of directories containing binary files embedded using bin2o +# GRAPHICS is a list of directories containing image files to be converted with grit +# AUDIO is a list of directories containing audio to be converted by maxmod +# ICON is the image used to create the game icon, leave blank to use default rule +# NITRO is a directory that will be accessible via NitroFS +#--------------------------------------------------------------------------------- +TARGET := $(shell basename $(CURDIR)) +BUILD := build +SOURCES := source source/dsma +INCLUDES := include +DATA := +GRAPHICS := +AUDIO := +ICON := + +# specify a directory which contains the nitro filesystem +# this is relative to the Makefile +NITRO := nitrofiles + +# These set the information text in the nds file +GAME_TITLE := DSMA Example +GAME_SUBTITLE1 := built with devkitARM +GAME_SUBTITLE2 := http://devitpro.org + +#--------------------------------------------------------------------------------- +# options for code generation +#--------------------------------------------------------------------------------- +ARCH := -marm -mthumb-interwork -march=armv5te -mtune=arm946e-s + +CFLAGS := -g -Wall -O3\ + $(ARCH) $(INCLUDE) -DARM9 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions +ASFLAGS := -g $(ARCH) +LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) + +#--------------------------------------------------------------------------------- +# any extra libraries we wish to link with the project (order is important) +#--------------------------------------------------------------------------------- +LIBS := -lnds9 + +# automatigically add libraries for NitroFS +ifneq ($(strip $(NITRO)),) +LIBS := -lfilesystem -lfat $(LIBS) +endif +# automagically add maxmod library +ifneq ($(strip $(AUDIO)),) +LIBS := -lmm9 $(LIBS) +endif + +#--------------------------------------------------------------------------------- +# list of directories containing libraries, this must be the top level containing +# include and lib +#--------------------------------------------------------------------------------- +LIBDIRS := $(LIBNDS) $(PORTLIBS) + +#--------------------------------------------------------------------------------- +# no real need to edit anything past this point unless you need to add additional +# rules for different file extensions +#--------------------------------------------------------------------------------- +ifneq ($(BUILD),$(notdir $(CURDIR))) +#--------------------------------------------------------------------------------- + +export OUTPUT := $(CURDIR)/$(TARGET) + +export VPATH := $(CURDIR)/$(subst /,,$(dir $(ICON)))\ + $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))\ + $(foreach dir,$(DATA),$(CURDIR)/$(dir))\ + $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) + +export DEPSDIR := $(CURDIR)/$(BUILD) + +CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) +CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) +SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) +PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png))) +BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) + +# prepare NitroFS directory +ifneq ($(strip $(NITRO)),) + export NITRO_FILES := $(CURDIR)/$(NITRO) +endif + +# get audio list for maxmod +ifneq ($(strip $(AUDIO)),) + export MODFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir)) + + # place the soundbank file in NitroFS if using it + ifneq ($(strip $(NITRO)),) + export SOUNDBANK := $(NITRO_FILES)/soundbank.bin + + # otherwise, needs to be loaded from memory + else + export SOUNDBANK := soundbank.bin + BINFILES += $(SOUNDBANK) + endif +endif + +#--------------------------------------------------------------------------------- +# use CXX for linking C++ projects, CC for standard C +#--------------------------------------------------------------------------------- +ifeq ($(strip $(CPPFILES)),) +#--------------------------------------------------------------------------------- + export LD := $(CC) +#--------------------------------------------------------------------------------- +else +#--------------------------------------------------------------------------------- + export LD := $(CXX) +#--------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------- + +export OFILES_BIN := $(addsuffix .o,$(BINFILES)) + +export OFILES_SOURCES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o) + +export OFILES := $(PNGFILES:.png=.o) $(OFILES_BIN) $(OFILES_SOURCES) + +export HFILES := $(PNGFILES:.png=.h) $(addsuffix .h,$(subst .,_,$(BINFILES))) + +export INCLUDE := $(foreach dir,$(INCLUDES),-iquote $(CURDIR)/$(dir))\ + $(foreach dir,$(LIBDIRS),-I$(dir)/include)\ + -I$(CURDIR)/$(BUILD) +export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) + +ifeq ($(strip $(ICON)),) + icons := $(wildcard *.bmp) + + ifneq (,$(findstring $(TARGET).bmp,$(icons))) + export GAME_ICON := $(CURDIR)/$(TARGET).bmp + else + ifneq (,$(findstring icon.bmp,$(icons))) + export GAME_ICON := $(CURDIR)/icon.bmp + endif + endif +else + ifeq ($(suffix $(ICON)), .grf) + export GAME_ICON := $(CURDIR)/$(ICON) + else + export GAME_ICON := $(CURDIR)/$(BUILD)/$(notdir $(basename $(ICON))).grf + endif +endif + +.PHONY: $(BUILD) clean + +#--------------------------------------------------------------------------------- +$(BUILD): + @mkdir -p $@ + @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile + +#--------------------------------------------------------------------------------- +clean: + @echo clean ... + @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +else + +#--------------------------------------------------------------------------------- +# main targets +#--------------------------------------------------------------------------------- +$(OUTPUT).nds: $(OUTPUT).elf $(GAME_ICON) +$(OUTPUT).elf: $(OFILES) + +# source files depend on generated headers +$(OFILES_SOURCES) : $(HFILES) + +# need to build soundbank first +$(OFILES): $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +# rule to build solution from music files +#--------------------------------------------------------------------------------- +$(SOUNDBANK) : $(MODFILES) +#--------------------------------------------------------------------------------- + mmutil $^ -d -o$@ -hsoundbank.h + +#--------------------------------------------------------------------------------- +%.bin.o %_bin.h : %.bin +#--------------------------------------------------------------------------------- + @echo $(notdir $<) + @$(bin2o) + +#--------------------------------------------------------------------------------- +# This rule creates assembly source files using grit +# grit takes an image file and a .grit describing how the file is to be processed +# add additional rules like this for each image extension +# you use in the graphics folders +#--------------------------------------------------------------------------------- +%.s %.h: %.png %.grit +#--------------------------------------------------------------------------------- + grit $< -fts -o$* + +#--------------------------------------------------------------------------------- +# Convert non-GRF game icon to GRF if needed +#--------------------------------------------------------------------------------- +$(GAME_ICON): $(notdir $(ICON)) +#--------------------------------------------------------------------------------- + @echo convert $(notdir $<) + @grit $< -g -gt -gB4 -gT FF00FF -m! -p -pe 16 -fh! -ftr + +-include $(DEPSDIR)/*.d + +#--------------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------------- diff --git a/examples/filesystem_loading/assets.sh b/examples/filesystem_loading/assets.sh new file mode 100644 index 0000000..6bee866 --- /dev/null +++ b/examples/filesystem_loading/assets.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +TOOLS=../../tools +ROBOT=../../models/robot + +python3 $TOOLS/md5_to_dsma.py \ + --model $ROBOT/Robot.md5mesh \ + --name robot \ + --output nitrofiles \ + --texture 128 128 \ + --anim $ROBOT/Walk.md5anim \ + --skip-frames 1 \ + --blender-fix diff --git a/examples/filesystem_loading/screenshot.png b/examples/filesystem_loading/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..93ef74c7f241a5d311f147da837c8cbb27841562 GIT binary patch literal 9328 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 +#include + +#include +#include + +#include "dsma/dsma.h" + +int file_load(const char *filename, void **buffer, size_t *size_) +{ + FILE *f = fopen(filename, "rb"); + size_t size; + + *buffer = NULL; + if (size_) + *size_ = 0; + + if (f == NULL) + { + iprintf("%s couldn't be opened!\n", filename); + return -1; + } + + fseek(f, 0, SEEK_END); + size = ftell(f); + if (size_) + *size_ = size; + + if (size == 0) + { + iprintf("Size of %s is 0!\n", filename); + fclose(f); + return -1; + } + + rewind(f); + *buffer = malloc(size); + if (*buffer == NULL) + { + iprintf("Not enought memory to load %s!\n", filename); + fclose(f); + return -1; + } + + if (fread(*buffer, size, 1, f) != 1) + { + iprintf("Error while reading: %s\n", filename); + fclose(f); + free(*buffer); + return -1; + } + + fclose(f); + + return 0; +} + +void setup_video(void) +{ + videoSetMode(MODE_0_3D); + + vramSetBankA(VRAM_A_TEXTURE); + + consoleDemoInit(); + + glInit(); + + glEnable(GL_ANTIALIAS); + glEnable(GL_TEXTURE_2D); + + // Setup the rear plane + glClearColor(2, 2, 2, 31); // BG must be opaque for AA to work + glClearPolyID(63); // BG must have a unique polygon ID for AA to work + glClearDepth(0x7FFF); + + glViewport(0, 0, 255, 191); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(70, 256.0 / 192.0, 0.1, 40); + + glLight(0, RGB15(0, 31, 0), 0, floattov10(0.8), floattov10(-0.2)); + glLight(1, RGB15(31, 0, 0), 0, floattov10(-0.8), floattov10(-0.2)); + glLight(2, RGB15(31, 31, 0), floattov10(0.7), 0, floattov10(-0.7)); + glLight(3, RGB15(0, 0, 31), floattov10(-0.7), 0, floattov10(-0.7)); + + glMaterialf(GL_AMBIENT, RGB15(0, 0, 0)); + glMaterialf(GL_DIFFUSE, RGB15(31, 31, 31)); + glMaterialf(GL_SPECULAR, BIT(15) | RGB15(0, 0, 0)); + glMaterialf(GL_EMISSION, RGB15(0, 0, 0)); + glMaterialShinyness(); + + glMatrixMode(GL_MODELVIEW); + //glMatrixMode(GL_POSITION); // This rotates lights with the model + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_BACK | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); +} + +int main(void) +{ + // Basic 3D setup, mostly from libnds examples + setup_video(); + + if (!nitroFSInit(NULL)) + { + iprintf("nitroFSInit failed.\nPress START to exit"); + while(1) + { + swiWaitForVBlank(); + scanKeys(); + if (keysHeld()&KEY_START) + return 0; + } + } + + // Load files from the filesystem + void *texture128, *dsa_file, *dsm_file; + size_t texture128_size, dsa_file_size, dsm_file_size; + + int ret = 0; + ret |= file_load("robot.dsm", &dsm_file, &dsm_file_size); + ret |= file_load("robot_walk.dsa", &dsa_file, &dsa_file_size); + ret |= file_load("texture128.bin", &texture128, &texture128_size); + if (ret) + { + iprintf("Press START to exit"); + while(1) + { + swiWaitForVBlank(); + scanKeys(); + if (keysHeld()&KEY_START) + return 0; + } + } + + printf("\x1b[20;0HLoaded files:"); + printf("\x1b[21;0HDSM: %8zu bytes", dsm_file_size); + printf("\x1b[22;0HDSA: %8zu bytes", dsa_file_size); + printf("\x1b[23;0HTexture: %8zu bytes", texture128_size); + + // Load texture + int textureID; + glGenTextures(1, &textureID); + glBindTexture(0, textureID); + glTexImage2D(0, 0, GL_RGB, TEXTURE_SIZE_128, TEXTURE_SIZE_128, 0, + TEXGEN_TEXCOORD, texture128); + + // Obtain number of frames in the animation + const uint32_t num_frames = DSMA_GetNumFrames(dsa_file); + + printf("\x1b[1;0HAnimate model: L/R"); + printf("\x1b[2;0HRotate model: Direction pad"); + printf("\x1b[3;0HExit demo: START"); + + int32_t frame = 0; + float rotateY = 0.0; + float rotateZ = 0.0; + + while(1) + { + glLoadIdentity(); + + gluLookAt(8.0, 3.0, 0.0, // camera possition + 0.0, 3.0, 0.0, // look at + 0.0, 1.0, 0.0); // up + + // Draw animated model + glPushMatrix(); + { + glRotateY(rotateY); + glRotateZ(rotateZ); + + glBindTexture(0, textureID); + + DSMA_DrawModel(dsm_file, dsa_file, frame); + } + glPopMatrix(1); + + scanKeys(); + u16 keys_held = keysHeld(); + + if (keys_held & KEY_UP) + rotateZ += 3; + if (keys_held & KEY_DOWN) + rotateZ -= 3; + if (keys_held & KEY_LEFT) + rotateY -= 3; + if (keys_held & KEY_RIGHT) + rotateY += 3; + + printf("\x1b[11;0HCurrent frame: %.2f ", f32tofloat(frame)); + + if (keys_held & KEY_R) + { + frame += 1 << 9; + if (frame >= (num_frames << 12)) + frame -= num_frames << 12; + } + if (keys_held & KEY_L) + { + frame -= 1 << 9; + if (frame < 0) + frame += num_frames << 12; + } + + glFlush(0); + + swiWaitForVBlank(); + + if (keys_held & KEY_START) + break; + } + + return 0; +} diff --git a/examples/multiple_animations/Makefile b/examples/multiple_animations/Makefile new file mode 100644 index 0000000..98f6233 --- /dev/null +++ b/examples/multiple_animations/Makefile @@ -0,0 +1,220 @@ +#--------------------------------------------------------------------------------- +.SUFFIXES: +#--------------------------------------------------------------------------------- + +ifeq ($(strip $(DEVKITARM)),) +$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") +endif + +include $(DEVKITARM)/ds_rules + +#--------------------------------------------------------------------------------- +# TARGET is the name of the output +# BUILD is the directory where object files & intermediate files will be placed +# SOURCES is a list of directories containing source code +# INCLUDES is a list of directories containing extra header files +# DATA is a list of directories containing binary files embedded using bin2o +# GRAPHICS is a list of directories containing image files to be converted with grit +# AUDIO is a list of directories containing audio to be converted by maxmod +# ICON is the image used to create the game icon, leave blank to use default rule +# NITRO is a directory that will be accessible via NitroFS +#--------------------------------------------------------------------------------- +TARGET := $(shell basename $(CURDIR)) +BUILD := build +SOURCES := source source/dsma +INCLUDES := include +DATA := data +GRAPHICS := +AUDIO := +ICON := + +# specify a directory which contains the nitro filesystem +# this is relative to the Makefile +NITRO := + +# These set the information text in the nds file +GAME_TITLE := DSMA Example +GAME_SUBTITLE1 := built with devkitARM +GAME_SUBTITLE2 := http://devitpro.org + +#--------------------------------------------------------------------------------- +# options for code generation +#--------------------------------------------------------------------------------- +ARCH := -marm -mthumb-interwork -march=armv5te -mtune=arm946e-s + +CFLAGS := -g -Wall -O3\ + $(ARCH) $(INCLUDE) -DARM9 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions +ASFLAGS := -g $(ARCH) +LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) + +#--------------------------------------------------------------------------------- +# any extra libraries we wish to link with the project (order is important) +#--------------------------------------------------------------------------------- +LIBS := -lnds9 + +# automatigically add libraries for NitroFS +ifneq ($(strip $(NITRO)),) +LIBS := -lfilesystem -lfat $(LIBS) +endif +# automagically add maxmod library +ifneq ($(strip $(AUDIO)),) +LIBS := -lmm9 $(LIBS) +endif + +#--------------------------------------------------------------------------------- +# list of directories containing libraries, this must be the top level containing +# include and lib +#--------------------------------------------------------------------------------- +LIBDIRS := $(LIBNDS) $(PORTLIBS) + +#--------------------------------------------------------------------------------- +# no real need to edit anything past this point unless you need to add additional +# rules for different file extensions +#--------------------------------------------------------------------------------- +ifneq ($(BUILD),$(notdir $(CURDIR))) +#--------------------------------------------------------------------------------- + +export OUTPUT := $(CURDIR)/$(TARGET) + +export VPATH := $(CURDIR)/$(subst /,,$(dir $(ICON)))\ + $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))\ + $(foreach dir,$(DATA),$(CURDIR)/$(dir))\ + $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) + +export DEPSDIR := $(CURDIR)/$(BUILD) + +CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) +CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) +SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) +PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png))) +BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) + +# prepare NitroFS directory +ifneq ($(strip $(NITRO)),) + export NITRO_FILES := $(CURDIR)/$(NITRO) +endif + +# get audio list for maxmod +ifneq ($(strip $(AUDIO)),) + export MODFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir)) + + # place the soundbank file in NitroFS if using it + ifneq ($(strip $(NITRO)),) + export SOUNDBANK := $(NITRO_FILES)/soundbank.bin + + # otherwise, needs to be loaded from memory + else + export SOUNDBANK := soundbank.bin + BINFILES += $(SOUNDBANK) + endif +endif + +#--------------------------------------------------------------------------------- +# use CXX for linking C++ projects, CC for standard C +#--------------------------------------------------------------------------------- +ifeq ($(strip $(CPPFILES)),) +#--------------------------------------------------------------------------------- + export LD := $(CC) +#--------------------------------------------------------------------------------- +else +#--------------------------------------------------------------------------------- + export LD := $(CXX) +#--------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------- + +export OFILES_BIN := $(addsuffix .o,$(BINFILES)) + +export OFILES_SOURCES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o) + +export OFILES := $(PNGFILES:.png=.o) $(OFILES_BIN) $(OFILES_SOURCES) + +export HFILES := $(PNGFILES:.png=.h) $(addsuffix .h,$(subst .,_,$(BINFILES))) + +export INCLUDE := $(foreach dir,$(INCLUDES),-iquote $(CURDIR)/$(dir))\ + $(foreach dir,$(LIBDIRS),-I$(dir)/include)\ + -I$(CURDIR)/$(BUILD) +export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) + +ifeq ($(strip $(ICON)),) + icons := $(wildcard *.bmp) + + ifneq (,$(findstring $(TARGET).bmp,$(icons))) + export GAME_ICON := $(CURDIR)/$(TARGET).bmp + else + ifneq (,$(findstring icon.bmp,$(icons))) + export GAME_ICON := $(CURDIR)/icon.bmp + endif + endif +else + ifeq ($(suffix $(ICON)), .grf) + export GAME_ICON := $(CURDIR)/$(ICON) + else + export GAME_ICON := $(CURDIR)/$(BUILD)/$(notdir $(basename $(ICON))).grf + endif +endif + +.PHONY: $(BUILD) clean + +#--------------------------------------------------------------------------------- +$(BUILD): + @mkdir -p $@ + @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile + +#--------------------------------------------------------------------------------- +clean: + @echo clean ... + @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +else + +#--------------------------------------------------------------------------------- +# main targets +#--------------------------------------------------------------------------------- +$(OUTPUT).nds: $(OUTPUT).elf $(GAME_ICON) +$(OUTPUT).elf: $(OFILES) + +# source files depend on generated headers +$(OFILES_SOURCES) : $(HFILES) + +# need to build soundbank first +$(OFILES): $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +# rule to build solution from music files +#--------------------------------------------------------------------------------- +$(SOUNDBANK) : $(MODFILES) +#--------------------------------------------------------------------------------- + mmutil $^ -d -o$@ -hsoundbank.h + +#--------------------------------------------------------------------------------- +%.bin.o %_bin.h : %.bin +#--------------------------------------------------------------------------------- + @echo $(notdir $<) + @$(bin2o) + +#--------------------------------------------------------------------------------- +# This rule creates assembly source files using grit +# grit takes an image file and a .grit describing how the file is to be processed +# add additional rules like this for each image extension +# you use in the graphics folders +#--------------------------------------------------------------------------------- +%.s %.h: %.png %.grit +#--------------------------------------------------------------------------------- + grit $< -fts -o$* + +#--------------------------------------------------------------------------------- +# Convert non-GRF game icon to GRF if needed +#--------------------------------------------------------------------------------- +$(GAME_ICON): $(notdir $(ICON)) +#--------------------------------------------------------------------------------- + @echo convert $(notdir $<) + @grit $< -g -gt -gB4 -gT FF00FF -m! -p -pe 16 -fh! -ftr + +-include $(DEPSDIR)/*.d + +#--------------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------------- diff --git a/examples/multiple_animations/assets.sh b/examples/multiple_animations/assets.sh new file mode 100644 index 0000000..baeecb1 --- /dev/null +++ b/examples/multiple_animations/assets.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +TOOLS=../../tools +ROBOT=../../models/robot + +python3 $TOOLS/md5_to_dsma.py \ + --model $ROBOT/Robot.md5mesh \ + --name robot \ + --output data \ + --texture 128 128 \ + --anim $ROBOT/Bow.md5anim $ROBOT/Walk.md5anim $ROBOT/Wave.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix \ + --export-base-pose diff --git a/examples/multiple_animations/screenshot.png b/examples/multiple_animations/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..63e4b6289162e878c90ac3a3d87da636fc94bac9 GIT binary patch literal 22027 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 E0XW|N_5c6? literal 0 HcmV?d00001 diff --git a/examples/multiple_animations/source/dsma b/examples/multiple_animations/source/dsma new file mode 120000 index 0000000..ba40d2f --- /dev/null +++ b/examples/multiple_animations/source/dsma @@ -0,0 +1 @@ +../../../library \ No newline at end of file diff --git a/examples/multiple_animations/source/main.c b/examples/multiple_animations/source/main.c new file mode 100644 index 0000000..bc439df --- /dev/null +++ b/examples/multiple_animations/source/main.c @@ -0,0 +1,234 @@ +#include + +#include + +#include "dsma/dsma.h" + +// Animated models +#include "robot_dsm_bin.h" + +// Animations +#include "robot_dsa_bin.h" +#include "robot_bow_dsa_bin.h" +#include "robot_walk_dsa_bin.h" +#include "robot_wave_dsa_bin.h" + +// Textures +#include "texture128_bin.h" + +// Static models +#include "ball_bin.h" + +void setup_video(void) +{ + videoSetMode(MODE_0_3D); + + vramSetBankA(VRAM_A_TEXTURE); + + consoleDemoInit(); + + glInit(); + + glEnable(GL_ANTIALIAS); + glEnable(GL_TEXTURE_2D); + + // Setup the rear plane + glClearColor(2, 2, 2, 31); // BG must be opaque for AA to work + glClearPolyID(63); // BG must have a unique polygon ID for AA to work + glClearDepth(0x7FFF); + + glViewport(0, 0, 255, 191); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(70, 256.0 / 192.0, 0.1, 40); + + glLight(0, RGB15(0, 31, 0), 0, floattov10(0.8), floattov10(-0.2)); + glLight(1, RGB15(31, 0, 0), 0, floattov10(-0.8), floattov10(-0.2)); + glLight(2, RGB15(31, 31, 0), floattov10(0.7), 0, floattov10(-0.7)); + glLight(3, RGB15(0, 0, 31), floattov10(-0.7), 0, floattov10(-0.7)); + + glMaterialf(GL_AMBIENT, RGB15(0, 0, 0)); + glMaterialf(GL_DIFFUSE, RGB15(31, 31, 31)); + glMaterialf(GL_SPECULAR, BIT(15) | RGB15(0, 0, 0)); + glMaterialf(GL_EMISSION, RGB15(0, 0, 0)); + glMaterialShinyness(); + + glMatrixMode(GL_MODELVIEW); + //glMatrixMode(GL_POSITION); // This rotates lights with the model +} + +int main(void) +{ + float rotateY = 0.0; + float rotateZ = 0.0; + + setup_video(); + + int textureID; + glGenTextures(1, &textureID); + glBindTexture(0, textureID); + glTexImage2D(0, 0, GL_RGB, TEXTURE_SIZE_128, TEXTURE_SIZE_128, 0, + TEXGEN_TEXCOORD, (u8*)texture128_bin); + + const void *animations[] = { + robot_wave_dsa_bin, + robot_bow_dsa_bin, + robot_walk_dsa_bin, + robot_dsa_bin, + }; + const char *names[] = { + "Wave ", + "Bow ", + "Walk ", + "Base Pose" + }; + const size_t num_animations = sizeof(animations) / sizeof(animations[0]); + int curr_animation = 0; + + const void *dsa_file = NULL; + const void *dsm_file = robot_dsm_bin; + + int32_t frame = 0; + + printf("\x1b[0;0HSwitch animation: X/Y"); + printf("\x1b[1;0HAnimate model: L/R"); + printf("\x1b[2;0HRotate model: Direction pad"); + printf("\x1b[3;0HExit demo: START"); + + while(1) + { + dsa_file = animations[curr_animation]; + uint32_t num_frames = DSMA_GetNumFrames(dsa_file); + + printf("\x1b[10;0HAnimation: %s ", names[curr_animation]); + printf("\x1b[11;0HCurrent frame: %.2f ", f32tofloat(frame)); + + glLoadIdentity(); + + gluLookAt(8.0, 3.0, 0.0, // camera possition + 0.0, 3.0, 0.0, // look at + 0.0, 1.0, 0.0); // up + + glPushMatrix(); + { + glRotateY(rotateY); + glRotateZ(rotateZ); + + glBindTexture(0, textureID); + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_BACK | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); + + cpuStartTiming(0); + + DSMA_DrawModel(dsm_file, dsa_file, frame); + + uint32_t end_time = cpuEndTiming(); + + const float us_per_frame = 1000000.0 / 60.0; + printf("\x1b[19;0HTime Ticks us CPU%%"); + printf("\x1b[20;0HTotal: %6lu %4lu %.3f%% ", + end_time, timerTicks2usec(end_time), + 100.0 * timerTicks2usec(end_time) / us_per_frame); + + // Wait for geometry engine operations to end + while (GFX_STATUS & BIT(27)); + + printf("\x1b[23;0HPolys: %4d Vertices: %4d", + GFX_POLYGON_RAM_USAGE, GFX_VERTEX_RAM_USAGE); + + // Draw axes of coordinates of the model + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_NONE); + + glBindTexture(0, 0); + + glColor3f(1, 0, 0); + glVertex3f(0, 0.2, 0); + glVertex3f(0., -0.2, 0); + glVertex3f(5, 0, 0); + glVertex3f(0, 0, 0.2); + glVertex3f(0., 0, -0.2); + glVertex3f(5, 0, 0); + + glColor3f(0, 1, 0); + glVertex3f(0, 0, 0.2); + glVertex3f(0, 0, -0.2); + glVertex3f(0, 5, 0); + glVertex3f(0.2, 0, 0); + glVertex3f(-0.2, 0, 0); + glVertex3f(0, 5, 0); + + glColor3f(0, 0, 1); + glVertex3f(0.2, 0, 0); + glVertex3f(-0.2, 0, 0); + glVertex3f(0, 0, 5); + glVertex3f(0, 0.2, 0); + glVertex3f(0, -0.2, 0); + glVertex3f(0, 0, 5); + } + glPopMatrix(1); + + // Draw a ball to use as reference for the lights + glPushMatrix(); + { + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_BACK | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); + + glTranslatef(0, 3, 5); + glCallList((uint32_t *)ball_bin); + } + glPopMatrix(1); + + scanKeys(); + u16 keys_held = keysHeld(); + u16 keys_down = keysDown(); + + if (keys_down & KEY_X) + { + curr_animation++; + if (curr_animation >= num_animations) + curr_animation = 0; + frame = 0; + } + if (keys_down & KEY_Y) + { + curr_animation--; + if (curr_animation < 0) + curr_animation = num_animations - 1; + frame = 0; + } + + if (keys_held & KEY_UP) + rotateZ += 3; + if (keys_held & KEY_DOWN) + rotateZ -= 3; + if (keys_held & KEY_LEFT) + rotateY -= 3; + if (keys_held & KEY_RIGHT) + rotateY += 3; + + if (keys_held & KEY_R) + { + frame += 1 << 9; + if (frame >= (num_frames << 12)) + frame -= num_frames << 12; + } + if (keys_held & KEY_L) + { + frame -= 1 << 9; + if (frame < 0) + frame += num_frames << 12; + } + + glFlush(0); + + swiWaitForVBlank(); + + if (keys_held & KEY_START) + break; + } + + return 0; +} diff --git a/examples/performance/Makefile b/examples/performance/Makefile new file mode 100644 index 0000000..98f6233 --- /dev/null +++ b/examples/performance/Makefile @@ -0,0 +1,220 @@ +#--------------------------------------------------------------------------------- +.SUFFIXES: +#--------------------------------------------------------------------------------- + +ifeq ($(strip $(DEVKITARM)),) +$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") +endif + +include $(DEVKITARM)/ds_rules + +#--------------------------------------------------------------------------------- +# TARGET is the name of the output +# BUILD is the directory where object files & intermediate files will be placed +# SOURCES is a list of directories containing source code +# INCLUDES is a list of directories containing extra header files +# DATA is a list of directories containing binary files embedded using bin2o +# GRAPHICS is a list of directories containing image files to be converted with grit +# AUDIO is a list of directories containing audio to be converted by maxmod +# ICON is the image used to create the game icon, leave blank to use default rule +# NITRO is a directory that will be accessible via NitroFS +#--------------------------------------------------------------------------------- +TARGET := $(shell basename $(CURDIR)) +BUILD := build +SOURCES := source source/dsma +INCLUDES := include +DATA := data +GRAPHICS := +AUDIO := +ICON := + +# specify a directory which contains the nitro filesystem +# this is relative to the Makefile +NITRO := + +# These set the information text in the nds file +GAME_TITLE := DSMA Example +GAME_SUBTITLE1 := built with devkitARM +GAME_SUBTITLE2 := http://devitpro.org + +#--------------------------------------------------------------------------------- +# options for code generation +#--------------------------------------------------------------------------------- +ARCH := -marm -mthumb-interwork -march=armv5te -mtune=arm946e-s + +CFLAGS := -g -Wall -O3\ + $(ARCH) $(INCLUDE) -DARM9 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions +ASFLAGS := -g $(ARCH) +LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) + +#--------------------------------------------------------------------------------- +# any extra libraries we wish to link with the project (order is important) +#--------------------------------------------------------------------------------- +LIBS := -lnds9 + +# automatigically add libraries for NitroFS +ifneq ($(strip $(NITRO)),) +LIBS := -lfilesystem -lfat $(LIBS) +endif +# automagically add maxmod library +ifneq ($(strip $(AUDIO)),) +LIBS := -lmm9 $(LIBS) +endif + +#--------------------------------------------------------------------------------- +# list of directories containing libraries, this must be the top level containing +# include and lib +#--------------------------------------------------------------------------------- +LIBDIRS := $(LIBNDS) $(PORTLIBS) + +#--------------------------------------------------------------------------------- +# no real need to edit anything past this point unless you need to add additional +# rules for different file extensions +#--------------------------------------------------------------------------------- +ifneq ($(BUILD),$(notdir $(CURDIR))) +#--------------------------------------------------------------------------------- + +export OUTPUT := $(CURDIR)/$(TARGET) + +export VPATH := $(CURDIR)/$(subst /,,$(dir $(ICON)))\ + $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))\ + $(foreach dir,$(DATA),$(CURDIR)/$(dir))\ + $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) + +export DEPSDIR := $(CURDIR)/$(BUILD) + +CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) +CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) +SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) +PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png))) +BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) + +# prepare NitroFS directory +ifneq ($(strip $(NITRO)),) + export NITRO_FILES := $(CURDIR)/$(NITRO) +endif + +# get audio list for maxmod +ifneq ($(strip $(AUDIO)),) + export MODFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir)) + + # place the soundbank file in NitroFS if using it + ifneq ($(strip $(NITRO)),) + export SOUNDBANK := $(NITRO_FILES)/soundbank.bin + + # otherwise, needs to be loaded from memory + else + export SOUNDBANK := soundbank.bin + BINFILES += $(SOUNDBANK) + endif +endif + +#--------------------------------------------------------------------------------- +# use CXX for linking C++ projects, CC for standard C +#--------------------------------------------------------------------------------- +ifeq ($(strip $(CPPFILES)),) +#--------------------------------------------------------------------------------- + export LD := $(CC) +#--------------------------------------------------------------------------------- +else +#--------------------------------------------------------------------------------- + export LD := $(CXX) +#--------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------- + +export OFILES_BIN := $(addsuffix .o,$(BINFILES)) + +export OFILES_SOURCES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o) + +export OFILES := $(PNGFILES:.png=.o) $(OFILES_BIN) $(OFILES_SOURCES) + +export HFILES := $(PNGFILES:.png=.h) $(addsuffix .h,$(subst .,_,$(BINFILES))) + +export INCLUDE := $(foreach dir,$(INCLUDES),-iquote $(CURDIR)/$(dir))\ + $(foreach dir,$(LIBDIRS),-I$(dir)/include)\ + -I$(CURDIR)/$(BUILD) +export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) + +ifeq ($(strip $(ICON)),) + icons := $(wildcard *.bmp) + + ifneq (,$(findstring $(TARGET).bmp,$(icons))) + export GAME_ICON := $(CURDIR)/$(TARGET).bmp + else + ifneq (,$(findstring icon.bmp,$(icons))) + export GAME_ICON := $(CURDIR)/icon.bmp + endif + endif +else + ifeq ($(suffix $(ICON)), .grf) + export GAME_ICON := $(CURDIR)/$(ICON) + else + export GAME_ICON := $(CURDIR)/$(BUILD)/$(notdir $(basename $(ICON))).grf + endif +endif + +.PHONY: $(BUILD) clean + +#--------------------------------------------------------------------------------- +$(BUILD): + @mkdir -p $@ + @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile + +#--------------------------------------------------------------------------------- +clean: + @echo clean ... + @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +else + +#--------------------------------------------------------------------------------- +# main targets +#--------------------------------------------------------------------------------- +$(OUTPUT).nds: $(OUTPUT).elf $(GAME_ICON) +$(OUTPUT).elf: $(OFILES) + +# source files depend on generated headers +$(OFILES_SOURCES) : $(HFILES) + +# need to build soundbank first +$(OFILES): $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +# rule to build solution from music files +#--------------------------------------------------------------------------------- +$(SOUNDBANK) : $(MODFILES) +#--------------------------------------------------------------------------------- + mmutil $^ -d -o$@ -hsoundbank.h + +#--------------------------------------------------------------------------------- +%.bin.o %_bin.h : %.bin +#--------------------------------------------------------------------------------- + @echo $(notdir $<) + @$(bin2o) + +#--------------------------------------------------------------------------------- +# This rule creates assembly source files using grit +# grit takes an image file and a .grit describing how the file is to be processed +# add additional rules like this for each image extension +# you use in the graphics folders +#--------------------------------------------------------------------------------- +%.s %.h: %.png %.grit +#--------------------------------------------------------------------------------- + grit $< -fts -o$* + +#--------------------------------------------------------------------------------- +# Convert non-GRF game icon to GRF if needed +#--------------------------------------------------------------------------------- +$(GAME_ICON): $(notdir $(ICON)) +#--------------------------------------------------------------------------------- + @echo convert $(notdir $<) + @grit $< -g -gt -gB4 -gT FF00FF -m! -p -pe 16 -fh! -ftr + +-include $(DEPSDIR)/*.d + +#--------------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------------- diff --git a/examples/performance/assets.sh b/examples/performance/assets.sh new file mode 100644 index 0000000..c5992e8 --- /dev/null +++ b/examples/performance/assets.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +TOOLS=../../tools +QUAD=../../models/one_quad +ROBOT=../../models/robot + +python3 $TOOLS/md5_to_dsma.py \ + --model $QUAD/Quad.md5mesh \ + --name one_quad \ + --output data \ + --texture 128 128 \ + --anim $QUAD/Wiggle.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix + +python3 $TOOLS/md5_to_dsma.py \ + --model $ROBOT/Robot.md5mesh \ + --name robot \ + --output data \ + --texture 128 128 \ + --anim $ROBOT/Walk.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix diff --git a/examples/performance/screenshot.png b/examples/performance/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..b89a87e708717e48c6b0635f0d37ab56b3d98516 GIT binary patch literal 26900 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 literal 0 HcmV?d00001 diff --git a/examples/performance/source/dsma b/examples/performance/source/dsma new file mode 120000 index 0000000..ba40d2f --- /dev/null +++ b/examples/performance/source/dsma @@ -0,0 +1 @@ +../../../library \ No newline at end of file diff --git a/examples/performance/source/main.c b/examples/performance/source/main.c new file mode 100644 index 0000000..cc8a0f3 --- /dev/null +++ b/examples/performance/source/main.c @@ -0,0 +1,171 @@ +#include + +#include + +#include "dsma/dsma.h" + +// Animated models +#include "one_quad_dsm_bin.h" +#include "robot_dsm_bin.h" + +// Animations +#include "one_quad_wiggle_dsa_bin.h" +#include "robot_walk_dsa_bin.h" + +// Textures +#include "texture128_bin.h" + +void setup_video(void) +{ + videoSetMode(MODE_0_3D); + + vramSetBankA(VRAM_A_TEXTURE); + + consoleDemoInit(); + + glInit(); + + glEnable(GL_ANTIALIAS); + glEnable(GL_TEXTURE_2D); + + // Setup the rear plane + glClearColor(2, 2, 2, 31); // BG must be opaque for AA to work + glClearPolyID(63); // BG must have a unique polygon ID for AA to work + glClearDepth(0x7FFF); + + glViewport(0, 0, 255, 191); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(70, 256.0 / 192.0, 0.1, 40); + + glLight(0, RGB15(0, 31, 0), 0, floattov10(0.8), floattov10(-0.2)); + glLight(1, RGB15(31, 0, 0), 0, floattov10(-0.8), floattov10(-0.2)); + glLight(2, RGB15(31, 31, 0), floattov10(0.7), 0, floattov10(-0.7)); + glLight(3, RGB15(0, 0, 31), floattov10(-0.7), 0, floattov10(-0.7)); + + glMaterialf(GL_AMBIENT, RGB15(0, 0, 0)); + glMaterialf(GL_DIFFUSE, RGB15(31, 31, 31)); + glMaterialf(GL_SPECULAR, BIT(15) | RGB15(0, 0, 0)); + glMaterialf(GL_EMISSION, RGB15(0, 0, 0)); + glMaterialShinyness(); + + glMatrixMode(GL_MODELVIEW); + //glMatrixMode(GL_POSITION); // This rotates lights with the model + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_NONE | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); +} + +int main(void) +{ + setup_video(); + + int textureID; + glGenTextures(1, &textureID); + glBindTexture(0, textureID); + glTexImage2D(0, 0, GL_RGB, TEXTURE_SIZE_128, TEXTURE_SIZE_128, 0, + TEXGEN_TEXCOORD, (u8*)texture128_bin); + + const void *robot_dsa_file = robot_walk_dsa_bin; + const void *robot_dsm_file = robot_dsm_bin; + const uint32_t robot_num_frames = DSMA_GetNumFrames(robot_dsa_file); + int32_t robot_frame = 0; + + const void *quad_dsa_file = one_quad_wiggle_dsa_bin; + const void *quad_dsm_file = one_quad_dsm_bin; + const uint32_t quad_num_frames = DSMA_GetNumFrames(quad_dsa_file); + int32_t quad_frame = 0; + + iprintf("\x1b[0;0HExit demo: START"); + + iprintf("\x1b[4;0H" + "This sample shows two models\n" + "side by side.\n" + "\n" + "The robot has aprox. 550 polys\n" + "and 16 bones. It's an example\n" + "of a regular model\n." + "\n" + "The quad has 2 polys and 7\n" + "bones. It's an example of how\n" + "much CPU time the skeleton\n" + "calculations take.\n"); + + iprintf("\x1b[19;0HTime Ticks us CPU%%"); + + while(1) + { + glLoadIdentity(); + + gluLookAt(8.0, 3.0, 0.0, // camera possition + 0.0, 3.0, 0.0, // look at + 0.0, 1.0, 0.0); // up + + glPushMatrix(); + { + glTranslatef(0, 0, -3); + + glBindTexture(0, textureID); + + cpuStartTiming(0); + + DSMA_DrawModel(robot_dsm_file, robot_dsa_file, robot_frame); + + uint32_t end_time = cpuEndTiming(); + + const float us_per_frame = 1000000.0 / 60.0; + printf("\x1b[20;0HRobot: %6lu %4lu %.3f%% ", + end_time, timerTicks2usec(end_time), + 100.0 * timerTicks2usec(end_time) / us_per_frame); + } + glPopMatrix(1); + + glPushMatrix(); + { + glTranslatef(0, 0, 3); + glRotateY(-90); + + glBindTexture(0, 0); + + cpuStartTiming(0); + + DSMA_DrawModel(quad_dsm_file, quad_dsa_file, quad_frame); + + uint32_t end_time = cpuEndTiming(); + + const float us_per_frame = 1000000.0 / 60.0; + printf("\x1b[21;0HQuad: %6lu %4lu %.3f%% ", + end_time, timerTicks2usec(end_time), + 100.0 * timerTicks2usec(end_time) / us_per_frame); + } + glPopMatrix(1); + + + // Wait for geometry engine operations to end + while (GFX_STATUS & BIT(27)); + + printf("\x1b[23;0HPolys: %4d Vertices: %4d", + GFX_POLYGON_RAM_USAGE, GFX_VERTEX_RAM_USAGE); + + scanKeys(); + u16 keys_held = keysHeld(); + + robot_frame += 1 << 9; + if (robot_frame >= inttof32(robot_num_frames)) + robot_frame -= inttof32(robot_num_frames); + + quad_frame += 1 << 9; + if (quad_frame >= inttof32(quad_num_frames)) + quad_frame -= inttof32(quad_num_frames); + + glFlush(0); + + swiWaitForVBlank(); + + if (keys_held & KEY_START) + break; + } + + return 0; +} diff --git a/examples/stress_test/Makefile b/examples/stress_test/Makefile new file mode 100644 index 0000000..98f6233 --- /dev/null +++ b/examples/stress_test/Makefile @@ -0,0 +1,220 @@ +#--------------------------------------------------------------------------------- +.SUFFIXES: +#--------------------------------------------------------------------------------- + +ifeq ($(strip $(DEVKITARM)),) +$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") +endif + +include $(DEVKITARM)/ds_rules + +#--------------------------------------------------------------------------------- +# TARGET is the name of the output +# BUILD is the directory where object files & intermediate files will be placed +# SOURCES is a list of directories containing source code +# INCLUDES is a list of directories containing extra header files +# DATA is a list of directories containing binary files embedded using bin2o +# GRAPHICS is a list of directories containing image files to be converted with grit +# AUDIO is a list of directories containing audio to be converted by maxmod +# ICON is the image used to create the game icon, leave blank to use default rule +# NITRO is a directory that will be accessible via NitroFS +#--------------------------------------------------------------------------------- +TARGET := $(shell basename $(CURDIR)) +BUILD := build +SOURCES := source source/dsma +INCLUDES := include +DATA := data +GRAPHICS := +AUDIO := +ICON := + +# specify a directory which contains the nitro filesystem +# this is relative to the Makefile +NITRO := + +# These set the information text in the nds file +GAME_TITLE := DSMA Example +GAME_SUBTITLE1 := built with devkitARM +GAME_SUBTITLE2 := http://devitpro.org + +#--------------------------------------------------------------------------------- +# options for code generation +#--------------------------------------------------------------------------------- +ARCH := -marm -mthumb-interwork -march=armv5te -mtune=arm946e-s + +CFLAGS := -g -Wall -O3\ + $(ARCH) $(INCLUDE) -DARM9 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions +ASFLAGS := -g $(ARCH) +LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) + +#--------------------------------------------------------------------------------- +# any extra libraries we wish to link with the project (order is important) +#--------------------------------------------------------------------------------- +LIBS := -lnds9 + +# automatigically add libraries for NitroFS +ifneq ($(strip $(NITRO)),) +LIBS := -lfilesystem -lfat $(LIBS) +endif +# automagically add maxmod library +ifneq ($(strip $(AUDIO)),) +LIBS := -lmm9 $(LIBS) +endif + +#--------------------------------------------------------------------------------- +# list of directories containing libraries, this must be the top level containing +# include and lib +#--------------------------------------------------------------------------------- +LIBDIRS := $(LIBNDS) $(PORTLIBS) + +#--------------------------------------------------------------------------------- +# no real need to edit anything past this point unless you need to add additional +# rules for different file extensions +#--------------------------------------------------------------------------------- +ifneq ($(BUILD),$(notdir $(CURDIR))) +#--------------------------------------------------------------------------------- + +export OUTPUT := $(CURDIR)/$(TARGET) + +export VPATH := $(CURDIR)/$(subst /,,$(dir $(ICON)))\ + $(foreach dir,$(SOURCES),$(CURDIR)/$(dir))\ + $(foreach dir,$(DATA),$(CURDIR)/$(dir))\ + $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir)) + +export DEPSDIR := $(CURDIR)/$(BUILD) + +CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) +CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) +SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) +PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png))) +BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) + +# prepare NitroFS directory +ifneq ($(strip $(NITRO)),) + export NITRO_FILES := $(CURDIR)/$(NITRO) +endif + +# get audio list for maxmod +ifneq ($(strip $(AUDIO)),) + export MODFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir)) + + # place the soundbank file in NitroFS if using it + ifneq ($(strip $(NITRO)),) + export SOUNDBANK := $(NITRO_FILES)/soundbank.bin + + # otherwise, needs to be loaded from memory + else + export SOUNDBANK := soundbank.bin + BINFILES += $(SOUNDBANK) + endif +endif + +#--------------------------------------------------------------------------------- +# use CXX for linking C++ projects, CC for standard C +#--------------------------------------------------------------------------------- +ifeq ($(strip $(CPPFILES)),) +#--------------------------------------------------------------------------------- + export LD := $(CC) +#--------------------------------------------------------------------------------- +else +#--------------------------------------------------------------------------------- + export LD := $(CXX) +#--------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------- + +export OFILES_BIN := $(addsuffix .o,$(BINFILES)) + +export OFILES_SOURCES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o) + +export OFILES := $(PNGFILES:.png=.o) $(OFILES_BIN) $(OFILES_SOURCES) + +export HFILES := $(PNGFILES:.png=.h) $(addsuffix .h,$(subst .,_,$(BINFILES))) + +export INCLUDE := $(foreach dir,$(INCLUDES),-iquote $(CURDIR)/$(dir))\ + $(foreach dir,$(LIBDIRS),-I$(dir)/include)\ + -I$(CURDIR)/$(BUILD) +export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) + +ifeq ($(strip $(ICON)),) + icons := $(wildcard *.bmp) + + ifneq (,$(findstring $(TARGET).bmp,$(icons))) + export GAME_ICON := $(CURDIR)/$(TARGET).bmp + else + ifneq (,$(findstring icon.bmp,$(icons))) + export GAME_ICON := $(CURDIR)/icon.bmp + endif + endif +else + ifeq ($(suffix $(ICON)), .grf) + export GAME_ICON := $(CURDIR)/$(ICON) + else + export GAME_ICON := $(CURDIR)/$(BUILD)/$(notdir $(basename $(ICON))).grf + endif +endif + +.PHONY: $(BUILD) clean + +#--------------------------------------------------------------------------------- +$(BUILD): + @mkdir -p $@ + @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile + +#--------------------------------------------------------------------------------- +clean: + @echo clean ... + @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +else + +#--------------------------------------------------------------------------------- +# main targets +#--------------------------------------------------------------------------------- +$(OUTPUT).nds: $(OUTPUT).elf $(GAME_ICON) +$(OUTPUT).elf: $(OFILES) + +# source files depend on generated headers +$(OFILES_SOURCES) : $(HFILES) + +# need to build soundbank first +$(OFILES): $(SOUNDBANK) + +#--------------------------------------------------------------------------------- +# rule to build solution from music files +#--------------------------------------------------------------------------------- +$(SOUNDBANK) : $(MODFILES) +#--------------------------------------------------------------------------------- + mmutil $^ -d -o$@ -hsoundbank.h + +#--------------------------------------------------------------------------------- +%.bin.o %_bin.h : %.bin +#--------------------------------------------------------------------------------- + @echo $(notdir $<) + @$(bin2o) + +#--------------------------------------------------------------------------------- +# This rule creates assembly source files using grit +# grit takes an image file and a .grit describing how the file is to be processed +# add additional rules like this for each image extension +# you use in the graphics folders +#--------------------------------------------------------------------------------- +%.s %.h: %.png %.grit +#--------------------------------------------------------------------------------- + grit $< -fts -o$* + +#--------------------------------------------------------------------------------- +# Convert non-GRF game icon to GRF if needed +#--------------------------------------------------------------------------------- +$(GAME_ICON): $(notdir $(ICON)) +#--------------------------------------------------------------------------------- + @echo convert $(notdir $<) + @grit $< -g -gt -gB4 -gT FF00FF -m! -p -pe 16 -fh! -ftr + +-include $(DEPSDIR)/*.d + +#--------------------------------------------------------------------------------------- +endif +#--------------------------------------------------------------------------------------- diff --git a/examples/stress_test/assets.sh b/examples/stress_test/assets.sh new file mode 100644 index 0000000..9a6cce4 --- /dev/null +++ b/examples/stress_test/assets.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +TOOLS=../../tools +QUAD=../../models/one_quad +ROBOT=../../models/robot +WIGGLE=../../models/wiggle + +python3 $TOOLS/md5_to_dsma.py \ + --model $QUAD/Quad.md5mesh \ + --name one_quad \ + --output data \ + --texture 128 128 \ + --anim $QUAD/Wiggle.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix + +python3 $TOOLS/md5_to_dsma.py \ + --model $ROBOT/Robot.md5mesh \ + --name robot \ + --output data \ + --texture 128 128 \ + --anim $ROBOT/Bow.md5anim $ROBOT/Walk.md5anim $ROBOT/Wave.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix + +python3 $TOOLS/md5_to_dsma.py \ + --model $WIGGLE/Wiggle.md5mesh \ + --name wiggle \ + --output data \ + --texture 128 128 \ + --anim $WIGGLE/Shake.md5anim \ + --skip-frames 1 \ + --bin \ + --blender-fix diff --git a/examples/stress_test/screenshot.png b/examples/stress_test/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..a52d9635a2eebb87c958d054403b847368fdc705 GIT binary patch literal 45411 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 literal 0 HcmV?d00001 diff --git a/examples/stress_test/source/dsma b/examples/stress_test/source/dsma new file mode 120000 index 0000000..ba40d2f --- /dev/null +++ b/examples/stress_test/source/dsma @@ -0,0 +1 @@ +../../../library \ No newline at end of file diff --git a/examples/stress_test/source/main.c b/examples/stress_test/source/main.c new file mode 100644 index 0000000..25983a6 --- /dev/null +++ b/examples/stress_test/source/main.c @@ -0,0 +1,243 @@ +#include + +#include + +#include "dsma/dsma.h" + +// Animated models +#include "one_quad_dsm_bin.h" +#include "robot_dsm_bin.h" +#include "wiggle_dsm_bin.h" + +// Animations +#include "one_quad_wiggle_dsa_bin.h" +#include "robot_bow_dsa_bin.h" +#include "robot_walk_dsa_bin.h" +#include "robot_wave_dsa_bin.h" +#include "wiggle_shake_dsa_bin.h" + +// Textures +#include "texture128_bin.h" + +void setup_video(void) +{ + videoSetMode(MODE_0_3D); + + vramSetBankA(VRAM_A_TEXTURE); + + consoleDemoInit(); + + glInit(); + + glEnable(GL_ANTIALIAS); + glEnable(GL_TEXTURE_2D); + + // Setup the rear plane + glClearColor(2, 2, 2, 31); // BG must be opaque for AA to work + glClearPolyID(63); // BG must have a unique polygon ID for AA to work + glClearDepth(0x7FFF); + + glViewport(0, 0, 255, 191); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(90, 256.0 / 192.0, 0.1, 40); + + glLight(0, RGB15(0, 31, 0), 0, floattov10(0.8), floattov10(-0.2)); + glLight(1, RGB15(31, 0, 0), 0, floattov10(-0.8), floattov10(-0.2)); + glLight(2, RGB15(31, 31, 0), floattov10(0.7), 0, floattov10(-0.7)); + glLight(3, RGB15(0, 0, 31), floattov10(-0.7), 0, floattov10(-0.7)); + + glMaterialf(GL_AMBIENT, RGB15(0, 0, 0)); + glMaterialf(GL_DIFFUSE, RGB15(31, 31, 31)); + glMaterialf(GL_SPECULAR, BIT(15) | RGB15(0, 0, 0)); + glMaterialf(GL_EMISSION, RGB15(0, 0, 0)); + glMaterialShinyness(); + + glMatrixMode(GL_MODELVIEW); + //glMatrixMode(GL_POSITION); // This rotates lights with the model + + glPolyFmt(POLY_ALPHA(31) | POLY_CULL_BACK | POLY_FORMAT_LIGHT0 | + POLY_FORMAT_LIGHT1 | POLY_FORMAT_LIGHT2 | POLY_FORMAT_LIGHT3); +} + +#define NUM_ROBOTS 7 +#define NUM_QUADS 5 +#define NUM_WIGGLES 13 + +#define NUM_MODELS (NUM_ROBOTS + NUM_QUADS + NUM_WIGGLES) + +struct { + int32_t x, y, z; + uint32_t num_frames; + uint32_t curr_frame_interp; + uint32_t animation_speed; + int animation_index; +} model[NUM_MODELS]; + +const void *robot_dsa_file[] = { + robot_bow_dsa_bin, + robot_walk_dsa_bin, + robot_wave_dsa_bin +}; +const size_t robot_dsa_num = sizeof(robot_dsa_file) / sizeof(robot_dsa_file[0]); + +void initialize_models(void) +{ + for (int i = 0; i < NUM_MODELS; i++) + { + model[i].x = ((i % 5) * inttof32(5)) - inttof32(10); + model[i].y = 0; + model[i].z = ((i / 5) * inttof32(5)) - inttof32(10); + + model[i].curr_frame_interp = 0; + model[i].animation_speed = (((i * 7) % 10) + 8) << 6; + } + + int index = 0; + + for (int i = 0; i < NUM_ROBOTS; i++) + { + int anim_index = i % robot_dsa_num; + model[index].animation_index = anim_index; + model[index].num_frames = DSMA_GetNumFrames(robot_dsa_file[anim_index]); + index++; + } + for (int i = 0; i < NUM_QUADS; i++) + { + model[index].animation_index = 0; + model[index].num_frames = DSMA_GetNumFrames(one_quad_wiggle_dsa_bin); + index++; + } + for (int i = 0; i < NUM_WIGGLES; i++) + { + model[index].animation_index = 0; + model[index].num_frames = DSMA_GetNumFrames(wiggle_shake_dsa_bin); + index++; + } +} + +void draw_and_update_models(void) +{ + int index = 0; + + for (int i = 0; i < NUM_ROBOTS; i++) + { + const void *dsm = robot_dsm_bin; + const void *dsa = robot_dsa_file[model[index].animation_index]; + uint32_t frame = model[index].curr_frame_interp; + + glPushMatrix(); + + glTranslatef32(model[index].x, model[index].y, model[index].z); + DSMA_DrawModel(dsm, dsa, frame); + + glPopMatrix(1); + + index++; + } + for (int i = 0; i < NUM_QUADS; i++) + { + const void *dsm = one_quad_dsm_bin; + const void *dsa = one_quad_wiggle_dsa_bin; + uint32_t frame = model[index].curr_frame_interp; + + glPushMatrix(); + + glTranslatef32(model[index].x, model[index].y, model[index].z); + DSMA_DrawModel(dsm, dsa, frame); + + glPopMatrix(1); + + index++; + } + for (int i = 0; i < NUM_WIGGLES; i++) + { + const void *dsm = wiggle_dsm_bin; + const void *dsa = wiggle_shake_dsa_bin; + uint32_t frame = model[index].curr_frame_interp; + + glPushMatrix(); + + glTranslatef32(model[index].x, model[index].y, model[index].z); + DSMA_DrawModel(dsm, dsa, frame); + + glPopMatrix(1); + + index++; + } + + for (int i = 0; i < NUM_MODELS; i++) + { + model[i].curr_frame_interp += model[i].animation_speed; + if (model[i].curr_frame_interp >= inttof32(model[i].num_frames)) + model[i].curr_frame_interp -= inttof32(model[i].num_frames); + } +} + +int main(void) +{ + setup_video(); + + int textureID; + glGenTextures(1, &textureID); + glBindTexture(0, textureID); + glTexImage2D(0, 0, GL_RGB, TEXTURE_SIZE_128, TEXTURE_SIZE_128, 0, + TEXGEN_TEXCOORD, (u8*)texture128_bin); + + initialize_models(); + + iprintf("\x1b[0;0HRotate: Left/Right"); + iprintf("\x1b[1;0HExit demo: START"); + + iprintf("\x1b[19;0HTime Ticks us CPU%%"); + + float rotationY = 0.0f; + + while(1) + { + cpuStartTiming(0); + + glLoadIdentity(); + + gluLookAt(10.0, 6.0, 10.0, // camera possition + 0.0, -6.0, 0.0, // look at + 0.0, 1.0, 0.0); // up + + glBindTexture(0, textureID); + + glRotateY(rotationY); + + draw_and_update_models(); + + uint32_t end_time = cpuEndTiming(); + + const float us_per_frame = 1000000.0 / 60.0; + printf("\x1b[20;0H %6lu %4lu %.3f%% ", + end_time, timerTicks2usec(end_time), + 100.0 * timerTicks2usec(end_time) / us_per_frame); + + // Wait for geometry engine operations to end + while (GFX_STATUS & BIT(27)); + + printf("\x1b[23;0HPolys: %4d Vertices: %4d", + GFX_POLYGON_RAM_USAGE, GFX_VERTEX_RAM_USAGE); + + scanKeys(); + u16 keys_held = keysHeld(); + + if (keys_held & KEY_RIGHT) + rotationY += 3; + if (keys_held & KEY_LEFT) + rotationY -= 3; + + glFlush(0); + + swiWaitForVBlank(); + + if (keys_held & KEY_START) + break; + } + + return 0; +} diff --git a/library/dsma.c b/library/dsma.c new file mode 100644 index 0000000..950645d --- /dev/null +++ b/library/dsma.c @@ -0,0 +1,211 @@ +// SPDX-License-Identifier: MIT +// +// Copyright (c) 2022 Antonio Niño Díaz + +// DS Model Animation Library v0.1.0 + +#include + +#include "dsma.h" + +// Format of a joint in a DSA file. +typedef struct { + int32_t pos[3]; // Translation (x, y, z) + int32_t orient[4]; // Orientation (w, x, y, z) +} dsa_joint_t; + +#define DSA_VERSION_NUMBER 1 + +// Format of a DSA file. +typedef struct { + uint32_t version; // Version number + uint32_t num_frames; // Frames in the file + uint32_t num_joints; // Joints per frame + dsa_joint_t joints[0]; // Array of joints +} dsa_t; + +// Private functions +// ================= + +// Helper that multiplies two fixed point values in 20.12 format and multiplies +// the result again by 2. +ITCM_CODE ARM_CODE static inline +int32_t mulf32_by_2(int32_t a, int32_t b) +{ + return (a * b) >> (12 - 1); +} + +// Generates a 4x3 matrix from the orientation in the provided quaternion and +// the translation in the provided vector. Then, it multiplies the matrix that +// is currently active in the geometry engine by the generated matrix. +ITCM_CODE ARM_CODE static inline +void matrix_mult_by_joint(const int32_t *v, const int32_t *q) +{ + int32_t wx = mulf32_by_2(q[0], q[1]); + int32_t wy = mulf32_by_2(q[0], q[2]); + int32_t wz = mulf32_by_2(q[0], q[3]); + int32_t x2 = mulf32_by_2(q[1], q[1]); + int32_t xy = mulf32_by_2(q[1], q[2]); + int32_t xz = mulf32_by_2(q[1], q[3]); + int32_t y2 = mulf32_by_2(q[2], q[2]); + int32_t yz = mulf32_by_2(q[2], q[3]); + int32_t z2 = mulf32_by_2(q[3], q[3]); + + MATRIX_MULT4x3 = inttof32(1) - y2 - z2; + MATRIX_MULT4x3 = xy + wz; + MATRIX_MULT4x3 = xz - wy; + + MATRIX_MULT4x3 = xy - wz; + MATRIX_MULT4x3 = inttof32(1) - x2 - z2; + MATRIX_MULT4x3 = yz + wx; + + MATRIX_MULT4x3 = xz + wy; + MATRIX_MULT4x3 = yz - wx; + MATRIX_MULT4x3 = inttof32(1) - x2 - y2; + + MATRIX_MULT4x3 = v[0]; + MATRIX_MULT4x3 = v[1]; + MATRIX_MULT4x3 = v[2]; +} + +// Gets a pointer to the list of joints of the specified frame. +ITCM_CODE ARM_CODE static inline +const dsa_joint_t *dsa_get_frame(const dsa_t *dsa, uint32_t frame) +{ + return &dsa->joints[frame * dsa->num_joints]; +} + +// Interpolates linearly between 'start' and 'end'. The position is a floating +// point number in 20.12 format, and it should be between 0.0 and 1.0 (the +// function doesn't check bounds). +ITCM_CODE ARM_CODE static inline +int32_t lerp(int32_t start, int32_t end, int32_t pos) +{ + int32_t diff = end - start; + return start + ((diff * pos) >> 12); +} + +// Interpolates between quaternions 'q1' and 'q2. The position is a floating +// point number in 20.12 format, and it should be between 0.0 and 1.0 (the +// function doesn't check bounds). It stores the result in 'qdest'. +ITCM_CODE ARM_CODE static inline +void q_nlerp(const int32_t *q1, const int32_t *q2, int32_t pos, int32_t *qdest) +{ + qdest[0] = lerp(q1[0], q2[0], pos); + qdest[1] = lerp(q1[1], q2[1], pos); + qdest[2] = lerp(q1[2], q2[2], pos); + qdest[3] = lerp(q1[3], q2[3], pos); + + // TODO: Normalize? It needs way too much CPU time (at least we need one + // square root and one division), but it may be needed in the future if the + // animations look bad. Maybe it can be optional. +} + +// Public functions +// ================ + +uint32_t DSMA_GetNumFrames(const void *dsa_file) +{ + const dsa_t *dsa = dsa_file; + return dsa->num_frames; +} + +ITCM_CODE ARM_CODE +int DSMA_DrawModel(const void *dsm_file, const void *dsa_file, uint32_t frame_interp) +{ + const dsa_t *dsa = dsa_file; + + if (dsa->version != DSA_VERSION_NUMBER) + return DSMA_INVALID_VERSION; + + uint32_t num_joints = dsa->num_joints; + uint32_t num_frames = dsa->num_frames; + + uint32_t frame = frame_interp >> 12; + uint32_t interp = frame_interp & 0xFFF; + + if (frame >= num_frames) + return DSMA_INVALID_FRAME; + + // Make sure that there is enough space in the matrix stack + // -------------------------------------------------------- + + uint32_t base_matrix = 30 - num_joints + 1; + + // Wait for matrix push/pop operations to end + while (GFX_STATUS & BIT(14)); + + uint32_t curr_stack_level = (GFX_STATUS >> 8) & 0x1F; + if (curr_stack_level >= base_matrix) + return DSMA_MATRIX_STACK_FULL; + + MATRIX_PUSH = 0; + + // Generate matrices with bone transformations + // ------------------------------------------- + + if (interp != 0) + { + uint32_t next_frame = frame + 1; + if (next_frame == num_frames) + next_frame = 0; + + const dsa_joint_t *frame_ptr_1 = dsa_get_frame(dsa, frame); + const dsa_joint_t *frame_ptr_2 = dsa_get_frame(dsa, next_frame); + + for (uint32_t i = 0; i < num_joints; i++) + { + // Interpolate transformations + const int32_t *v_pos_1 = frame_ptr_1->pos; + const int32_t *q_orient_1 = frame_ptr_1->orient; + frame_ptr_1++; + + const int32_t *v_pos_2 = frame_ptr_2->pos; + const int32_t *q_orient_2 = frame_ptr_2->orient; + frame_ptr_2++; + + int32_t v_pos[3]; + v_pos[0] = lerp(v_pos_1[0], v_pos_2[0], interp); + v_pos[1] = lerp(v_pos_1[1], v_pos_2[1], interp); + v_pos[2] = lerp(v_pos_1[2], v_pos_2[2], interp); + + int32_t q_orient[4]; + q_nlerp(q_orient_1, q_orient_2, interp, &q_orient[0]); + + // Generate new matrix + MATRIX_RESTORE = curr_stack_level; + matrix_mult_by_joint(v_pos, q_orient); + + // Store it in the right position in the stack + MATRIX_STORE = base_matrix + i; + } + } + else + { + const dsa_joint_t *frame_ptr = dsa_get_frame(dsa, frame); + + for (uint32_t i = 0; i < num_joints; i++) + { + // Get transformation + const int32_t *v_pos = frame_ptr->pos; + const int32_t *q_orient = frame_ptr->orient; + frame_ptr++; + + // Generate new matrix + MATRIX_RESTORE = curr_stack_level; + matrix_mult_by_joint(v_pos, q_orient); + + // Store it in the right position in the stack + MATRIX_STORE = base_matrix + i; + } + } + + // Draw model + // ---------- + + glCallList((uint32_t *)dsm_file); + + MATRIX_POP = 1; + + return DSMA_SUCCESS; +} diff --git a/library/dsma.h b/library/dsma.h new file mode 100644 index 0000000..2166889 --- /dev/null +++ b/library/dsma.h @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: MIT +// +// Copyright (c) 2022 Antonio Niño Díaz + +// DS Model Animation Library v0.1.0 + +#ifndef DSMA_H__ +#define DSMA_H__ + +#include + +#ifndef ARM_CODE +# define ARM_CODE __attribute__((target("arm"))) +#endif + +// Returns the number of frames stored in the specified DSA file. +uint32_t DSMA_GetNumFrames(const void *dsa_file); + +// Draws the model in the DSM file animated with the data in the specified DSA +// file, at the requested frame. +// +// The frame is a fixed point value in 20.12 format (e.g. if you pass 3 << 12 as +// value it corresponds to frame 3). Any value that isn't an exact frame number +// will draw the model by interpolating the two closest frames. It wraps around: +// when going over the max frame, it interpolates with frame 0. +// +// It returns a DSMA_* code (0 for success). +ITCM_CODE ARM_CODE +int DSMA_DrawModel(const void *dsm_file, const void *dsa_file, uint32_t frame_interp); + +#define DSMA_SUCCESS 0 +#define DSMA_INVALID_VERSION -1 +#define DSMA_INVALID_FRAME -2 +#define DSMA_MATRIX_STACK_FULL -3 + +#endif // DSMA_H__ diff --git a/licenses/cc0-1.0.txt b/licenses/cc0-1.0.txt new file mode 100644 index 0000000..c64d6ae --- /dev/null +++ b/licenses/cc0-1.0.txt @@ -0,0 +1,125 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL +SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT +RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. +CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE +INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES +RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED +HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator and +subsequent owner(s) (each and all, an "owner") of an original work of authorship +and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for the +purpose of contributing to a commons of creative, cultural and scientific works +("Commons") that the public can reliably and without fear of later claims of +infringement build upon, modify, incorporate in other works, reuse and +redistribute as freely as possible in any form whatsoever and for any purposes, +including without limitation commercial purposes. These owners may contribute to +the Commons to promote the ideal of a free culture and the further production of +creative, cultural and scientific works, or to gain reputation or greater +distribution for their Work in part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any expectation of +additional consideration or compensation, the person associating CC0 with a Work +(the "Affirmer"), to the extent that he or she is an owner of Copyright and +Related Rights in the Work, voluntarily elects to apply CC0 to the Work and +publicly distribute the Work under its terms, with knowledge of his or her +Copyright and Related Rights in the Work and the meaning and intended legal +effect of CC0 on those rights. + + 1. Copyright and Related Rights. A Work made available under CC0 may be + protected by copyright and related or neighboring rights ("Copyright and + Related Rights"). Copyright and Related Rights include, but are not limited + to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + + ii. moral rights retained by the original author(s) and/or performer(s); + + iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + + v. rights protecting the extraction, dissemination, use and reuse of + data in a Work; + + vi. database rights (such as those arising under Directive 96/9/EC of + the European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation thereof, + including any amended or successor version of such directive); and + + vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + + 2. Waiver. To the greatest extent permitted by, but not in contravention of, + applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and + unconditionally waives, abandons, and surrenders all of Affirmer's Copyright + and Related Rights and associated claims and causes of action, whether now + known or unknown (including existing as well as future claims and causes of + action), in the Work (i) in all territories worldwide, (ii) for the maximum + duration provided by applicable law or treaty (including future time + extensions), (iii) in any current or future medium and for any number of + copies, and (iv) for any purpose whatsoever, including without limitation + commercial, advertising or promotional purposes (the "Waiver"). Affirmer + makes the Waiver for the benefit of each member of the public at large and + to the detriment of Affirmer's heirs and successors, fully intending that + such Waiver shall not be subject to revocation, rescission, cancellation, + termination, or any other legal or equitable action to disrupt the quiet + enjoyment of the Work by the public as contemplated by Affirmer's express + Statement of Purpose. + + 3. Public License Fallback. Should any part of the Waiver for any reason be + judged legally invalid or ineffective under applicable law, then the Waiver + shall be preserved to the maximum extent permitted taking into account + Affirmer's express Statement of Purpose. In addition, to the extent the + Waiver is so judged Affirmer hereby grants to each affected person a + royalty-free, non transferable, non sublicensable, non exclusive, + irrevocable and unconditional license to exercise Affirmer's Copyright and + Related Rights in the Work (i) in all territories worldwide, (ii) for the + maximum duration provided by applicable law or treaty (including future time + extensions), (iii) in any current or future medium and for any number of + copies, and (iv) for any purpose whatsoever, including without limitation + commercial, advertising or promotional purposes (the "License"). The License + shall be deemed effective as of the date CC0 was applied by Affirmer to the + Work. Should any part of the License for any reason be judged legally + invalid or ineffective under applicable law, such partial invalidity or + ineffectiveness shall not invalidate the remainder of the License, and in + such case Affirmer hereby affirms that he or she will not (i) exercise any + of his or her remaining Copyright and Related Rights in the Work or (ii) + assert any associated claims and causes of action with respect to the Work, + in either case contrary to Affirmer's express Statement of Purpose. + + 4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, statutory + or otherwise, including without limitation warranties of title, + merchantability, fitness for a particular purpose, non infringement, or + the absence of latent or other defects, accuracy, or the present or + absence of errors, whether or not discoverable, all to the greatest + extent permissible under applicable law. + + c. Affirmer disclaims responsibility for clearing rights of other + persons that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the Work. + + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/licenses/mit.txt b/licenses/mit.txt new file mode 100644 index 0000000..f48fd37 --- /dev/null +++ b/licenses/mit.txt @@ -0,0 +1,19 @@ +Copyright (c) 2011-2015, 2019-2020 Antonio Niño Díaz + +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. diff --git a/models/one_quad/Quad.md5mesh b/models/one_quad/Quad.md5mesh new file mode 100644 index 0000000..dc69740 --- /dev/null +++ b/models/one_quad/Quad.md5mesh @@ -0,0 +1,33 @@ +MD5Version 10 // Parameters used during export: Reorient: False; Scale: 1.0 +commandline "" + +numJoints 7 +numMeshes 1 + +joints { + "Base.Bone" -1 ( 0.0000000000 0.0000000000 -1.0000000000 ) ( -0.7071068287 -0.0000000000 -0.0000000000 ) + "Low.Bone" 0 ( -0.0000000000 0.0000000000 0.0000000000 ) ( -0.7071068287 0.0000000000 0.0000000000 ) + "Low.Bone.002" 1 ( -0.0000000000 -0.0000000000 0.6666666269 ) ( -0.7071068287 -0.0000000000 0.0000000000 ) + "Low.Bone.001" 2 ( -0.0000000000 -0.0000000000 1.3333332539 ) ( -0.7071068287 -0.0000000000 0.0000000000 ) + "Top.Bone" 3 ( -0.0000000000 -0.0000000000 2.0000000000 ) ( -0.7071068287 -0.0000000843 -0.0000000843 ) + "Top.Bone.002" 4 ( -0.0000000000 -0.0000000000 2.6666665077 ) ( -0.7071068287 -0.0000000843 -0.0000000843 ) + "Top.Bone.001" 5 ( -0.0000000000 -0.0000000000 3.3333332539 ) ( -0.7071068287 -0.0000000843 -0.0000000843 ) +} + +mesh { + shader "default" + numverts 4 + vert 0 ( 0.6666666269 1.0000000000 ) 0 1 + vert 1 ( 0.6666666269 0.6666667461 ) 1 1 + vert 2 ( 0.9999999404 1.0000000000 ) 2 1 + vert 3 ( 0.9999998808 0.6666666865 ) 3 1 + numtris 2 + tri 0 1 3 2 + tri 1 0 1 2 + numweights 4 + weight 0 6 1.0000000000 ( 1.0000002384 0.6666667461 -0.9999997616 ) + weight 1 6 1.0000000000 ( 0.9999997616 0.6666667461 1.0000002384 ) + weight 2 6 1.0000000000 ( -0.9999997616 0.6666667461 -1.0000002384 ) + weight 3 6 1.0000000000 ( -1.0000002384 0.6666667461 0.9999997616 ) +} + diff --git a/models/one_quad/Wiggle.md5anim b/models/one_quad/Wiggle.md5anim new file mode 100644 index 0000000..338f96e --- /dev/null +++ b/models/one_quad/Wiggle.md5anim @@ -0,0 +1,207 @@ +MD5Version 10 // Parameters used during export: Reorient: False; Scale: 1.0 +commandline "" + +numFrames 16 +numJoints 7 +frameRate 24 +numAnimatedComponents 42 + +hierarchy { + "Base.Bone" -1 63 0 // + "Low.Bone" 0 63 6 // + "Low.Bone.002" 1 63 12 // + "Low.Bone.001" 2 63 18 // + "Top.Bone" 3 63 24 // + "Top.Bone.002" 4 63 30 // + "Top.Bone.001" 5 63 36 // +} + +bounds { + ( -1.1738224030 1.0665168762 2.2167446613 ) ( 1.3852889538 2.3654732704 4.4517188072 ) + ( -1.1974251270 0.9135962725 2.3582348824 ) ( 1.3421490192 2.3425629139 4.4758663177 ) + ( -1.2280571461 0.5148179531 2.7303419113 ) ( 1.2294948101 2.2266480923 4.4956712723 ) + ( -1.2037864923 -0.0179642439 3.2294156551 ) ( 1.0817462206 1.9335290194 4.4223871231 ) + ( -1.1044335365 -0.5500087738 3.7133867741 ) ( 0.9496709108 1.4467972517 4.2173156738 ) + ( -1.1151463985 -1.1134409904 3.8469870090 ) ( 1.0218517780 1.0055301189 4.1374788284 ) + ( -1.1095138788 -1.5366383791 3.5425364971 ) ( 1.1327804327 0.5670977831 4.3192501068 ) + ( -1.0622029305 -1.8320026398 3.2503187656 ) ( 1.2254084349 0.1582469940 4.3907909393 ) + ( -1.0005173683 -2.0214548111 3.0114312172 ) ( 1.2896996737 -0.1706309319 4.3894791603 ) + ( -0.9492129683 -2.1238713264 2.8562550545 ) ( 1.3191082478 -0.3895092010 4.3587012291 ) + ( -0.9275929332 -2.1472666264 2.8063197136 ) ( 1.3080608845 -0.4809949398 4.3366413116 ) + ( -0.9528194070 -2.0453400612 2.9792265892 ) ( 1.2309739590 -0.3237236738 4.3440742493 ) + ( -0.9871699214 -1.7603619099 3.3522408009 ) ( 1.0910770893 0.0796232820 4.3227691650 ) + ( -1.0629014969 -1.4075473547 3.7247467041 ) ( 1.0157089233 0.6331740618 4.2060527802 ) + ( -1.1698390245 -1.0961670876 3.9306871891 ) ( 1.0420696735 1.1169285774 4.0655479431 ) + ( -1.2073229551 -0.9429736137 3.8068437576 ) ( 1.0583875179 1.2988523245 4.1755452156 ) +} + +baseframe { + ( 0.0000000000 0.0000000000 -1.0000000000 ) ( -0.7071068287 -0.0000000000 -0.0000000000 ) + ( 0.0000000000 1.0000000000 0.0000000000 ) ( -0.0000000000 0.0000000000 0.0000000000 ) + ( 0.0000000000 0.6666666269 -0.0000000000 ) ( 0.0000000000 -0.0000000000 0.0000000000 ) + ( 0.0000000000 0.6666666269 -0.0000000000 ) ( -0.0000000000 -0.0000000000 -0.0000000000 ) + ( -0.0000000000 0.6666667461 0.0000000000 ) ( 0.0000000000 -0.0000001192 -0.0000000000 ) + ( 0.0000000000 0.6666665077 0.0000000000 ) ( -0.0000000000 -0.0000000000 -0.0000000000 ) + ( 0.0000000000 0.6666667461 0.0000000000 ) ( -0.0000000000 -0.0000000000 -0.0000000000 ) +} + +frame 0 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0245840959 0.0087798676 -0.0018916141 + 0.0000000002 0.6666666269 0.0000000003 0.0671774447 0.0239914842 -0.0051689432 + 0.0000000019 0.6666666865 0.0000000219 0.0633576289 0.0226272848 -0.0048750276 + 0.0000000084 0.6666667461 -0.0000000236 0.0978382975 0.0349414572 -0.0075281197 + 0.0000000065 0.6666666269 0.0000001036 0.1112276092 0.0397233926 -0.0085583413 + 0.0000000466 0.6666663885 -0.0000000214 0.1896742284 0.0677395016 -0.0145943630 +} + +frame 1 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0214723274 0.0076685399 -0.0016521799 + 0.0000000000 0.6666666269 0.0000000010 0.0669916943 0.0239251461 -0.0051546502 + -0.0000000009 0.6666666865 -0.0000000359 0.0574350543 0.0205121227 -0.0044193184 + 0.0000000019 0.6666665673 -0.0000000416 0.0895750970 0.0274379160 -0.0075139720 + 0.0000000019 0.6666664481 -0.0000000391 0.1042957008 0.0374107771 -0.0085364673 + 0.0000000042 0.6666668057 0.0000000115 0.1735152453 0.0625853166 -0.0143034393 +} + +frame 2 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0140501307 0.0050178058 -0.0010810816 + 0.0000000001 0.6666665673 0.0000000001 0.0657371059 0.0234770887 -0.0050581163 + 0.0000000014 0.6666666269 -0.0000000059 0.0420398787 0.0150139481 -0.0032347415 + -0.0000000009 0.6666665673 -0.0000000233 0.0678831935 0.0095066112 -0.0073921843 + -0.0000000037 0.6666664481 0.0000001367 0.0858467221 0.0312517695 -0.0083785551 + -0.0000000149 0.6666663289 -0.0000001551 0.1320067495 0.0493452586 -0.0134057831 +} + +frame 3 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0051896223 0.0018533992 -0.0003993133 + -0.0000000000 0.6666666865 0.0000000003 0.0623674691 0.0222736690 -0.0047988407 + -0.0000000009 0.6666665673 0.0000000139 0.0207405295 0.0074071940 -0.0015958719 + 0.0000000019 0.6666669250 -0.0000000318 0.0374634303 -0.0119314156 -0.0070436420 + 0.0000000000 0.6666665673 0.0000000102 0.0593977310 0.0224132184 -0.0079451483 + 0.0000000186 0.6666669846 0.0000000054 0.0758249611 0.0314235389 -0.0118661132 +} + +frame 4 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 -0.0022338924 -0.0007978060 0.0001718863 + -0.0000000000 0.6666666865 0.0000000003 0.0558325760 0.0199398231 -0.0042960159 + 0.0000000012 0.6666667461 0.0000000135 -0.0028576909 -0.0010205804 0.0002198839 + 0.0000000000 0.6666669250 0.0000000061 0.0031699056 -0.0298735313 -0.0063556950 + 0.0000000033 0.6666665077 0.0000000047 0.0285013076 0.0120742489 -0.0070982529 + 0.0000000099 0.6666665673 0.0000000440 0.0163138732 0.0124489786 -0.0096831042 +} + +frame 5 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 -0.0053465767 -0.0019094577 0.0004113906 + -0.0000000001 0.6666666269 -0.0000000002 0.0450707935 0.0160964057 -0.0034679554 + 0.0000000007 0.6666665673 0.0000000142 -0.0251339749 -0.0089762416 0.0019339240 + 0.0000000001 0.6666667461 -0.0000000013 -0.0301087890 -0.0373587273 -0.0052241012 + 0.0000000019 0.6666665077 0.0000000073 -0.0032691036 0.0014218829 -0.0057031694 + -0.0000000055 0.6666663289 0.0000000156 -0.0350614712 -0.0038914913 -0.0068903505 +} + +frame 6 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 -0.0027248035 -0.0009731275 0.0002096593 + -0.0000000001 0.6666666269 -0.0000000000 0.0263766125 0.0094200410 -0.0020295393 + 0.0000000003 0.6666666269 0.0000000059 -0.0431516394 -0.0154109998 0.0033202870 + 0.0000000002 0.6666668653 -0.0000000058 -0.0583655871 -0.0351227820 -0.0031935819 + 0.0000000026 0.6666668653 -0.0000000191 -0.0327265263 -0.0084820436 -0.0030121100 + -0.0000000044 0.6666668653 0.0000000129 -0.0704994798 -0.0151302945 -0.0035872757 +} + +frame 7 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0035277156 0.0012598736 -0.0002714386 + -0.0000000000 0.6666666865 -0.0000000001 0.0009092589 0.0003247335 -0.0000699637 + -0.0000000001 0.6666666269 -0.0000000002 -0.0566048995 -0.0202156436 0.0043554427 + -0.0000000012 0.6666668057 -0.0000000029 -0.0806912705 -0.0290392637 -0.0003574895 + 0.0000000000 0.6666666269 -0.0000000539 -0.0581060089 -0.0170366969 0.0009273000 + -0.0000000149 0.6666670442 -0.0000000042 -0.0919787437 -0.0219397116 -0.0001734107 +} + +frame 8 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0109905582 0.0039251256 -0.0008456645 + 0.0000000000 0.6666666269 -0.0000000014 -0.0250420310 -0.0089434031 0.0019268477 + -0.0000000001 0.6666665077 0.0000000057 -0.0658267289 -0.0235090945 0.0050650146 + 0.0000000023 0.6666666269 -0.0000000036 -0.0969109982 -0.0199304409 0.0025642249 + 0.0000000019 0.6666665077 0.0000001835 -0.0779891387 -0.0237527099 0.0050543845 + -0.0000000042 0.6666670442 0.0000000820 -0.1030752957 -0.0254523233 0.0028709413 +} + +frame 9 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0172423702 0.0061578737 -0.0013267080 + -0.0000000002 0.6666666865 -0.0000000012 -0.0451746471 -0.0161334816 0.0034759452 + 0.0000000009 0.6666664481 -0.0000000025 -0.0711352676 -0.0254049581 0.0054734773 + -0.0000000037 0.6666668057 0.0000000204 -0.1068152562 -0.0086155701 0.0048496970 + -0.0000000093 0.6666664481 0.0000000112 -0.0909607410 -0.0281416867 0.0083086500 + 0.0000000091 0.6666665673 0.0000000447 -0.1072441339 -0.0267667510 0.0050611543 +} + +frame 10 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0198636483 0.0070940284 -0.0015284014 + 0.0000000000 0.6666666269 -0.0000000013 -0.0532605946 -0.0190212652 0.0040981136 + 0.0000000006 0.6666667461 0.0000000135 -0.0728375167 -0.0260128975 0.0056044557 + -0.0000000009 0.6666666269 0.0000000655 -0.1101678014 0.0040770099 0.0057730614 + 0.0000000037 0.6666663885 -0.0000000619 -0.0956024379 -0.0297142603 0.0096294070 + -0.0000000410 0.6666668057 -0.0000002366 -0.1078807116 -0.0269648265 0.0059022107 +} + +frame 11 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0180646852 0.0064515541 -0.0013899810 + -0.0000000000 0.6666665673 0.0000000003 -0.0460178368 -0.0164346173 0.0035408230 + 0.0000000004 0.6666665077 -0.0000000045 -0.0673106983 -0.0240390692 0.0051791966 + 0.0000000009 0.6666667461 -0.0000000006 -0.0966836065 0.0172496345 0.0041441321 + -0.0000000084 0.6666666865 -0.0000000047 -0.0844516158 -0.0259527173 0.0077744839 + -0.0000000112 0.6666666865 -0.0000001346 -0.0942250490 -0.0226345919 0.0034972231 +} + +frame 12 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0137744080 0.0049193408 -0.0010598671 + -0.0000000001 0.6666666269 0.0000000007 -0.0287246816 -0.0102586113 0.0022102082 + -0.0000000001 0.6666666865 -0.0000000045 -0.0541170686 -0.0193271488 0.0041640168 + 0.0000000023 0.6666666269 -0.0000000185 -0.0643965304 0.0297273714 0.0002491280 + 0.0000000019 0.6666663289 0.0000000591 -0.0577719025 -0.0169542655 0.0033400028 + 0.0000000037 0.6666669250 -0.0000000952 -0.0615062900 -0.0122657036 -0.0022537401 +} + +frame 13 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0086532608 0.0030903954 -0.0006658223 + -0.0000000000 0.6666666865 -0.0000000008 -0.0080640092 -0.0028799404 0.0006204802 + 0.0000000000 0.6666668057 -0.0000000009 -0.0383523405 -0.0136970002 0.0029510066 + -0.0000000008 0.6666667461 -0.0000000162 -0.0257236511 0.0401919186 -0.0044056252 + -0.0000000024 0.6666665077 0.0000000082 -0.0258379001 -0.0061863754 -0.0019610974 + 0.0000000005 0.6666668057 -0.0000000653 -0.0223042369 0.0001462511 -0.0091233896 +} + +frame 14 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0043624686 0.0015579978 -0.0003356689 + 0.0000000000 0.6666666269 -0.0000000000 0.0092428485 0.0033009606 -0.0007111894 + 0.0000000000 0.6666667461 0.0000000052 -0.0251385942 -0.0089778956 0.0019342795 + 0.0000000004 0.6666667461 0.0000000052 0.0066702506 0.0473427363 -0.0082958061 + 0.0000000001 0.6666665077 -0.0000000020 0.0009167867 0.0028328344 -0.0063968198 + 0.0000000006 0.6666669250 0.0000000015 0.0105266301 0.0105313538 -0.0148591353 +} + +frame 15 { + 0.0000000000 0.0000000000 -1.0000000000 -0.7071068287 -0.0000000000 -0.0000000000 + 0.0000000000 1.0000000000 0.0000000000 0.0025631466 0.0009153964 -0.0001972209 + -0.0000000000 0.6666666269 0.0000000001 0.0164950527 0.0058909860 -0.0012692078 + 0.0000000005 0.6666666269 0.0000000018 -0.0195979048 -0.0069991187 0.0015079532 + 0.0000000002 0.6666665077 -0.0000000001 0.0202257894 0.0499825403 -0.0099213310 + -0.0000000023 0.6666666269 0.0000000048 0.0121192681 0.0066086617 -0.0082525900 + -0.0000000112 0.6666665077 0.0000000116 0.0242594946 0.0148727493 -0.0172536466 +} + diff --git a/models/one_quad/one_quad.blend b/models/one_quad/one_quad.blend new file mode 100644 index 0000000000000000000000000000000000000000..0812c413f08adfd857d6e9acb5933cbcf95aad14 GIT binary patch literal 960336 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

b&3K))^nw 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 X<0EC4y+YVORSK6bQ~-DX*WdpEfrh^K literal 0 HcmV?d00001 diff --git a/models/one_quad/one_quad.png b/models/one_quad/one_quad.png new file mode 100644 index 0000000000000000000000000000000000000000..560e6f47804c98a9e63e01b5f67b09feda1ba596 GIT binary patch literal 36714 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

;02X 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%0A^B?gs)qi2+0?kd_4C3!rqzC3{z1N95C=Lx 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%0Dn{6aYKOW{QN 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

9igx}No4dip< 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%0DOs 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

!E_`1Ww*hku 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%0AFYx;ZIcz`3>o5K~ZG5f6iSQvhAGxlI<)B|Y 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 literal 0 HcmV?d00001 diff --git a/models/wiggle/wiggle.png b/models/wiggle/wiggle.png new file mode 100644 index 0000000000000000000000000000000000000000..560e6f47804c98a9e63e01b5f67b09feda1ba596 GIT binary patch literal 36714 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 ap`)XpU0{EuQ36kBLQ + +def float_to_v16(val): + res = int(val * (1 << 12)) + if res < -0x8000: + raise OverflowError(f"{val} too small for v16: {res:#04x}") + if res > 0x7FFF: + raise OverflowError(f"{val} too big for v16: {res:#04x}") + if res < 0: + res = 0x10000 + res + return res + +def float_to_f32(val): + res = int(val * (1 << 12)) + if res < -0x80000000: + raise OverflowError(f"{val} too small for f32: {res:#08x}") + if res > 0x7FFFFFFF: + raise OverflowError(f"{val} too big for f32: {res:#08x}") + if res < 0: + res = 0x100000000 + res + return res + +def v16_to_float(val): + return val / (1 << 12) + +def float_to_v10(val): + res = int(val * (1 << 6)) + if res < -0x200: + raise OverflowError(f"{val} too small for v10: {res:#03x}") + if res > 0x1FF: + raise OverflowError(f"{val} too big for v10: {res:#03x}") + if res < 0: + res = 0x400 + res + return res + +def v10_to_float(val): + return val / (1 << 6) + +def float_to_diff10(val): + res = int(val * (1 << 9)) + if res < -0x200: + raise OverflowError(f"{val} too small for diff10: {res:#03x}") + if res > 0x1FF: + raise OverflowError(f"{val} too big for diff10: {res:#03x}") + if res < 0: + res = 0x400 + res + return res + +def diff10_to_float(val): + return val / (1 << 9) + +def float_to_t16(val): + res = int(val * (1 << 4)) + if res < -0x8000: + raise OverflowError(f"{val} too small for t16: {res:#04x}") + if res > 0x7FFF: + raise OverflowError(f"{val} too big for t16: {res:#04x}") + if res < 0: + res = 0x10000 + res + return res + +def float_to_n10(val): + res = int(val * (1 << 9)) + if res < -0x200: + #raise OverflowError(f"{val} too small for n10: {res:#03x}") + res = -0x200 + if res > 0x1FF: + #raise OverflowError(f"{val} too big for n10: {res:#03x}") + res = 0x1FF + if res < 0: + res = 0x400 + res + return res + +def command_name_to_id(name): + commands = { + "NOP": 0x00, # (0) No Operation (for padding packed GXFIFO commands) + "MTX_MODE": 0x10, # (1) Set Matrix Mode + "MTX_PUSH": 0x11, # (0) Push Current Matrix on Stack + "MTX_POP": 0x12, # (1) Pop Current Matrix from Stack + "MTX_STORE": 0x13, # (1) Store Current Matrix on Stack + "MTX_RESTORE": 0x14, # (1) Restore Current Matrix from Stack + "MTX_IDENTITY": 0x15, # (0) Load Unit Matrix to Current Matrix + "MTX_LOAD_4x4": 0x16, # (16) Load 4x4 Matrix to Current Matrix + "MTX_LOAD_4x3": 0x17, # (12) Load 4x3 Matrix to Current Matrix + "MTX_MULT_4x4": 0x18, # (16) Multiply Current Matrix by 4x4 Matrix + "MTX_MULT_4x3": 0x19, # (12) Multiply Current Matrix by 4x3 Matrix + "MTX_MULT_3x3": 0x1A, # (9) Multiply Current Matrix by 3x3 Matrix + "MTX_SCALE": 0x1B, # (3) Multiply Current Matrix by Scale Matrix + "MTX_TRANS": 0x1C, # (3) Mult. Curr. Matrix by Translation Matrix + "COLOR": 0x20, # (1) Directly Set Vertex Color + "NORMAL": 0x21, # (1) Set Normal Vector + "TEXCOORD": 0x22, # (1) Set Texture Coordinates + "VTX_16": 0x23, # (2) Set Vertex XYZ Coordinates + "VTX_10": 0x24, # (1) Set Vertex XYZ Coordinates + "VTX_XY": 0x25, # (1) Set Vertex XY Coordinates + "VTX_XZ": 0x26, # (1) Set Vertex XZ Coordinates + "VTX_YZ": 0x27, # (1) Set Vertex YZ Coordinates + "VTX_DIFF": 0x28, # (1) Set Relative Vertex Coordinates + "POLYGON_ATTR": 0x29, # (1) Set Polygon Attributes + "TEXIMAGE_PARAM": 0x2A, # (1) Set Texture Parameters + "PLTT_BASE": 0x2B, # (1) Set Texture Palette Base Address + "DIF_AMB": 0x30, # (1) MaterialColor0 # Diffuse/Ambient Reflect. + "SPE_EMI": 0x31, # (1) MaterialColor1 # Specular Ref. & Emission + "LIGHT_VECTOR": 0x32, # (1) Set Light's Directional Vector + "LIGHT_COLOR": 0x33, # (1) Set Light Color + "SHININESS": 0x34, # (32) Specular Reflection Shininess Table + "BEGIN_VTXS": 0x40, # (1) Start of Vertex List + "END_VTXS": 0x41, # (0) End of Vertex List + "SWAP_BUFFERS": 0x50, # (1) Swap Rendering Engine Buffer + "VIEWPORT": 0x60, # (1) Set Viewport + "BOX_TEST": 0x70, # (3) Test if Cuboid Sits inside View Volume + "POS_TEST": 0x71, # (2) Set Position Coordinates for Test + "VEC_TEST": 0x72, # (1) Set Directional Vector for Test + } + return commands[name] + +def poly_type_to_id(name): + types = { + "triangles": 0, + "quads": 1, + "triangle_strip": 2, + "quad_strip": 3, + } + return types[name] + +def error(x1, x2, y1, y2, z1, z2): + return (abs(x1 - x2) ** 2) + (abs(y1 - y2) ** 2) + (abs(z1 - z2) ** 2) + +class DisplayList(): + + def __init__(self): + self.commands = [] + self.parameters = [] + self.vtx_last = None + self.texcoord_last = None + self.normal_last = None + self.begin_vtx_last = None + + self.display_list = [] + + def add_command(self, command, *args): + self.commands.append(command) + if len(args) > 0: + self.parameters.extend(args) + + if len(self.commands) == 4: + header = self.commands[0] | self.commands[1] << 8 | \ + self.commands[2] << 16 | self.commands[3] << 24 + + self.display_list.append(header) + self.display_list.extend(self.parameters) + + self.commands = [] + self.parameters = [] + + def finalize(self): + # If there are pending commands, add NOPs to complete the display list + if len(self.commands) > 0: + padding = 4 - len(self.commands) + for i in range(padding): + self.nop() + + # Prepend size to the list + self.display_list.insert(0, len(self.display_list)) + + def save_to_file(self, path): + with open(path, "wb") as f: + for u32 in self.display_list: + b = [u32 & 0xFF, \ + (u32 >> 8) & 0xFF, \ + (u32 >> 16) & 0xFF, \ + (u32 >> 24) & 0xFF] + f.write(bytearray(b)) + + def nop(self): + self.add_command(command_name_to_id("NOP")) + + def mtx_push(self): + self.add_command(command_name_to_id("MTX_PUSH")) + + def mtx_pop(self, index): + self.add_command(command_name_to_id("MTX_POP"), index) + + def mtx_restore(self, index): + self.add_command(command_name_to_id("MTX_RESTORE"), index) + + def mtx_load_4x3(self, m): + fixed_m = [float_to_f32(v) for v in m] + self.add_command(command_name_to_id("MTX_LOAD_4x3"), *fixed_m) + + def mtx_mult_4x3(self, m): + fixed_m = [float_to_f32(v) for v in m] + self.add_command(command_name_to_id("MTX_MULT_4x3"), *fixed_m) + + def color(self, r, g, b): + arg = int(r * 31) | (int(g * 31) << 5) | (int(b * 31) << 10) + self.add_command(command_name_to_id("COLOR"), arg) + + def normal(self, x, y, z): + # Skip if it's the same normal + if self.normal_last is not None: + if self.normal_last[0] == x and self.normal_last[1] == y and \ + self.normal_last[2] == z: + return + + arg = float_to_n10(x) | (float_to_n10(y) << 10) | float_to_n10(z) << 20 + self.add_command(command_name_to_id("NORMAL"), arg) + self.normal_last = (x, y, z) + + def texcoord(self, u, v): + # Skip if it's the same texcoord + if self.texcoord_last is not None: + if self.texcoord_last[0] == u and self.texcoord_last[1] == v: + return + + arg = float_to_t16(u) | (float_to_t16(v) << 16) + self.add_command(command_name_to_id("TEXCOORD"), arg) + self.texcoord_last = (u, v) + + def vtx_16(self, x, y, z): + args = [float_to_v16(x) | (float_to_v16(y) << 16), float_to_v16(z)] + self.add_command(command_name_to_id("VTX_16"), *args) + self.vtx_last = (x, y, z) + + def vtx_10(self, x, y, z): + arg = float_to_v10(x) | (float_to_v10(y) << 10) | float_to_v10(z) << 20 + self.add_command(command_name_to_id("VTX_10"), arg) + self.vtx_last = (x, y, z) + + def vtx_xy(self, x, y): + arg = float_to_v16(x) | (float_to_v16(y) << 16) + self.add_command(command_name_to_id("VTX_XY"), arg) + self.vtx_last = (x, y, self.vtx_last[2]) + + def vtx_xz(self, x, z): + arg = float_to_v16(x) | (float_to_v16(z) << 16) + self.add_command(command_name_to_id("VTX_XZ"), arg) + self.vtx_last = (x, self.vtx_last[1], z) + + def vtx_yz(self, y, z): + arg = float_to_v16(y) | (float_to_v16(z) << 16) + self.add_command(command_name_to_id("VTX_YZ"), arg) + self.vtx_last = (self.vtx_last[0], y, z) + + def vtx_diff(self, x, y, z): + arg = float_to_diff10(x - self.vtx_last[0]) | \ + (float_to_diff10(y - self.vtx_last[1]) << 10) | \ + (float_to_diff10(z - self.vtx_last[2]) << 20) + self.add_command(command_name_to_id("VTX_DIFF"), arg) + self.vtx_last = (x, y, z) + + def vtx(self, x, y, z): + """ + Picks the best vtx command based on the previous vertex and the error of + the conversion. + """ + # Allow {vtx_xy, vtx_yz, vtx_xz, vtx_diff} if there is a previous vertex + allow_diff = self.vtx_last is not None + + # First, check if any of the coordinates is exactly the same as the + # previous command. We can trivially use vtx_xy, vtx_xz, vtx_yz because + # they have the min possible size and the max possible accuracy + if allow_diff: + if float_to_v16(self.vtx_last[0]) == float_to_v16(x): + self.vtx_yz(y, z) + return + elif float_to_v16(self.vtx_last[1]) == float_to_v16(y): + self.vtx_xz(x, z) + return + elif float_to_v16(self.vtx_last[2]) == float_to_v16(z): + self.vtx_xy(x, y) + return + + # If not, there are three options: vtx_16, vtx_10, vtx_diff. Pick the + # one with the lowest error. + + # TODO: Maybe use vtx_diff, but this may cause accuracy issues if it is + # used several times in a row. + + error_vtx_16 = error(v16_to_float(float_to_v16(x)), x, + v16_to_float(float_to_v16(y)), y, + v16_to_float(float_to_v16(z)), z) + + error_vtx_10 = error(v10_to_float(float_to_v10(x)), x, + v10_to_float(float_to_v10(y)), y, + v10_to_float(float_to_v10(z)), z) + + if error_vtx_10 <= error_vtx_16: + self.vtx_10(x, y, z) + else: + self.vtx_16(x, y, z) + + return + + def begin_vtxs(self, poly_type): + self.add_command(command_name_to_id("BEGIN_VTXS"), poly_type_to_id(poly_type)) + self.begin_vtx_last = poly_type + + def end_vtxs(self): + self.add_command(command_name_to_id("END_VTXS")) + self.begin_vtx_last = None + + def switch_vtxs(self, poly_type): + """Sends a new BEGIN_VTXS if the polygon type has changed.""" + if self.begin_vtx_last != poly_type: + if self.begin_vtx_last is not None: + self.end_vtxs() + self.begin_vtxs(poly_type) + +if __name__ == "__main__": + dl = DisplayList() + dl.begin_vtxs("triangles") + dl.color(1.0, 0, 0) + dl.vtx_16(1.0, -1.0, 0) + dl.color(0, 1.0, 0) + dl.vtx_10(1.0, 1.0, 0) + dl.color(0, 0, 1.0) + dl.vtx_xy(-1.0, -1.0) + dl.end_vtxs() + dl.finalize() + print(', '.join([hex(i) for i in dl.display_list])) + dl.save_to_file("test.bin") diff --git a/tools/md5_to_dsma.py b/tools/md5_to_dsma.py new file mode 100755 index 0000000..f16e8c3 --- /dev/null +++ b/tools/md5_to_dsma.py @@ -0,0 +1,859 @@ +#!/usr/bin/env python3 + +# SPDX-License-Identifier: MIT +# +# Copyright (c) 2022 Antonio Niño Díaz + +import os + +from collections import namedtuple +from math import sqrt + +from display_list import DisplayList, float_to_f32 + +class MD5FormatError(Exception): + pass + +VALID_TEXTURE_SIZES = [8, 16, 32, 64, 128, 256, 512, 1024] + +def is_valid_texture_size(size): + return size in VALID_TEXTURE_SIZES + +def assert_num_args(cmd, real, expected, tokens): + if real != expected: + raise MD5FormatError(f"Unexpected nargs for '{cmd}' ({real} != {expected}): {tokens}") + +class Quaternion(): + def __init__(self, w, x, y, z): + self.w = w + self.x = x + self.y = y + self.z = z + + def to_v3(self): + return Vector(self.x, self.y, self.z) + + def complement(self): + return Quaternion(self.w, -self.x, -self.y, -self.z) + + def normalize(self): + mag = sqrt((self.w ** 2) + (self.x ** 2) + (self.y ** 2) + (self.z ** 2)) + return Quaternion(self.w / mag, self.x /mag, self.y / mag, self.z / mag) + + def mul(self, other): + w = (self.w * other.w) - (self.x * other.x) - (self.y * other.y) - (self.z * other.z) + x = (self.x * other.w) + (self.w * other.x) + (self.y * other.z) - (self.z * other.y) + y = (self.y * other.w) + (self.w * other.y) + (self.z * other.x) - (self.x * other.z) + z = (self.z * other.w) + (self.w * other.z) + (self.x * other.y) - (self.y * other.x) + return Quaternion(w, x, y, z) + +def quaternion_fill_incomplete_w(v): + """ + This expands an incomplete quaternion, not a regular vector. This is + needed if a quaternion is stored as the components x, y and z and it is + expected that the code will fill the value of w. + """ + t = 1.0 - (v[0] * v[0]) - (v[1] * v[1]) - (v[2] * v[2]) + if t < 0: + w = 0 + else: + w = -sqrt(t) + return Quaternion(w, v[0], v[1], v[2]) + +class Vector(): + def __init__(self, x, y, z): + self.x = x + self.y = y + self.z = z + + def to_q(self): + return Quaternion(0, self.x, self.y, self.z) + + def length(self): + return sqrt((self.x ** 2) + (self.y ** 2) + (self.z ** 2)) + + def normalize(self): + mag = self.length() + return Vector(self.x / mag, self.y / mag, self.z / mag) + + def add(self, other): + return Vector(self.x + other.x, self.y + other.y, self.z + other.z) + + def sub(self, other): + return Vector(self.x - other.x, self.y - other.y, self.z - other.z) + + def cross(self, other): + x = (self.y * other.z) - (other.y * self.z) + y = (self.z * other.x) - (other.z * self.x) + z = (self.x * other.y) - (other.x * self.y) + return Vector(x, y, z) + + def mul_m4x3(self, m): + x = (self.x * m[0][0]) + (self.y * m[0][1]) + (self.z * m[0][2]) + (m[0][3] * 1) + y = (self.x * m[1][0]) + (self.y * m[1][1]) + (self.z * m[1][2]) + (m[1][3] * 1) + z = (self.x * m[2][0]) + (self.y * m[2][1]) + (self.z * m[2][2]) + (m[2][3] * 1) + return Vector(x, y, z) + +def joint_info_to_m4x3(q, trans): + """ + This generates a 4x3 matrix that represents a rotation and a translation. + q is a Quaternion with a orientation, trans is a Vector with a translation. + """ + wx = 2 * q.w * q.x + wy = 2 * q.w * q.y + wz = 2 * q.w * q.z + x2 = 2 * q.x * q.x + xy = 2 * q.x * q.y + xz = 2 * q.x * q.z + y2 = 2 * q.y * q.y + yz = 2 * q.y * q.z + z2 = 2 * q.z * q.z + + return [[1 - y2 - z2, xy - wz, xz + wy, trans.x], + [ xy + wz, 1 - x2 - z2, yz - wx, trans.y], + [ xz - wy, yz + wx, 1 - x2 - y2, trans.z]] + +def parse_md5mesh(input_file): + Joint = namedtuple("Joint", "name parent pos orient") + Vert = namedtuple("Vert", "st startWeight countWeight") + Weight = namedtuple("Weight", "joint bias pos") + Mesh = namedtuple("Mesh", "numverts verts numtris tris numweights weights") + + joints = [] + meshes = [] + + with open(input_file, 'r') as md5mesh_file: + + numJoints = None + numMeshes = None + + # This can have three values: + # - "root": Parsing commands in the md5mesh outside of any group + # - "joints": Inside a "joints" node. + # - "mesh": Inside a "mesh" node. + mode = "root" + + # Temporary variables used to store mesh information before packing it + numverts = None + verts = None + numtris = None + tris = None + numweights = None + weights = None + + for line in md5mesh_file: + # Remove comments + line = line.split('//')[0] + + # Parse line + tokens = line.split() + + if len(tokens) == 0: # Empty line + continue + + cmd = tokens[0] + tokens = tokens[1:] + nargs = len(tokens) + + if mode == "root": + if cmd == 'MD5Version': + assert_num_args('MD5Version', nargs, 1, tokens) + version = int(tokens[0]) + if version != 10: + raise MD5FormatError(f"Invalid 'MD5Version': {version} != 10") + + elif cmd == 'commandline': + # Ignore this + pass + + elif cmd == 'numJoints': + assert_num_args('numJoints', nargs, 1, tokens) + numJoints = int(tokens[0]) + if numJoints == 0: + raise MD5FormatError(f"'numJoints' is 0") + + elif cmd == 'numMeshes': + assert_num_args('numMeshes', nargs, 1, tokens) + numMeshes = int(tokens[0]) + if numMeshes == 0: + raise MD5FormatError(f"'numMeshes' is 0") + + elif cmd == 'joints': + assert_num_args('joints', nargs, 1, tokens) + if tokens[0] != '{': + raise MD5FormatError(f"Unexpected token for 'joints': {tokens}") + if numJoints is None: + raise MD5FormatError("'joints' command before 'numJoints'") + mode = "joints" + + elif cmd == 'mesh': + assert_num_args('mesh', nargs, 1, tokens) + if tokens[0] != '{': + raise MD5FormatError(f"Unexpected token for 'mesh': {tokens}") + if numMeshes is None: + raise MD5FormatError("'mesh' command before 'numMeshes'") + mode = "mesh" + + else: + print(f"Ignored unsupported command: {cmd} {tokens}") + + elif mode == "joints": + if cmd == '}': + if nargs > 0: + raise MD5FormatError(f"Unexpected tokens after 'joints {{}}': {tokens}") + mode = "root" + else: + _, name, line = line.split('"') + tokens = line.strip().split(" ") + nargs = len(tokens) + + assert_num_args('joint entry', nargs, 11, tokens) + + parent = int(tokens[0]) + + if tokens[1] != '(': + raise MD5FormatError(f"Unexpected token 1 for joint': {tokens}") + pos = Vector(float(tokens[2]), float(tokens[3]), float(tokens[4])) + if tokens[5] != ')': + raise MD5FormatError(f"Unexpected token 5 for joint': {tokens}") + + if tokens[6] != '(': + raise MD5FormatError(f"Unexpected token 6 for joint': {tokens}") + orient = (float(tokens[7]), float(tokens[8]), float(tokens[9])) + q_orient = quaternion_fill_incomplete_w(orient) + if tokens[10] != ')': + raise MD5FormatError(f"Unexpected token 10 for joint': {tokens}") + + joints.append(Joint(name, parent, pos, q_orient)) + + elif mode == "mesh": + if cmd == '}': + if nargs != 0: + raise MD5FormatError(f"Unexpected tokens after 'mesh {{}}': {tokens}") + mode = "root" + + meshes.append(Mesh(numverts, verts, numtris, tris, numweights, weights)) + + numverts = None + verts = None + numtris = None + tris = None + numweights = None + weights = None + + elif cmd == 'shader': + # Ignore this + pass + + elif cmd == 'numverts': + assert_num_args('numverts', nargs, 1, tokens) + numverts = int(tokens[0]) + verts = [None] * numverts + + elif cmd == 'vert': + assert_num_args('vert', nargs, 7, tokens) + if numverts is None: + raise MD5FormatError("'vert' command before 'numverts'") + + index = int(tokens[0]) + + if tokens[1] != '(': + raise MD5FormatError(f"Unexpected token 1 for vert': {tokens}") + st = (float(tokens[2]), float(tokens[3])) + if tokens[4] != ')': + raise MD5FormatError(f"Unexpected token 4 for vert': {tokens}") + + startWeight = int(tokens[5]) + countWeight = int(tokens[6]) + + if countWeight != 1: + raise MD5FormatError( + f"Vertex with {countWeight} weights detected, but this tool " + "only supports vertices with one weight. Ensure that all your " + "vertices are assigned exactly one weight with a bias of 1.0." + ) + + verts[index] = Vert(st, startWeight, countWeight) + + elif cmd == 'numtris': + assert_num_args('numtris', nargs, 1, tokens) + numtris = int(tokens[0]) + tris = [None] * numtris + + elif cmd == 'tri': + assert_num_args('tri', nargs, 4, tokens) + if numtris is None: + raise MD5FormatError("'tri' command before 'numtris'") + + index = int(tokens[0]) + # Reverse order so that they face the right direction + vertIndices = (int(tokens[3]), int(tokens[2]), int(tokens[1])) + + tris[index] = vertIndices + + elif cmd == 'numweights': + assert_num_args('numweights', nargs, 1, tokens) + numweights = int(tokens[0]) + weights = [None] * numweights + + elif cmd == 'weight': + assert_num_args('weight', nargs, 8, tokens) + if numverts is None: + raise MD5FormatError("'weight' command before 'numweights'") + + index = int(tokens[0]) + jointIndex = int(tokens[1]) + bias = float(tokens[2]) + + if bias != 1.0: + raise MD5FormatError( + f"Weight with bias {bias} detected, but this tool only" + "supports weights with bias equal to 1.0. Ensure that all" + "your vertices are assigned exactly one weight with a" + "bias of 1.0." + ) + + if tokens[3] != '(': + raise MD5FormatError(f"Unexpected token 3 for weight': {tokens}") + pos = Vector(float(tokens[4]), float(tokens[5]), float(tokens[6])) + if tokens[7] != ')': + raise MD5FormatError(f"Unexpected token 7 for weight': {tokens}") + + weights[index] = Weight(jointIndex, bias, pos) + + else: + print(f"Ignored unsupported command: {cmd} {tokens}") + + if mode != "root": + raise MD5FormatError("Unexpected end of file (expected '}')") + + realJoints = len(joints) + if numJoints != realJoints: + raise MD5FormatError(f"Incorrect number of joints: {numJoints} != {realJoints}") + + realMeshes = len(meshes) + if numJoints != realJoints: + raise MD5FormatError(f"Incorrect number of joints: {numJoints} != {realJoints}") + + return (joints, meshes) + +def parse_md5anim(input_file): + Joint = namedtuple("Joint", "name parent pos orient") + + joints = [] + frames = [] + + with open(input_file, 'r') as md5anim_file: + + numFrames = None + numJoints = None + + baseframe = [] + hierarchy = [] + + # This can have three values: + # - "root": Parsing commands in the md5mesh outside of any group + # - "hierarchy": Inside a "hierarchy" node. + # - "bounds": Inside a "bounds" node. + # - "baseframe": Inside a "baseframe" node. + # - "frame": Inside a "frame" node. + mode = "root" + + frame_index = None + + for line in md5anim_file: + # Remove comments + line = line.split('//')[0] + + # Parse line + tokens = line.split() + + if len(tokens) == 0: # Empty line + continue + + cmd = tokens[0] + tokens = tokens[1:] + nargs = len(tokens) + + if mode == "root": + if cmd == 'MD5Version': + assert_num_args('MD5Version', nargs, 1, tokens) + version = int(tokens[0]) + if version != 10: + raise MD5FormatError(f"Invalid 'MD5Version': {version} != 10") + + elif cmd == 'commandline': + # Ignore this + pass + + elif cmd == 'numFrames': + assert_num_args('numFrames', nargs, 1, tokens) + numFrames = int(tokens[0]) + if numFrames == 0: + raise MD5FormatError(f"'numFrames' is 0") + frames = [None] * numFrames + + elif cmd == 'numJoints': + assert_num_args('numJoints', nargs, 1, tokens) + numJoints = int(tokens[0]) + if numJoints == 0: + raise MD5FormatError(f"'numJoints' is 0") + + elif cmd == 'frameRate': + # Ignore this + pass + + elif cmd == 'numAnimatedComponents': + # Ignore this + pass + + elif cmd == 'hierarchy': + assert_num_args('hierarchy', nargs, 1, tokens) + if tokens[0] != '{': + raise MD5FormatError(f"Unexpected token for 'hierarchy': {tokens}") + mode = "hierarchy" + + elif cmd == 'bounds': + assert_num_args('bounds', nargs, 1, tokens) + if tokens[0] != '{': + raise MD5FormatError(f"Unexpected token for 'bounds': {tokens}") + mode = "bounds" + + elif cmd == 'baseframe': + assert_num_args('baseframe', nargs, 1, tokens) + if tokens[0] != '{': + raise MD5FormatError(f"Unexpected token for 'baseframe': {tokens}") + mode = "baseframe" + + elif cmd == 'frame': + assert_num_args('frame', nargs, 2, tokens) + frame_index = int(tokens[0]) + + if tokens[1] != '{': + raise MD5FormatError(f"Unexpected token for 'frame': {tokens}") + if numFrames is None: + raise MD5FormatError("'frame' command before 'numFrames'") + mode = "frame" + joints = [] + + else: + print(f"Ignored unsupported command: {cmd} {tokens}") + + elif mode == "hierarchy": + if cmd == '}': + if nargs > 0: + raise MD5FormatError(f"Unexpected tokens after 'hierarchy {{}}': {tokens}") + mode = "root" + else: + _, name, line = line.split('"') + tokens = line.strip().split(" ") + nargs = len(tokens) + + assert_num_args('hierarchy entry', nargs, 3, tokens) + + parent_index = int(tokens[0]) + flags = int(tokens[1]) + if flags != 63: + raise MD5FormatError(f"Unexpected flags in hierarchy: {flags}") + frame_data_index = int(tokens[2]) + + hierarchy.append(parent_index) + + elif mode == "bounds": + if cmd == '}': + if nargs > 0: + raise MD5FormatError(f"Unexpected tokens after 'bounds {{}}': {tokens}") + mode = "root" + else: + # Ignore everything else + pass + + elif mode == "baseframe": + if cmd == '}': + if nargs > 0: + raise MD5FormatError(f"Unexpected tokens after 'baseframe {{}}': {tokens}") + mode = "root" + else: + values = line.strip().split() + assert_num_args('baseframe joint', len(values), 10, values) + + if values[0] != '(': + raise MD5FormatError(f"Unexpected token 0 for baseframe': {values}") + pos = Vector(float(values[1]), float(values[2]), float(values[3])) + if values[4] != ')': + raise MD5FormatError(f"Unexpected token 4 for baseframe': {values}") + + if values[5] != '(': + raise MD5FormatError(f"Unexpected token 5 for baseframe': {values}") + orient = (float(values[6]), float(values[7]), float(values[8])) + q_orient = quaternion_fill_incomplete_w(orient) + if values[9] != ')': + raise MD5FormatError(f"Unexpected token 9 for baseframe': {values}") + + baseframe.append(Joint("", -1, pos, q_orient)) + + elif mode == "frame": + if cmd == '}': + if nargs > 0: + raise MD5FormatError(f"Unexpected tokens after 'frame {{}}': {tokens}") + mode = "root" + + # Now that the frame has been read, process the real + # positions and orientations of the bones before storing + # them. + + transformed_joints = [] + + for joint, parent_index in zip(joints, hierarchy): + if parent_index == -1: + # Root bone + transformed_joints.append(joint) + else: + parent_pos = transformed_joints[parent_index].pos + parent_orient = transformed_joints[parent_index].orient + + this_pos = joint.pos + this_orient = joint.orient + + q = parent_orient + qt = q.complement() + q_pos_delta = q.mul(this_pos.to_q()).mul(qt) + pos_delta = q_pos_delta.to_v3() + + pos = parent_pos.add(pos_delta) + orient = parent_orient.mul(this_orient).normalize() + + transformed_joints.append(Joint("", -1, pos, orient)) + + frames[frame_index] = transformed_joints + else: + values = line.strip().split() + assert_num_args('frame joint', len(values), 6, values) + + pos = Vector(float(values[0]), float(values[1]), float(values[2])) + + orient = (float(values[3]), float(values[4]), float(values[5])) + q_orient = quaternion_fill_incomplete_w(orient) + + joints.append(Joint("", -1, pos, q_orient)) + + if mode != "root": + raise MD5FormatError("Unexpected end of file (expected '}')") + + realJoints = len(joints) + if numJoints != realJoints: + raise MD5FormatError(f"Incorrect number of joints: {numJoints} != {realJoints}") + + realFrames = len(frames) + if numFrames != realFrames: + raise MD5FormatError(f"Incorrect number of frames: {numFrames} != {realFrames}") + + return frames + +def save_animation(frames, output_file, blender_fix): + + version = 1 + num_frames = len(frames) + num_bones = len(frames[0]) + + u32_array = [version, num_frames, num_bones] + + for joints in frames: + if num_bones != len(joints): + raise MD5FormatError("Different number of bones across frames") + + for joint in joints: + this_pos = joint.pos + this_orient = joint.orient + + if blender_fix: + # It is needed to rotate all bones because all bones have + # absolute transformations. Rotate orientation and position by + # -90 degrees on the X axis. + q_rot = Quaternion(0.7071068, -0.7071068, 0, 0) + this_orient = q_rot.mul(this_orient) + this_pos = Vector(this_pos.x, this_pos.z, -this_pos.y) + + pos = [float_to_f32(this_pos.x), float_to_f32(this_pos.y), + float_to_f32(this_pos.z)] + orient = [float_to_f32(this_orient.w), float_to_f32(this_orient.x), + float_to_f32(this_orient.y), float_to_f32(this_orient.z)] + + u32_array.extend(pos) + u32_array.extend(orient) + + with open(output_file, "wb") as f: + for u32 in u32_array: + b = [u32 & 0xFF, \ + (u32 >> 8) & 0xFF, \ + (u32 >> 16) & 0xFF, \ + (u32 >> 24) & 0xFF] + f.write(bytearray(b)) + +def convert_md5mesh(model_file, name, output_folder, texture_size, + draw_normal_polygons, suffix, blender_fix, + export_base_pose): + + print(f"Converting model: {model_file}") + + # Parse md5mesh file + joints, meshes = parse_md5mesh(model_file) + + print(f"Loaded {len(joints)} joint(s) and {len(meshes)} mesh(es).") + + if len(meshes) > 1: + print("WARNING: More than one mesh found. All meshes will share the same " + "texture. If you want them to have different textures, you must use " + "multiple .md5mesh files.") + + if export_base_pose: + print("Converting base pose...") + + save_animation([joints], + os.path.join(output_folder, f"{name}.dsa{suffix}"), + blender_fix) + + print("Converting meshes...") + + # Display list shared between all meshes + dl = DisplayList() + dl.switch_vtxs("triangles") + + base_matrix = 30 - len(joints) + 1 + last_joint_index = None + + for mesh in meshes: + print(f" Vertices: {mesh.numverts}") + print(f" Tris: {mesh.numtris}") + print(f" Weights: {mesh.numweights}") + + print(" Generating per-triangle normals...") + + tri_normal = [] + for tri in mesh.tris: + verts = [mesh.verts[i] for i in tri] + weights = [mesh.weights[v.startWeight] for v in verts] + + vtx = [] + for vert, weight in zip(verts, weights): + joint = joints[weight.joint] + m = joint_info_to_m4x3(joint.orient, joint.pos) + final = weight.pos.mul_m4x3(m) + vtx.append(final) + + a = vtx[0].sub(vtx[1]) + b = vtx[1].sub(vtx[2]) + + n = a.cross(b) + + if n.length() > 0: + n = n.normalize() + tri_normal.append(n) + else: + tri_normal.append(Vector(0, 0, 0)) + + print(" Generating display list...") + + for tri, norm in zip(mesh.tris, tri_normal): + verts = [mesh.verts[i] for i in tri] + weights = [mesh.weights[v.startWeight] for v in verts] + + finals = [] + + for vert, weight in zip(verts, weights): + + # Texture + # ------- + + st = vert.st + + u = st[0] * texture_size[0] + v = st[1] * texture_size[1] + dl.texcoord(u, v) + + # Vertex and normal + # ----------------- + + # Load joint matrix. When drawing normal polygons it has to be + # loaded every time, because drawing the normal restores the + # original matrix. + + joint_index = weight.joint + if draw_normal_polygons or joint_index != last_joint_index: + dl.mtx_restore(base_matrix + joint_index) + last_joint_index = joint_index + + # Calculate normal in joint space + + joint = joints[joint_index] + + q = joint.orient + qt = q.complement() + n = norm.to_q() + + # Transform by the inverted quaternion + n = qt.mul(n).mul(q).to_v3() + if n.length() > 0: + n = n.normalize() + dl.normal(n.x, n.y, n.z) + + # The vertex is already in joint space + + dl.vtx(weight.pos.x, weight.pos.y, weight.pos.z) + + if draw_normal_polygons: + # Calculate actual location of the vertex so that the + # vertices of the triangle can be averaged as origin of the + # normal polygon. + q = joint.orient + qt = q.complement() + v = weight.pos.to_q() + + delta = q.mul(v).mul(qt).to_v3() + + final = joint.pos.add(delta) + finals.append(final) + + if draw_normal_polygons: + + # Don't use any of the joint transformation matrices + dl.mtx_restore(1) + + vert_avg = Vector( + (finals[0].x + finals[1].x + finals[2].x) / 3, + (finals[0].y + finals[1].y + finals[2].y) / 3, + (finals[0].z + finals[1].z + finals[2].z) / 3 + ) + + vert_avg_end = vert_avg.add(norm) + + dl.texcoord(0, 0) + + dl.color(1, 0, 0) + dl.vtx(vert_avg.x + 0.1, vert_avg.y, vert_avg.z) + dl.vtx(vert_avg.x, vert_avg.y, vert_avg.z) + dl.color(0, 1, 0) + dl.vtx(vert_avg_end.x, vert_avg_end.y, vert_avg_end.z) + + dl.color(1, 0, 0) + dl.vtx(vert_avg.x, vert_avg.y, vert_avg.z) + dl.vtx(vert_avg.x, vert_avg.y + 0.1, vert_avg.z) + dl.color(0, 1, 0) + dl.vtx(vert_avg_end.x, vert_avg_end.y, vert_avg_end.z) + + dl.color(1, 0, 0) + dl.vtx(vert_avg.x, vert_avg.y, vert_avg.z) + dl.vtx(vert_avg.x, vert_avg.y, vert_avg.z + 0.1) + dl.color(0, 1, 0) + dl.vtx(vert_avg_end.x, vert_avg_end.y, vert_avg_end.z) + + dl.end_vtxs() + dl.finalize() + + dl.save_to_file(os.path.join(output_folder, f"{name}.dsm{suffix}")) + + +def convert_md5anim(name, output_folder, anim_file, skip_frames, suffix, + blender_fix): + + print(f"Converting animation: {anim_file}") + + frames = parse_md5anim(anim_file) + + # Create name of animation based on file name + file_basename = os.path.basename(anim_file).replace(".md5anim", "") + anim_name = file_basename.replace(".", "_").lower() + + frames = frames[::skip_frames+1] + save_animation(frames, os.path.join(output_folder, + f"{name}_{anim_name}.dsa{suffix}"), blender_fix) + + +if __name__ == "__main__": + + import argparse + import sys + import traceback + + print("md5_to_dsma v0.1.0") + print("Copyright (c) 2022 Antonio Niño Díaz ") + print("All rights reserved") + print("") + + parser = argparse.ArgumentParser( + description='Converts md5mesh and md5anim files into DSM and DSA files.') + + # Required arguments + parser.add_argument("--name", required=True, + help="model name to be used in output files") + parser.add_argument("--output", required=True, + help="output folder") + + # Optional arguments + parser.add_argument("--model", required=False, type=str, default=None, + help="input md5mesh file") + parser.add_argument("--texture", required=False, type=int, default=[], + nargs="+", action="extend", + help="texture width and height (e.g. '--texture 32 64')") + parser.add_argument("--anims", required=False, type=str, default=[], + nargs="+", action="extend", + help="list of md5anim files to convert") + parser.add_argument("--bin", required=False, + action='store_true', + help="add '.bin' to the name of the output files") + parser.add_argument("--blender-fix", required=False, + action='store_true', + help="rotate model -90 degrees on X axis to match Blender's orientation") + parser.add_argument("--export-base-pose", required=False, + action='store_true', + help="export base pose of a md5mesh as a DSA file") + parser.add_argument("--skip-frames", required=False, + default=0, type=int, + help="number of frames to skip in an animation (0 = export all, 1 = export half, 2 = export 33%, etc)") + parser.add_argument("--draw-normal-polygons", required=False, + action='store_true', + help="draw polygons with the shape of normals for debugging") + + args = parser.parse_args() + + if args.model is not None: + if len(args.texture) != 2: + print("Please, provide exactly 2 values to the --texture argument") + sys.exit(1) + + if not is_valid_texture_size(args.texture[0]): + print(f"Invalid texture width. Valid values: {VALID_TEXTURE_SIZES}") + sys.exit(1) + + if not is_valid_texture_size(args.texture[1]): + print(f"Invalid texture height. Valid values: {VALID_TEXTURE_SIZES}") + sys.exit(1) + + # Create output directory if it doesn't exist + os.makedirs(args.output, exist_ok=True) + + # Add '.bin' to the name of the files if requested + suffix = ".bin" if args.bin else "" + + try: + if args.model is not None: + convert_md5mesh(args.model, args.name, args.output, args.texture, + args.draw_normal_polygons, suffix, args.blender_fix, + args.export_base_pose) + + for anim_file in args.anims: + convert_md5anim(args.name, args.output, anim_file, args.skip_frames, + suffix, args.blender_fix) + + except BaseException as e: + print("ERROR: " + str(e)) + traceback.print_exc() + sys.exit(1) + except MD5FormatError as e: + print("ERROR: Invalid MD5 file: " + str(e)) + traceback.print_exc() + sys.exit(1) + + print("Done!") + + sys.exit(0)