model: reorganize models

This commit is contained in:
Zack Buhman 2025-04-24 06:24:12 -05:00
parent 54751fe2e4
commit bc882eec96
23 changed files with 43200 additions and 28091 deletions

View File

@ -7,9 +7,8 @@ CSTD = -std=gnu11
MAKEFILE_PATH := $(patsubst %/,%,$(dir $(abspath $(firstword $(MAKEFILE_LIST))))) MAKEFILE_PATH := $(patsubst %/,%,$(dir $(abspath $(firstword $(MAKEFILE_LIST)))))
LIB ?= $(MAKEFILE_PATH)/dreamcast LIB ?= $(MAKEFILE_PATH)/dreamcast
CFLAGS += -D__dreamcast__ CFLAGS += -D__dreamcast__
CFLAGS += -I$(MAKEFILE_PATH)/c
CFLAGS += -I$(MAKEFILE_PATH)/dreamcast
CFLAGS += -I$(MAKEFILE_PATH)/ CFLAGS += -I$(MAKEFILE_PATH)/
CFLAGS += -I$(MAKEFILE_PATH)/dreamcast
CFLAGS += -Wno-error=strict-aliasing -fno-strict-aliasing CFLAGS += -Wno-error=strict-aliasing -fno-strict-aliasing
CARCH = -m4-single -ml CARCH = -m4-single -ml
@ -39,3 +38,21 @@ LIBGCC_OBJ =
haunted_mansion.elf: LDSCRIPT = $(LIB)/main.lds haunted_mansion.elf: LDSCRIPT = $(LIB)/main.lds
haunted_mansion.elf: $(START_OBJ) $(HAUNTED_MANSION_OBJ) $(LIBGCC_OBJ) haunted_mansion.elf: $(START_OBJ) $(HAUNTED_MANSION_OBJ) $(LIBGCC_OBJ)
model/%/collision.h: model/%/collision.obj
python ../model_generator2/generate_cpp.py $< ${*}_collision > $@
model/%/model.h: model/%/model.obj
python ../model_generator2/generate_cpp.py $< $* > $@
ASSETS = \
model/haunted_mansion/collision.h \
model/haunted_mansion/model.h \
model/cone/model.h \
model/cube/model.h
asset-gen: $(ASSETS)
asset-clean:
rm -f $(ASSETS)
.PHONY: asset-gen asset-clean

View File

@ -1,3 +1,5 @@
#pragma once
const vertex_position cone_position[] = { const vertex_position cone_position[] = {
{0.717689f, -3.608068f, 7.357507f}, {0.717689f, -3.608068f, 7.357507f},
{0.703899f, -3.538740f, 8.075196f}, {0.703899f, -3.538740f, 8.075196f},
@ -591,376 +593,376 @@ const vertex_texture cone_texture[] = {
}; };
const vertex_normal cone_normal[] = { const vertex_normal cone_normal[] = {
{0.009700f, -0.098000f, 0.995100f}, {0.0097f, -0.0980f, 0.9951f},
{0.028600f, -0.290200f, 0.956500f}, {0.0286f, -0.2902f, 0.9565f},
{0.046400f, -0.470900f, 0.881000f}, {0.0464f, -0.4709f, 0.8810f},
{0.062400f, -0.633200f, 0.771500f}, {0.0624f, -0.6332f, 0.7715f},
{0.075900f, -0.770800f, 0.632600f}, {0.0759f, -0.7708f, 0.6326f},
{0.086500f, -0.878600f, 0.469600f}, {0.0865f, -0.8786f, 0.4696f},
{0.040000f, -0.405600f, -0.913200f}, {0.0400f, -0.4056f, -0.9132f},
{0.090300f, -0.970900f, 0.221800f}, {0.0903f, -0.9709f, 0.2218f},
{0.100800f, -0.969900f, 0.221800f}, {0.1008f, -0.9699f, 0.2218f},
{0.093800f, -0.952700f, 0.289000f}, {0.0938f, -0.9527f, 0.2890f},
{0.097600f, -0.990400f, 0.097500f}, {0.0976f, -0.9904f, 0.0975f},
{0.277900f, -0.916100f, 0.289000f}, {0.2779f, -0.9161f, 0.2890f},
{0.256300f, -0.844800f, 0.469600f}, {0.2563f, -0.8448f, 0.4696f},
{0.224800f, -0.741200f, 0.632600f}, {0.2248f, -0.7412f, 0.6326f},
{0.184700f, -0.608800f, 0.771500f}, {0.1847f, -0.6088f, 0.7715f},
{0.137400f, -0.452800f, 0.881000f}, {0.1374f, -0.4528f, 0.8810f},
{0.084600f, -0.279000f, 0.956500f}, {0.0846f, -0.2790f, 0.9565f},
{0.028600f, -0.094200f, 0.995100f}, {0.0286f, -0.0942f, 0.9951f},
{0.288900f, -0.952400f, 0.097500f}, {0.2889f, -0.9524f, 0.0975f},
{0.118200f, -0.390000f, -0.913200f}, {0.1182f, -0.3900f, -0.9132f},
{0.278000f, -0.934600f, 0.221800f}, {0.2780f, -0.9346f, 0.2218f},
{0.288100f, -0.931600f, 0.221800f}, {0.2881f, -0.9316f, 0.2218f},
{0.299900f, -0.561100f, 0.771500f}, {0.2999f, -0.5611f, 0.7715f},
{0.223100f, -0.417300f, 0.881000f}, {0.2231f, -0.4173f, 0.8810f},
{0.137400f, -0.257100f, 0.956500f}, {0.1374f, -0.2571f, 0.9565f},
{0.046400f, -0.086900f, 0.995100f}, {0.0464f, -0.0869f, 0.9951f},
{0.469100f, -0.877700f, 0.097500f}, {0.4691f, -0.8777f, 0.0975f},
{0.451300f, -0.844300f, 0.289000f}, {0.4513f, -0.8443f, 0.2890f},
{0.192100f, -0.359500f, -0.913200f}, {0.1921f, -0.3595f, -0.9132f},
{0.455000f, -0.862400f, 0.221800f}, {0.4550f, -0.8624f, 0.2218f},
{0.464300f, -0.857500f, 0.221800f}, {0.4643f, -0.8575f, 0.2218f},
{0.416200f, -0.778600f, 0.469600f}, {0.4162f, -0.7786f, 0.4696f},
{0.365100f, -0.683100f, 0.632600f}, {0.3651f, -0.6831f, 0.6326f},
{0.631400f, -0.769300f, 0.097500f}, {0.6314f, -0.7693f, 0.0975f},
{0.607300f, -0.740000f, 0.289000f}, {0.6073f, -0.7400f, 0.2890f},
{0.560100f, -0.682500f, 0.469600f}, {0.5601f, -0.6825f, 0.4696f},
{0.491300f, -0.598700f, 0.632600f}, {0.4913f, -0.5987f, 0.6326f},
{0.403600f, -0.491800f, 0.771500f}, {0.4036f, -0.4918f, 0.7715f},
{0.300200f, -0.365800f, 0.881000f}, {0.3002f, -0.3658f, 0.8810f},
{0.185000f, -0.225400f, 0.956500f}, {0.1850f, -0.2254f, 0.9565f},
{0.258500f, -0.315100f, -0.913200f}, {0.2585f, -0.3151f, -0.9132f},
{0.614500f, -0.757100f, 0.221800f}, {0.6145f, -0.7571f, 0.2218f},
{0.622700f, -0.750400f, 0.221800f}, {0.6227f, -0.7504f, 0.2218f},
{0.062500f, -0.076100f, 0.995100f}, {0.0625f, -0.0761f, 0.9951f},
{0.491800f, -0.403600f, 0.771500f}, {0.4918f, -0.4036f, 0.7715f},
{0.365800f, -0.300200f, 0.881000f}, {0.3658f, -0.3002f, 0.8810f},
{0.225400f, -0.185000f, 0.956500f}, {0.2254f, -0.1850f, 0.9565f},
{0.076100f, -0.062500f, 0.995100f}, {0.0761f, -0.0625f, 0.9951f},
{0.769300f, -0.631400f, 0.097600f}, {0.7693f, -0.6314f, 0.0976f},
{0.740000f, -0.607300f, 0.289000f}, {0.7400f, -0.6073f, 0.2890f},
{0.315000f, -0.258600f, -0.913200f}, {0.3150f, -0.2586f, -0.9132f},
{0.750400f, -0.622700f, 0.221800f}, {0.7504f, -0.6227f, 0.2218f},
{0.757100f, -0.614500f, 0.221800f}, {0.7571f, -0.6145f, 0.2218f},
{0.682500f, -0.560100f, 0.469600f}, {0.6825f, -0.5601f, 0.4696f},
{0.598700f, -0.491300f, 0.632600f}, {0.5987f, -0.4913f, 0.6326f},
{0.844300f, -0.451300f, 0.289000f}, {0.8443f, -0.4513f, 0.2890f},
{0.778600f, -0.416200f, 0.469600f}, {0.7786f, -0.4162f, 0.4696f},
{0.683100f, -0.365100f, 0.632600f}, {0.6831f, -0.3651f, 0.6326f},
{0.561100f, -0.299900f, 0.771500f}, {0.5611f, -0.2999f, 0.7715f},
{0.417300f, -0.223100f, 0.881000f}, {0.4173f, -0.2231f, 0.8810f},
{0.257100f, -0.137400f, 0.956600f}, {0.2571f, -0.1374f, 0.9566f},
{0.086900f, -0.046400f, 0.995100f}, {0.0869f, -0.0464f, 0.9951f},
{0.877700f, -0.469100f, 0.097500f}, {0.8777f, -0.4691f, 0.0975f},
{0.359400f, -0.192200f, -0.913200f}, {0.3594f, -0.1922f, -0.9132f},
{0.857400f, -0.464300f, 0.221800f}, {0.8574f, -0.4643f, 0.2218f},
{0.862400f, -0.455000f, 0.221800f}, {0.8624f, -0.4550f, 0.2218f},
{0.452800f, -0.137400f, 0.881000f}, {0.4528f, -0.1374f, 0.8810f},
{0.279000f, -0.084600f, 0.956500f}, {0.2790f, -0.0846f, 0.9565f},
{0.094200f, -0.028600f, 0.995100f}, {0.0942f, -0.0286f, 0.9951f},
{0.952400f, -0.288900f, 0.097500f}, {0.9524f, -0.2889f, 0.0975f},
{0.916100f, -0.277900f, 0.289000f}, {0.9161f, -0.2779f, 0.2890f},
{0.390000f, -0.118400f, -0.913200f}, {0.3900f, -0.1184f, -0.9132f},
{0.931600f, -0.288100f, 0.221800f}, {0.9316f, -0.2881f, 0.2218f},
{0.934600f, -0.278000f, 0.221800f}, {0.9346f, -0.2780f, 0.2218f},
{0.844800f, -0.256300f, 0.469600f}, {0.8448f, -0.2563f, 0.4696f},
{0.741200f, -0.224800f, 0.632600f}, {0.7412f, -0.2248f, 0.6326f},
{0.608800f, -0.184700f, 0.771500f}, {0.6088f, -0.1847f, 0.7715f},
{0.878600f, -0.086500f, 0.469600f}, {0.8786f, -0.0865f, 0.4696f},
{0.770800f, -0.075900f, 0.632600f}, {0.7708f, -0.0759f, 0.6326f},
{0.633200f, -0.062400f, 0.771500f}, {0.6332f, -0.0624f, 0.7715f},
{0.470900f, -0.046400f, 0.881000f}, {0.4709f, -0.0464f, 0.8810f},
{0.290200f, -0.028600f, 0.956500f}, {0.2902f, -0.0286f, 0.9565f},
{0.098000f, -0.009700f, 0.995100f}, {0.0980f, -0.0097f, 0.9951f},
{0.990400f, -0.097500f, 0.097600f}, {0.9904f, -0.0975f, 0.0976f},
{0.405600f, -0.040000f, -0.913200f}, {0.4056f, -0.0400f, -0.9132f},
{0.969900f, -0.100900f, 0.221800f}, {0.9699f, -0.1009f, 0.2218f},
{0.970900f, -0.090300f, 0.221800f}, {0.9709f, -0.0903f, 0.2218f},
{0.952700f, -0.093800f, 0.289000f}, {0.9527f, -0.0938f, 0.2890f},
{0.290200f, 0.028600f, 0.956500f}, {0.2902f, 0.0286f, 0.9565f},
{0.098000f, 0.009600f, 0.995100f}, {0.0980f, 0.0096f, 0.9951f},
{0.990400f, 0.097500f, 0.097500f}, {0.9904f, 0.0975f, 0.0975f},
{0.952700f, 0.093800f, 0.289000f}, {0.9527f, 0.0938f, 0.2890f},
{0.405600f, 0.039900f, -0.913200f}, {0.4056f, 0.0399f, -0.9132f},
{0.970900f, 0.090300f, 0.221800f}, {0.9709f, 0.0903f, 0.2218f},
{0.969900f, 0.100800f, 0.221800f}, {0.9699f, 0.1008f, 0.2218f},
{0.878600f, 0.086500f, 0.469600f}, {0.8786f, 0.0865f, 0.4696f},
{0.770800f, 0.075900f, 0.632600f}, {0.7708f, 0.0759f, 0.6326f},
{0.633200f, 0.062400f, 0.771500f}, {0.6332f, 0.0624f, 0.7715f},
{0.470900f, 0.046400f, 0.881000f}, {0.4709f, 0.0464f, 0.8810f},
{0.844800f, 0.256300f, 0.469600f}, {0.8448f, 0.2563f, 0.4696f},
{0.741200f, 0.224800f, 0.632600f}, {0.7412f, 0.2248f, 0.6326f},
{0.608800f, 0.184700f, 0.771500f}, {0.6088f, 0.1847f, 0.7715f},
{0.452800f, 0.137400f, 0.881000f}, {0.4528f, 0.1374f, 0.8810f},
{0.279000f, 0.084600f, 0.956500f}, {0.2790f, 0.0846f, 0.9565f},
{0.390000f, 0.118200f, -0.913200f}, {0.3900f, 0.1182f, -0.9132f},
{0.934600f, 0.278000f, 0.221800f}, {0.9346f, 0.2780f, 0.2218f},
{0.931600f, 0.288100f, 0.221800f}, {0.9316f, 0.2881f, 0.2218f},
{0.094200f, 0.028600f, 0.995100f}, {0.0942f, 0.0286f, 0.9951f},
{0.952400f, 0.288900f, 0.097500f}, {0.9524f, 0.2889f, 0.0975f},
{0.916100f, 0.277900f, 0.289000f}, {0.9161f, 0.2779f, 0.2890f},
{0.257100f, 0.137400f, 0.956500f}, {0.2571f, 0.1374f, 0.9565f},
{0.086900f, 0.046400f, 0.995100f}, {0.0869f, 0.0464f, 0.9951f},
{0.877700f, 0.469100f, 0.097500f}, {0.8777f, 0.4691f, 0.0975f},
{0.844300f, 0.451300f, 0.289000f}, {0.8443f, 0.4513f, 0.2890f},
{0.359500f, 0.192100f, -0.913200f}, {0.3595f, 0.1921f, -0.9132f},
{0.862400f, 0.455000f, 0.221800f}, {0.8624f, 0.4550f, 0.2218f},
{0.857500f, 0.464300f, 0.221800f}, {0.8575f, 0.4643f, 0.2218f},
{0.778600f, 0.416200f, 0.469600f}, {0.7786f, 0.4162f, 0.4696f},
{0.683100f, 0.365100f, 0.632600f}, {0.6831f, 0.3651f, 0.6326f},
{0.561100f, 0.299900f, 0.771500f}, {0.5611f, 0.2999f, 0.7715f},
{0.417300f, 0.223000f, 0.881000f}, {0.4173f, 0.2230f, 0.8810f},
{0.598700f, 0.491300f, 0.632600f}, {0.5987f, 0.4913f, 0.6326f},
{0.491800f, 0.403600f, 0.771500f}, {0.4918f, 0.4036f, 0.7715f},
{0.365800f, 0.300200f, 0.881000f}, {0.3658f, 0.3002f, 0.8810f},
{0.225400f, 0.185000f, 0.956600f}, {0.2254f, 0.1850f, 0.9566f},
{0.315100f, 0.258500f, -0.913200f}, {0.3151f, 0.2585f, -0.9132f},
{0.757100f, 0.614500f, 0.221800f}, {0.7571f, 0.6145f, 0.2218f},
{0.750400f, 0.622700f, 0.221800f}, {0.7504f, 0.6227f, 0.2218f},
{0.076100f, 0.062500f, 0.995100f}, {0.0761f, 0.0625f, 0.9951f},
{0.769300f, 0.631400f, 0.097500f}, {0.7693f, 0.6314f, 0.0975f},
{0.740000f, 0.607300f, 0.289000f}, {0.7400f, 0.6073f, 0.2890f},
{0.682500f, 0.560100f, 0.469600f}, {0.6825f, 0.5601f, 0.4696f},
{0.062500f, 0.076100f, 0.995100f}, {0.0625f, 0.0761f, 0.9951f},
{0.631400f, 0.769300f, 0.097500f}, {0.6314f, 0.7693f, 0.0975f},
{0.607300f, 0.740000f, 0.289000f}, {0.6073f, 0.7400f, 0.2890f},
{0.258600f, 0.315000f, -0.913200f}, {0.2586f, 0.3150f, -0.9132f},
{0.622700f, 0.750400f, 0.221800f}, {0.6227f, 0.7504f, 0.2218f},
{0.614500f, 0.757100f, 0.221800f}, {0.6145f, 0.7571f, 0.2218f},
{0.560100f, 0.682500f, 0.469600f}, {0.5601f, 0.6825f, 0.4696f},
{0.491300f, 0.598700f, 0.632600f}, {0.4913f, 0.5987f, 0.6326f},
{0.403600f, 0.491800f, 0.771500f}, {0.4036f, 0.4918f, 0.7715f},
{0.300200f, 0.365800f, 0.881000f}, {0.3002f, 0.3658f, 0.8810f},
{0.185000f, 0.225400f, 0.956600f}, {0.1850f, 0.2254f, 0.9566f},
{0.365100f, 0.683100f, 0.632600f}, {0.3651f, 0.6831f, 0.6326f},
{0.299900f, 0.561100f, 0.771500f}, {0.2999f, 0.5611f, 0.7715f},
{0.223100f, 0.417300f, 0.881000f}, {0.2231f, 0.4173f, 0.8810f},
{0.137400f, 0.257100f, 0.956500f}, {0.1374f, 0.2571f, 0.9565f},
{0.046400f, 0.086900f, 0.995100f}, {0.0464f, 0.0869f, 0.9951f},
{0.469100f, 0.877700f, 0.097500f}, {0.4691f, 0.8777f, 0.0975f},
{0.451300f, 0.844300f, 0.289000f}, {0.4513f, 0.8443f, 0.2890f},
{0.192200f, 0.359400f, -0.913200f}, {0.1922f, 0.3594f, -0.9132f},
{0.464300f, 0.857400f, 0.221800f}, {0.4643f, 0.8574f, 0.2218f},
{0.455000f, 0.862400f, 0.221800f}, {0.4550f, 0.8624f, 0.2218f},
{0.416200f, 0.778600f, 0.469600f}, {0.4162f, 0.7786f, 0.4696f},
{0.028600f, 0.094200f, 0.995100f}, {0.0286f, 0.0942f, 0.9951f},
{0.288900f, 0.952400f, 0.097500f}, {0.2889f, 0.9524f, 0.0975f},
{0.277900f, 0.916100f, 0.289000f}, {0.2779f, 0.9161f, 0.2890f},
{0.256300f, 0.844800f, 0.469600f}, {0.2563f, 0.8448f, 0.4696f},
{0.224800f, 0.741200f, 0.632600f}, {0.2248f, 0.7412f, 0.6326f},
{0.184700f, 0.608800f, 0.771500f}, {0.1847f, 0.6088f, 0.7715f},
{0.137400f, 0.452800f, 0.881000f}, {0.1374f, 0.4528f, 0.8810f},
{0.084600f, 0.279000f, 0.956500f}, {0.0846f, 0.2790f, 0.9565f},
{0.118400f, 0.390000f, -0.913200f}, {0.1184f, 0.3900f, -0.9132f},
{0.288100f, 0.931600f, 0.221800f}, {0.2881f, 0.9316f, 0.2218f},
{0.278000f, 0.934600f, 0.221800f}, {0.2780f, 0.9346f, 0.2218f},
{0.062400f, 0.633200f, 0.771500f}, {0.0624f, 0.6332f, 0.7715f},
{0.046400f, 0.470900f, 0.881000f}, {0.0464f, 0.4709f, 0.8810f},
{0.028600f, 0.290200f, 0.956500f}, {0.0286f, 0.2902f, 0.9565f},
{0.009700f, 0.098000f, 0.995100f}, {0.0097f, 0.0980f, 0.9951f},
{0.097500f, 0.990400f, 0.097500f}, {0.0975f, 0.9904f, 0.0975f},
{0.093800f, 0.952700f, 0.289000f}, {0.0938f, 0.9527f, 0.2890f},
{0.040000f, 0.405600f, -0.913200f}, {0.0400f, 0.4056f, -0.9132f},
{0.100900f, 0.969900f, 0.221800f}, {0.1009f, 0.9699f, 0.2218f},
{0.090300f, 0.970900f, 0.221800f}, {0.0903f, 0.9709f, 0.2218f},
{0.086500f, 0.878600f, 0.469600f}, {0.0865f, 0.8786f, 0.4696f},
{0.075900f, 0.770800f, 0.632600f}, {0.0759f, 0.7708f, 0.6326f},
{-0.093800f, 0.952700f, 0.289000f}, {-0.0938f, 0.9527f, 0.2890f},
{-0.086500f, 0.878600f, 0.469600f}, {-0.0865f, 0.8786f, 0.4696f},
{-0.075900f, 0.770800f, 0.632600f}, {-0.0759f, 0.7708f, 0.6326f},
{-0.062400f, 0.633200f, 0.771500f}, {-0.0624f, 0.6332f, 0.7715f},
{-0.046400f, 0.470900f, 0.881000f}, {-0.0464f, 0.4709f, 0.8810f},
{-0.028600f, 0.290200f, 0.956500f}, {-0.0286f, 0.2902f, 0.9565f},
{-0.039900f, 0.405600f, -0.913200f}, {-0.0399f, 0.4056f, -0.9132f},
{-0.090300f, 0.970900f, 0.221800f}, {-0.0903f, 0.9709f, 0.2218f},
{-0.100800f, 0.969900f, 0.221800f}, {-0.1008f, 0.9699f, 0.2218f},
{-0.009700f, 0.098000f, 0.995100f}, {-0.0097f, 0.0980f, 0.9951f},
{-0.097600f, 0.990400f, 0.097500f}, {-0.0976f, 0.9904f, 0.0975f},
{-0.137400f, 0.452800f, 0.881000f}, {-0.1374f, 0.4528f, 0.8810f},
{-0.084600f, 0.279000f, 0.956500f}, {-0.0846f, 0.2790f, 0.9565f},
{-0.028600f, 0.094200f, 0.995100f}, {-0.0286f, 0.0942f, 0.9951f},
{-0.288900f, 0.952400f, 0.097500f}, {-0.2889f, 0.9524f, 0.0975f},
{-0.277900f, 0.916100f, 0.289000f}, {-0.2779f, 0.9161f, 0.2890f},
{-0.118200f, 0.390000f, -0.913200f}, {-0.1182f, 0.3900f, -0.9132f},
{-0.278000f, 0.934600f, 0.221800f}, {-0.2780f, 0.9346f, 0.2218f},
{-0.288100f, 0.931600f, 0.221800f}, {-0.2881f, 0.9316f, 0.2218f},
{-0.256300f, 0.844800f, 0.469600f}, {-0.2563f, 0.8448f, 0.4696f},
{-0.224800f, 0.741200f, 0.632600f}, {-0.2248f, 0.7412f, 0.6326f},
{-0.184700f, 0.608800f, 0.771500f}, {-0.1847f, 0.6088f, 0.7715f},
{-0.451300f, 0.844300f, 0.289000f}, {-0.4513f, 0.8443f, 0.2890f},
{-0.416200f, 0.778600f, 0.469600f}, {-0.4162f, 0.7786f, 0.4696f},
{-0.365100f, 0.683100f, 0.632600f}, {-0.3651f, 0.6831f, 0.6326f},
{-0.299900f, 0.561100f, 0.771500f}, {-0.2999f, 0.5611f, 0.7715f},
{-0.223100f, 0.417300f, 0.881000f}, {-0.2231f, 0.4173f, 0.8810f},
{-0.137400f, 0.257100f, 0.956500f}, {-0.1374f, 0.2571f, 0.9565f},
{-0.046400f, 0.086900f, 0.995100f}, {-0.0464f, 0.0869f, 0.9951f},
{-0.469100f, 0.877700f, 0.097500f}, {-0.4691f, 0.8777f, 0.0975f},
{-0.192100f, 0.359500f, -0.913200f}, {-0.1921f, 0.3595f, -0.9132f},
{-0.455000f, 0.862400f, 0.221800f}, {-0.4550f, 0.8624f, 0.2218f},
{-0.464300f, 0.857500f, 0.221800f}, {-0.4643f, 0.8575f, 0.2218f},
{-0.300200f, 0.365800f, 0.881000f}, {-0.3002f, 0.3658f, 0.8810f},
{-0.185000f, 0.225400f, 0.956600f}, {-0.1850f, 0.2254f, 0.9566f},
{-0.062500f, 0.076100f, 0.995100f}, {-0.0625f, 0.0761f, 0.9951f},
{-0.631400f, 0.769300f, 0.097500f}, {-0.6314f, 0.7693f, 0.0975f},
{-0.607300f, 0.740000f, 0.289000f}, {-0.6073f, 0.7400f, 0.2890f},
{-0.258500f, 0.315100f, -0.913200f}, {-0.2585f, 0.3151f, -0.9132f},
{-0.614500f, 0.757100f, 0.221800f}, {-0.6145f, 0.7571f, 0.2218f},
{-0.622700f, 0.750400f, 0.221800f}, {-0.6227f, 0.7504f, 0.2218f},
{-0.560100f, 0.682500f, 0.469600f}, {-0.5601f, 0.6825f, 0.4696f},
{-0.491300f, 0.598700f, 0.632600f}, {-0.4913f, 0.5987f, 0.6326f},
{-0.403600f, 0.491800f, 0.771500f}, {-0.4036f, 0.4918f, 0.7715f},
{-0.682500f, 0.560100f, 0.469600f}, {-0.6825f, 0.5601f, 0.4696f},
{-0.598700f, 0.491300f, 0.632600f}, {-0.5987f, 0.4913f, 0.6326f},
{-0.491800f, 0.403600f, 0.771500f}, {-0.4918f, 0.4036f, 0.7715f},
{-0.365800f, 0.300200f, 0.881000f}, {-0.3658f, 0.3002f, 0.8810f},
{-0.225400f, 0.185000f, 0.956500f}, {-0.2254f, 0.1850f, 0.9565f},
{-0.076100f, 0.062500f, 0.995100f}, {-0.0761f, 0.0625f, 0.9951f},
{-0.769300f, 0.631400f, 0.097500f}, {-0.7693f, 0.6314f, 0.0975f},
{-0.315000f, 0.258600f, -0.913200f}, {-0.3150f, 0.2586f, -0.9132f},
{-0.750400f, 0.622700f, 0.221800f}, {-0.7504f, 0.6227f, 0.2218f},
{-0.757100f, 0.614500f, 0.221800f}, {-0.7571f, 0.6145f, 0.2218f},
{-0.740000f, 0.607300f, 0.289000f}, {-0.7400f, 0.6073f, 0.2890f},
{-0.257100f, 0.137400f, 0.956500f}, {-0.2571f, 0.1374f, 0.9565f},
{-0.086900f, 0.046400f, 0.995100f}, {-0.0869f, 0.0464f, 0.9951f},
{-0.877700f, 0.469100f, 0.097500f}, {-0.8777f, 0.4691f, 0.0975f},
{-0.844300f, 0.451300f, 0.289000f}, {-0.8443f, 0.4513f, 0.2890f},
{-0.359400f, 0.192200f, -0.913200f}, {-0.3594f, 0.1922f, -0.9132f},
{-0.857400f, 0.464300f, 0.221800f}, {-0.8574f, 0.4643f, 0.2218f},
{-0.862400f, 0.455000f, 0.221800f}, {-0.8624f, 0.4550f, 0.2218f},
{-0.778600f, 0.416200f, 0.469600f}, {-0.7786f, 0.4162f, 0.4696f},
{-0.683100f, 0.365100f, 0.632600f}, {-0.6831f, 0.3651f, 0.6326f},
{-0.561100f, 0.299900f, 0.771500f}, {-0.5611f, 0.2999f, 0.7715f},
{-0.417300f, 0.223000f, 0.881000f}, {-0.4173f, 0.2230f, 0.8810f},
{-0.844800f, 0.256300f, 0.469600f}, {-0.8448f, 0.2563f, 0.4696f},
{-0.741200f, 0.224800f, 0.632600f}, {-0.7412f, 0.2248f, 0.6326f},
{-0.608800f, 0.184700f, 0.771500f}, {-0.6088f, 0.1847f, 0.7715f},
{-0.452800f, 0.137400f, 0.881000f}, {-0.4528f, 0.1374f, 0.8810f},
{-0.279000f, 0.084600f, 0.956500f}, {-0.2790f, 0.0846f, 0.9565f},
{-0.390000f, 0.118400f, -0.913200f}, {-0.3900f, 0.1184f, -0.9132f},
{-0.931600f, 0.288100f, 0.221800f}, {-0.9316f, 0.2881f, 0.2218f},
{-0.934600f, 0.278000f, 0.221800f}, {-0.9346f, 0.2780f, 0.2218f},
{-0.094200f, 0.028600f, 0.995100f}, {-0.0942f, 0.0286f, 0.9951f},
{-0.952400f, 0.288900f, 0.097500f}, {-0.9524f, 0.2889f, 0.0975f},
{-0.916100f, 0.277900f, 0.289000f}, {-0.9161f, 0.2779f, 0.2890f},
{-0.290200f, 0.028600f, 0.956500f}, {-0.2902f, 0.0286f, 0.9565f},
{-0.098000f, 0.009700f, 0.995100f}, {-0.0980f, 0.0097f, 0.9951f},
{-0.990400f, 0.097500f, 0.097500f}, {-0.9904f, 0.0975f, 0.0975f},
{-0.952700f, 0.093800f, 0.289000f}, {-0.9527f, 0.0938f, 0.2890f},
{-0.405600f, 0.040000f, -0.913200f}, {-0.4056f, 0.0400f, -0.9132f},
{-0.969900f, 0.100900f, 0.221800f}, {-0.9699f, 0.1009f, 0.2218f},
{-0.970900f, 0.090300f, 0.221800f}, {-0.9709f, 0.0903f, 0.2218f},
{-0.878600f, 0.086500f, 0.469600f}, {-0.8786f, 0.0865f, 0.4696f},
{-0.770800f, 0.075900f, 0.632600f}, {-0.7708f, 0.0759f, 0.6326f},
{-0.633200f, 0.062400f, 0.771500f}, {-0.6332f, 0.0624f, 0.7715f},
{-0.470900f, 0.046400f, 0.881000f}, {-0.4709f, 0.0464f, 0.8810f},
{-0.770800f, -0.075900f, 0.632600f}, {-0.7708f, -0.0759f, 0.6326f},
{-0.633200f, -0.062400f, 0.771500f}, {-0.6332f, -0.0624f, 0.7715f},
{-0.470900f, -0.046400f, 0.881000f}, {-0.4709f, -0.0464f, 0.8810f},
{-0.290200f, -0.028600f, 0.956500f}, {-0.2902f, -0.0286f, 0.9565f},
{-0.098000f, -0.009600f, 0.995100f}, {-0.0980f, -0.0096f, 0.9951f},
{-0.990400f, -0.097600f, 0.097500f}, {-0.9904f, -0.0976f, 0.0975f},
{-0.952700f, -0.093800f, 0.289000f}, {-0.9527f, -0.0938f, 0.2890f},
{-0.405600f, -0.039900f, -0.913200f}, {-0.4056f, -0.0399f, -0.9132f},
{-0.970900f, -0.090300f, 0.221800f}, {-0.9709f, -0.0903f, 0.2218f},
{-0.969900f, -0.100800f, 0.221800f}, {-0.9699f, -0.1008f, 0.2218f},
{-0.878600f, -0.086500f, 0.469600f}, {-0.8786f, -0.0865f, 0.4696f},
{-0.094200f, -0.028600f, 0.995100f}, {-0.0942f, -0.0286f, 0.9951f},
{-0.952400f, -0.288900f, 0.097500f}, {-0.9524f, -0.2889f, 0.0975f},
{-0.916100f, -0.277900f, 0.289000f}, {-0.9161f, -0.2779f, 0.2890f},
{-0.390000f, -0.118200f, -0.913200f}, {-0.3900f, -0.1182f, -0.9132f},
{-0.934600f, -0.278000f, 0.221800f}, {-0.9346f, -0.2780f, 0.2218f},
{-0.931600f, -0.288100f, 0.221800f}, {-0.9316f, -0.2881f, 0.2218f},
{-0.844800f, -0.256300f, 0.469600f}, {-0.8448f, -0.2563f, 0.4696f},
{-0.741200f, -0.224800f, 0.632600f}, {-0.7412f, -0.2248f, 0.6326f},
{-0.608800f, -0.184700f, 0.771500f}, {-0.6088f, -0.1847f, 0.7715f},
{-0.452800f, -0.137400f, 0.881000f}, {-0.4528f, -0.1374f, 0.8810f},
{-0.279000f, -0.084600f, 0.956600f}, {-0.2790f, -0.0846f, 0.9566f},
{-0.561100f, -0.299900f, 0.771500f}, {-0.5611f, -0.2999f, 0.7715f},
{-0.417300f, -0.223000f, 0.881000f}, {-0.4173f, -0.2230f, 0.8810f},
{-0.257100f, -0.137400f, 0.956500f}, {-0.2571f, -0.1374f, 0.9565f},
{-0.086900f, -0.046400f, 0.995100f}, {-0.0869f, -0.0464f, 0.9951f},
{-0.877700f, -0.469100f, 0.097500f}, {-0.8777f, -0.4691f, 0.0975f},
{-0.844300f, -0.451300f, 0.289000f}, {-0.8443f, -0.4513f, 0.2890f},
{-0.359500f, -0.192100f, -0.913200f}, {-0.3595f, -0.1921f, -0.9132f},
{-0.862400f, -0.455000f, 0.221800f}, {-0.8624f, -0.4550f, 0.2218f},
{-0.857500f, -0.464300f, 0.221800f}, {-0.8575f, -0.4643f, 0.2218f},
{-0.778600f, -0.416200f, 0.469600f}, {-0.7786f, -0.4162f, 0.4696f},
{-0.683100f, -0.365100f, 0.632600f}, {-0.6831f, -0.3651f, 0.6326f},
{-0.769300f, -0.631400f, 0.097500f}, {-0.7693f, -0.6314f, 0.0975f},
{-0.740000f, -0.607300f, 0.289000f}, {-0.7400f, -0.6073f, 0.2890f},
{-0.682500f, -0.560100f, 0.469600f}, {-0.6825f, -0.5601f, 0.4696f},
{-0.598700f, -0.491300f, 0.632600f}, {-0.5987f, -0.4913f, 0.6326f},
{-0.491800f, -0.403600f, 0.771500f}, {-0.4918f, -0.4036f, 0.7715f},
{-0.365800f, -0.300200f, 0.881000f}, {-0.3658f, -0.3002f, 0.8810f},
{-0.225400f, -0.185000f, 0.956500f}, {-0.2254f, -0.1850f, 0.9565f},
{-0.315100f, -0.258500f, -0.913200f}, {-0.3151f, -0.2585f, -0.9132f},
{-0.757100f, -0.614500f, 0.221800f}, {-0.7571f, -0.6145f, 0.2218f},
{-0.750400f, -0.622700f, 0.221800f}, {-0.7504f, -0.6227f, 0.2218f},
{-0.076100f, -0.062500f, 0.995100f}, {-0.0761f, -0.0625f, 0.9951f},
{-0.403600f, -0.491800f, 0.771500f}, {-0.4036f, -0.4918f, 0.7715f},
{-0.300200f, -0.365800f, 0.881000f}, {-0.3002f, -0.3658f, 0.8810f},
{-0.185000f, -0.225400f, 0.956500f}, {-0.1850f, -0.2254f, 0.9565f},
{-0.062500f, -0.076100f, 0.995100f}, {-0.0625f, -0.0761f, 0.9951f},
{-0.631400f, -0.769300f, 0.097500f}, {-0.6314f, -0.7693f, 0.0975f},
{-0.607300f, -0.740000f, 0.289000f}, {-0.6073f, -0.7400f, 0.2890f},
{-0.258600f, -0.315000f, -0.913200f}, {-0.2586f, -0.3150f, -0.9132f},
{-0.622700f, -0.750400f, 0.221800f}, {-0.6227f, -0.7504f, 0.2218f},
{-0.614500f, -0.757100f, 0.221800f}, {-0.6145f, -0.7571f, 0.2218f},
{-0.560100f, -0.682500f, 0.469600f}, {-0.5601f, -0.6825f, 0.4696f},
{-0.491300f, -0.598700f, 0.632600f}, {-0.4913f, -0.5987f, 0.6326f},
{-0.451300f, -0.844300f, 0.289000f}, {-0.4513f, -0.8443f, 0.2890f},
{-0.416200f, -0.778600f, 0.469600f}, {-0.4162f, -0.7786f, 0.4696f},
{-0.365100f, -0.683100f, 0.632600f}, {-0.3651f, -0.6831f, 0.6326f},
{-0.299900f, -0.561100f, 0.771500f}, {-0.2999f, -0.5611f, 0.7715f},
{-0.223100f, -0.417300f, 0.881000f}, {-0.2231f, -0.4173f, 0.8810f},
{-0.137400f, -0.257100f, 0.956500f}, {-0.1374f, -0.2571f, 0.9565f},
{-0.192200f, -0.359400f, -0.913200f}, {-0.1922f, -0.3594f, -0.9132f},
{-0.464300f, -0.857400f, 0.221800f}, {-0.4643f, -0.8574f, 0.2218f},
{-0.455000f, -0.862400f, 0.221800f}, {-0.4550f, -0.8624f, 0.2218f},
{-0.046400f, -0.086900f, 0.995100f}, {-0.0464f, -0.0869f, 0.9951f},
{-0.469100f, -0.877700f, 0.097500f}, {-0.4691f, -0.8777f, 0.0975f},
{-0.137400f, -0.452800f, 0.881000f}, {-0.1374f, -0.4528f, 0.8810f},
{-0.084600f, -0.279000f, 0.956600f}, {-0.0846f, -0.2790f, 0.9566f},
{-0.028600f, -0.094200f, 0.995100f}, {-0.0286f, -0.0942f, 0.9951f},
{-0.288900f, -0.952400f, 0.097500f}, {-0.2889f, -0.9524f, 0.0975f},
{-0.277900f, -0.916100f, 0.289000f}, {-0.2779f, -0.9161f, 0.2890f},
{-0.118400f, -0.390000f, -0.913200f}, {-0.1184f, -0.3900f, -0.9132f},
{-0.288100f, -0.931600f, 0.221800f}, {-0.2881f, -0.9316f, 0.2218f},
{-0.278000f, -0.934600f, 0.221800f}, {-0.2780f, -0.9346f, 0.2218f},
{-0.256300f, -0.844800f, 0.469600f}, {-0.2563f, -0.8448f, 0.4696f},
{-0.224800f, -0.741200f, 0.632600f}, {-0.2248f, -0.7412f, 0.6326f},
{-0.184700f, -0.608800f, 0.771500f}, {-0.1847f, -0.6088f, 0.7715f},
{-0.093800f, -0.952700f, 0.289000f}, {-0.0938f, -0.9527f, 0.2890f},
{-0.086500f, -0.878600f, 0.469600f}, {-0.0865f, -0.8786f, 0.4696f},
{-0.075900f, -0.770800f, 0.632600f}, {-0.0759f, -0.7708f, 0.6326f},
{-0.062400f, -0.633200f, 0.771500f}, {-0.0624f, -0.6332f, 0.7715f},
{-0.046400f, -0.470900f, 0.881000f}, {-0.0464f, -0.4709f, 0.8810f},
{-0.028600f, -0.290200f, 0.956500f}, {-0.0286f, -0.2902f, 0.9565f},
{-0.009700f, -0.098000f, 0.995100f}, {-0.0097f, -0.0980f, 0.9951f},
{-0.097600f, -0.990400f, 0.097500f}, {-0.0976f, -0.9904f, 0.0975f},
{-0.040000f, -0.405600f, -0.913200f}, {-0.0400f, -0.4056f, -0.9132f},
{-0.100900f, -0.969900f, 0.221800f}, {-0.1009f, -0.9699f, 0.2218f},
{-0.090300f, -0.970900f, 0.221800f}, {-0.0903f, -0.9709f, 0.2218f},
{0.097500f, -0.990400f, 0.097500f}, {0.0975f, -0.9904f, 0.0975f},
{0.084600f, -0.279000f, 0.956600f}, {0.0846f, -0.2790f, 0.9566f},
{0.769300f, -0.631400f, 0.097500f}, {0.7693f, -0.6314f, 0.0975f},
{0.257100f, -0.137400f, 0.956500f}, {0.2571f, -0.1374f, 0.9565f},
{0.990400f, -0.097500f, 0.097500f}, {0.9904f, -0.0975f, 0.0975f},
{0.990400f, 0.097600f, 0.097500f}, {0.9904f, 0.0976f, 0.0975f},
{0.417300f, 0.223100f, 0.881000f}, {0.4173f, 0.2231f, 0.8810f},
{0.225400f, 0.185000f, 0.956500f}, {0.2254f, 0.1850f, 0.9565f},
{0.185000f, 0.225400f, 0.956500f}, {0.1850f, 0.2254f, 0.9565f},
{0.223000f, 0.417300f, 0.881000f}, {0.2230f, 0.4173f, 0.8810f},
{-0.185000f, 0.225400f, 0.956500f}, {-0.1850f, 0.2254f, 0.9565f},
{-0.257100f, 0.137400f, 0.956600f}, {-0.2571f, 0.1374f, 0.9566f},
{-0.417300f, 0.223100f, 0.881000f}, {-0.4173f, 0.2231f, 0.8810f},
{-0.279000f, -0.084600f, 0.956500f}, {-0.2790f, -0.0846f, 0.9565f},
{-0.417300f, -0.223100f, 0.881000f}, {-0.4173f, -0.2231f, 0.8810f},
{-0.137400f, -0.257100f, 0.956600f}, {-0.1374f, -0.2571f, 0.9566f},
{-0.084600f, -0.279000f, 0.956500f}, {-0.0846f, -0.2790f, 0.9565f},
{-0.097500f, -0.990400f, 0.097500f}, {-0.0975f, -0.9904f, 0.0975f},
}; };
const union triangle cone_light_cone_triangle[] = { const union triangle cone_light_cone_triangle[] = {
@ -3529,11 +3531,16 @@ const union triangle cone_light_cone_triangle[] = {
const union quadrilateral cone_light_cone_quadrilateral[] = { const union quadrilateral cone_light_cone_quadrilateral[] = {
}; };
const union line cone_light_cone_line[] = {
};
const struct object cone_light_cone = { const struct object cone_light_cone = {
.triangle = &cone_light_cone_triangle[0], .triangle = &cone_light_cone_triangle[0],
.quadrilateral = &cone_light_cone_quadrilateral[0], .quadrilateral = &cone_light_cone_quadrilateral[0],
.line = &cone_light_cone_line[0],
.triangle_count = 512, .triangle_count = 512,
.quadrilateral_count = 0, .quadrilateral_count = 0,
.line_count = 0,
.material = 0, .material = 0,
}; };

View File

@ -1,3 +1,5 @@
#pragma once
const vertex_position cube_position[] = { const vertex_position cube_position[] = {
{-1.000000f, -1.000000f, 1.000000f}, {-1.000000f, -1.000000f, 1.000000f},
{-1.000000f, 1.000000f, 1.000000f}, {-1.000000f, 1.000000f, 1.000000f},
@ -27,12 +29,12 @@ const vertex_texture cube_texture[] = {
}; };
const vertex_normal cube_normal[] = { const vertex_normal cube_normal[] = {
{-1.000000f, -0.000000f, -0.000000f}, {-1.0000f, -0.0000f, -0.0000f},
{-0.000000f, -0.000000f, -1.000000f}, {-0.0000f, -0.0000f, -1.0000f},
{1.000000f, -0.000000f, -0.000000f}, {1.0000f, -0.0000f, -0.0000f},
{-0.000000f, -0.000000f, 1.000000f}, {-0.0000f, -0.0000f, 1.0000f},
{-0.000000f, -1.000000f, -0.000000f}, {-0.0000f, -1.0000f, -0.0000f},
{-0.000000f, 1.000000f, -0.000000f}, {-0.0000f, 1.0000f, -0.0000f},
}; };
const union triangle cube_Cube_triangle[] = { const union triangle cube_Cube_triangle[] = {
@ -101,11 +103,16 @@ const union triangle cube_Cube_triangle[] = {
const union quadrilateral cube_Cube_quadrilateral[] = { const union quadrilateral cube_Cube_quadrilateral[] = {
}; };
const union line cube_Cube_line[] = {
};
const struct object cube_Cube = { const struct object cube_Cube = {
.triangle = &cube_Cube_triangle[0], .triangle = &cube_Cube_triangle[0],
.quadrilateral = &cube_Cube_quadrilateral[0], .quadrilateral = &cube_Cube_quadrilateral[0],
.line = &cube_Cube_line[0],
.triangle_count = 12, .triangle_count = 12,
.quadrilateral_count = 0, .quadrilateral_count = 0,
.line_count = 0,
.material = 0, .material = 0,
}; };

View File

@ -187,13 +187,13 @@ const vertex_texture haunted_mansion_collision_texture[] = {
const vertex_normal haunted_mansion_collision_normal[] = { const vertex_normal haunted_mansion_collision_normal[] = {
}; };
const union triangle haunted_mansion_collision_house_coll_display_triangle[] = { const union triangle haunted_mansion_collision_house_collision_triangle[] = {
}; };
const union quadrilateral haunted_mansion_collision_house_coll_display_quadrilateral[] = { const union quadrilateral haunted_mansion_collision_house_collision_quadrilateral[] = {
}; };
const union line haunted_mansion_collision_house_coll_display_line[] = { const union line haunted_mansion_collision_house_collision_line[] = {
{ {
.a = 8, .a = 8,
.b = 122, .b = 122,
@ -908,10 +908,10 @@ const union line haunted_mansion_collision_house_coll_display_line[] = {
}, },
}; };
const struct object haunted_mansion_collision_house_coll_display = { const struct object haunted_mansion_collision_house_collision = {
.triangle = &haunted_mansion_collision_house_coll_display_triangle[0], .triangle = &haunted_mansion_collision_house_collision_triangle[0],
.quadrilateral = &haunted_mansion_collision_house_coll_display_quadrilateral[0], .quadrilateral = &haunted_mansion_collision_house_collision_quadrilateral[0],
.line = &haunted_mansion_collision_house_coll_display_line[0], .line = &haunted_mansion_collision_house_collision_line[0],
.triangle_count = 0, .triangle_count = 0,
.quadrilateral_count = 0, .quadrilateral_count = 0,
.line_count = 178, .line_count = 178,
@ -919,7 +919,7 @@ const struct object haunted_mansion_collision_house_coll_display = {
}; };
const struct object * haunted_mansion_collision_object[] = { const struct object * haunted_mansion_collision_object[] = {
&haunted_mansion_collision_house_coll_display, &haunted_mansion_collision_house_collision,
}; };
const struct model haunted_mansion_collision_model = { const struct model haunted_mansion_collision_model = {
@ -929,3 +929,4 @@ const struct model haunted_mansion_collision_model = {
.object = haunted_mansion_collision_object, .object = haunted_mansion_collision_object,
.object_count = 1 .object_count = 1
}; };

View File

@ -0,0 +1,2 @@
# Blender 4.2.1 LTS MTL File: 'hauntedMansion.blend'
# www.blender.org

View File

@ -0,0 +1,360 @@
# Blender 4.2.1 LTS
# www.blender.org
mtllib collision.mtl
o house-collision
v -18.171686 -0.000001 -9.468655
v 11.468163 -0.000001 -9.468655
v -6.959891 -0.000001 -11.768676
v 0.458513 -0.000001 -11.768676
v -6.487949 0.000000 1.959310
v -6.959890 0.000000 1.959310
v -0.000950 0.000000 1.959310
v 0.458513 0.000000 1.959310
v 7.700261 0.000000 0.034380
v -6.684578 0.000000 1.639923
v -1.695189 -0.000000 -0.260841
v 0.395491 0.000000 1.639923
v -18.171686 -0.000000 -4.497604
v -6.487949 -0.000000 -4.497604
v -6.959890 -0.000000 -4.497604
v -0.000950 -0.000000 -4.497604
v 0.458513 -0.000000 -4.497604
v -6.684578 -0.000000 -4.178310
v -1.695189 -0.000000 -2.417353
v 5.209778 -0.000001 -9.468655
v 6.403114 0.000000 0.034380
v 4.928789 -0.000001 -11.768676
v 4.928789 0.000000 1.959310
v 4.928789 0.000000 1.639923
v 4.928789 -0.000000 -4.497604
v 4.928789 -0.000000 -4.178310
v -18.171686 0.000000 5.530122
v 11.468163 0.000000 5.530122
v -4.961135 -0.000000 -0.516239
v -4.961135 -0.000000 -2.003563
v 5.209778 0.000000 5.530122
v 11.468163 -0.000000 -0.286729
v 5.209778 -0.000000 -0.286729
v 11.468163 0.000000 0.034380
v 5.209778 0.000000 3.538448
v 5.209778 0.000000 0.921080
v 5.209778 0.000000 4.641364
v -11.356500 -0.000001 -11.768676
v -11.356500 0.000000 1.959310
v -11.522879 0.000000 1.639923
v -11.356500 -0.000000 -4.497604
v -11.522879 -0.000000 -4.178310
v -1.695189 -0.000000 -0.516239
v 4.928789 -0.000000 -0.516239
v 4.928789 -0.000000 -2.003563
v -1.695189 -0.000000 -2.003563
v -13.142808 -0.000000 -2.614596
v -13.142808 0.000000 0.076209
v -2.479054 0.000001 12.607601
v -4.197836 0.000001 12.607601
v -0.000951 0.000001 12.349248
v -6.487949 0.000001 12.352005
v -1.727151 0.000001 12.583817
v -4.799030 0.000001 12.582272
v -7.221593 0.000001 12.174327
v 0.753008 0.000001 12.165005
v -6.959890 0.000001 7.615463
v -11.356500 0.000001 7.615463
v -0.000951 0.000001 7.615463
v -6.487949 0.000001 7.615463
v 4.928789 0.000001 7.615463
v 0.458513 0.000001 7.615463
v -4.197836 0.000001 7.615463
v -2.479054 0.000001 7.615463
v -9.934581 0.000000 1.959310
v -9.934581 0.000000 1.639923
v -9.934581 -0.000000 -4.497604
v -9.934581 -0.000000 -4.178310
v 3.482409 0.000000 1.639923
v 1.987983 0.000000 1.959310
v 1.987983 -0.000000 -4.497604
v 3.482409 -0.000000 -4.178310
v 1.987983 -0.000000 -4.178310
v 3.482409 0.000000 1.959310
v 3.482409 -0.000000 -4.497604
v 1.987983 0.000000 1.639923
v -11.693382 -0.000001 -9.468655
v -11.693382 0.000000 1.959310
v -4.961135 -0.000000 -2.614596
v -11.693382 -0.000000 -4.497604
v -4.961135 0.000000 0.076209
v -11.693382 0.000000 5.530122
v 0.031970 -0.000000 -4.178310
v -4.799030 0.000000 0.236704
v -4.197837 0.000000 0.236704
v -2.479054 0.000000 0.236704
v -1.727151 0.000000 0.236704
v -13.142808 -0.000000 -0.516240
v -13.142808 -0.000000 -2.003563
v -4.561967 -0.000000 -2.676960
v -4.197836 -0.000000 -2.676960
v -2.479054 -0.000000 -2.676960
v -1.891271 -0.000000 -2.676960
v -10.952084 0.000000 1.639923
v -10.952084 -0.000000 -4.178310
v -10.950237 -0.000000 -4.497604
v -10.952084 0.000000 1.959310
v -0.000950 -0.000001 -12.588175
v -6.487949 -0.000001 -12.588175
v -1.677614 -0.000001 -14.280035
v -4.801496 -0.000001 -14.280035
v -2.479054 -0.000000 -0.516239
v -4.197837 -0.000000 -0.516239
v -4.197837 -0.000000 -2.003563
v -2.479054 -0.000000 -2.003563
v -6.487949 0.000000 6.127061
v 0.458513 0.000000 6.127061
v -6.959890 0.000000 6.127060
v -0.000951 0.000000 6.127060
v -6.487949 0.000000 3.538448
v -6.959890 0.000000 3.538448
v 0.458513 0.000000 3.538448
v -0.000951 0.000000 3.538448
v 4.928789 0.000000 3.538448
v -11.356500 0.000000 3.538448
v 4.928789 0.000000 4.641364
v -11.356500 0.000000 4.641364
v 5.209778 -0.000000 -2.003563
v 5.209778 -0.000000 -0.516239
v 5.209778 -0.000001 -7.522186
v 5.209778 -0.000000 -6.182686
v 6.406253 -0.000000 -0.286729
v 7.699028 -0.000000 -0.286729
v 0.458513 -0.000001 -7.522186
v -6.487949 -0.000001 -7.522186
v -0.000950 -0.000001 -7.522186
v -11.693382 -0.000001 -7.522186
v -11.356500 -0.000001 -7.522186
v 4.928789 -0.000001 -7.522186
v -6.959890 -0.000001 -7.522186
v 0.458513 -0.000000 -6.182686
v 4.928789 -0.000000 -6.182686
v -6.487949 -0.000000 -6.182686
v -0.000950 -0.000000 -6.182686
v -6.959890 -0.000000 -6.182686
v -11.693382 -0.000000 -6.182686
v -11.356500 -0.000000 -6.182686
v -13.394125 -0.000000 -4.497604
v -11.693382 0.000000 4.695820
v -11.693382 0.000000 3.505549
v -16.679245 0.000000 1.959310
v -12.984167 0.000000 1.959310
v -18.741804 -0.000000 -2.003563
v -18.741804 -0.000000 -0.516240
v -21.941124 0.000000 1.577724
v -21.941124 -0.000000 -5.434333
v -12.758956 -0.000000 -2.985128
v -12.758956 0.000000 0.446740
v -11.844486 -0.000000 -3.867863
v -11.844486 0.000000 1.329476
v -12.032170 0.000000 1.959310
v -12.032170 0.000000 1.670803
v -13.474504 -0.000000 -0.516240
v -13.474504 -0.000000 -2.003563
v -16.687757 -0.000000 -0.516240
v -16.687757 -0.000000 -2.003563
v -13.474504 -0.000000 -2.572726
v -16.687757 -0.000000 -2.572726
v -13.474504 0.000000 0.081743
v -16.687757 0.000000 0.081743
v -17.029930 -0.000000 -0.516240
v -18.182152 -0.000000 -0.516240
v -13.212752 0.000000 0.391281
v -12.984167 0.000000 0.668785
v -17.029930 0.000000 0.391281
v -16.679245 0.000000 1.677333
v -12.984167 0.000000 1.677333
v -12.163081 -0.000000 -4.154991
v -12.163081 -0.000000 -4.497604
v -13.382598 -0.000000 -2.985128
v -18.741804 -0.000000 -5.434333
v -18.741804 0.000000 1.577724
v 4.928789 0.000000 0.921202
v 4.928789 0.000000 0.034380
v -2.479054 0.000001 8.584578
v -4.197836 0.000001 8.584578
v -7.221593 0.000001 8.584578
v 0.753008 0.000001 8.584578
l 9 123
l 120 129
l 20 120
l 2 20
l 32 123
l 38 128
l 38 3
l 13 138
l 1 13
l 153 159
l 159 160
l 77 127
l 9 34
l 35 36
l 28 34
l 31 37
l 28 31
l 37 116
l 35 114
l 36 173
l 21 174
l 16 134
l 49 50
l 49 53
l 52 54
l 50 54
l 51 53
l 176 177
l 55 177
l 52 55
l 106 108
l 78 140
l 78 151
l 99 101
l 92 93
l 90 91
l 14 90
l 16 93
l 99 125
l 25 75
l 25 132
l 44 174
l 60 106
l 18 79
l 30 79
l 26 45
l 26 72
l 17 71
l 17 131
l 15 67
l 15 135
l 72 75
l 71 73
l 19 46
l 19 83
l 59 64
l 59 109
l 30 104
l 40 94
l 47 147
l 47 89
l 10 66
l 8 70
l 8 112
l 124 126
l 83 73
l 69 74
l 70 76
l 84 85
l 11 43
l 7 87
l 5 84
l 86 87
l 29 103
l 48 88
l 48 148
l 29 81
l 10 81
l 18 68
l 43 102
l 46 105
l 91 104
l 92 105
l 86 102
l 85 103
l 42 95
l 41 137
l 41 96
l 95 96
l 67 68
l 39 97
l 39 115
l 94 97
l 65 66
l 107 109
l 112 113
l 62 107
l 62 61
l 60 63
l 23 114
l 23 74
l 5 110
l 6 111
l 6 65
l 58 117
l 7 113
l 61 116
l 110 111
l 98 126
l 98 100
l 100 101
l 32 2
l 44 119
l 45 118
l 118 121
l 33 119
l 33 122
l 21 122
l 22 129
l 3 130
l 4 124
l 57 58
l 57 108
l 4 22
l 163 165
l 127 128
l 136 137
l 125 130
l 133 135
l 14 133
l 131 134
l 121 132
l 82 139
l 141 142
l 115 140
l 117 139
l 144 162
l 146 171
l 143 171
l 154 157
l 157 158
l 156 158
l 42 149
l 40 150
l 150 152
l 148 164
l 27 82
l 142 167
l 151 152
l 88 153
l 89 154
l 155 161
l 143 156
l 163 164
l 166 167
l 161 165
l 141 166
l 27 162
l 80 136
l 80 169
l 1 77
l 168 169
l 149 168
l 147 170
l 138 170
l 145 146
l 145 172
l 144 172
l 155 160
l 12 11
l 12 76
l 24 69
l 24 173
l 63 176
l 64 175
l 51 56
l 56 178
l 175 178

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -1,2 +0,0 @@
# Blender 4.2.1 LTS MTL File: 'hauntedMansionCollision.blend'
# www.blender.org

View File

@ -1,360 +0,0 @@
# Blender 4.2.1 LTS
# www.blender.org
mtllib hauntedMansionCollision.mtl
o house-coll-display
v 9.468655 18.171686 -0.000001
v 9.468655 -11.468163 -0.000001
v 11.768676 6.959891 -0.000001
v 11.768676 -0.458513 -0.000001
v -1.959310 6.487949 0.000000
v -1.959310 6.959890 0.000000
v -1.959310 0.000950 0.000000
v -1.959310 -0.458513 0.000000
v -0.034380 -7.700261 0.000000
v -1.639923 6.684578 0.000000
v 0.260841 1.695189 -0.000000
v -1.639923 -0.395491 0.000000
v 4.497604 18.171686 -0.000000
v 4.497604 6.487949 -0.000000
v 4.497604 6.959890 -0.000000
v 4.497604 0.000950 -0.000000
v 4.497604 -0.458513 -0.000000
v 4.178310 6.684578 -0.000000
v 2.417353 1.695189 -0.000000
v 9.468655 -5.209778 -0.000001
v -0.034380 -6.403114 0.000000
v 11.768676 -4.928789 -0.000001
v -1.959310 -4.928789 0.000000
v -1.639923 -4.928789 0.000000
v 4.497604 -4.928789 -0.000000
v 4.178310 -4.928789 -0.000000
v -5.530122 18.171686 0.000000
v -5.530122 -11.468163 0.000000
v 0.516239 4.961135 -0.000000
v 2.003563 4.961135 -0.000000
v -5.530122 -5.209778 0.000000
v 0.286729 -11.468163 -0.000000
v 0.286729 -5.209778 -0.000000
v -0.034380 -11.468163 0.000000
v -3.538448 -5.209778 0.000000
v -0.921080 -5.209778 0.000000
v -4.641364 -5.209778 0.000000
v 11.768676 11.356500 -0.000001
v -1.959310 11.356500 0.000000
v -1.639923 11.522879 0.000000
v 4.497604 11.356500 -0.000000
v 4.178310 11.522879 -0.000000
v 0.516239 1.695189 -0.000000
v 0.516239 -4.928789 -0.000000
v 2.003563 -4.928789 -0.000000
v 2.003563 1.695189 -0.000000
v 2.614596 13.142808 -0.000000
v -0.076209 13.142808 0.000000
v -12.607601 2.479054 0.000001
v -12.607601 4.197836 0.000001
v -12.349248 0.000951 0.000001
v -12.352005 6.487949 0.000001
v -12.583817 1.727151 0.000001
v -12.582272 4.799030 0.000001
v -12.174327 7.221593 0.000001
v -12.165005 -0.753008 0.000001
v -7.615463 6.959890 0.000001
v -7.615463 11.356500 0.000001
v -7.615463 0.000951 0.000001
v -7.615463 6.487949 0.000001
v -7.615463 -4.928789 0.000001
v -7.615463 -0.458513 0.000001
v -7.615463 4.197836 0.000001
v -7.615463 2.479054 0.000001
v -1.959310 9.934581 0.000000
v -1.639923 9.934581 0.000000
v 4.497604 9.934581 -0.000000
v 4.178310 9.934581 -0.000000
v -1.639923 -3.482409 0.000000
v -1.959310 -1.987983 0.000000
v 4.497604 -1.987983 -0.000000
v 4.178310 -3.482409 -0.000000
v 4.178310 -1.987983 -0.000000
v -1.959310 -3.482409 0.000000
v 4.497604 -3.482409 -0.000000
v -1.639923 -1.987983 0.000000
v 9.468655 11.693382 -0.000001
v -1.959310 11.693382 0.000000
v 2.614596 4.961135 -0.000000
v 4.497604 11.693382 -0.000000
v -0.076209 4.961135 0.000000
v -5.530122 11.693382 0.000000
v 4.178310 -0.031970 -0.000000
v -0.236704 4.799030 0.000000
v -0.236704 4.197837 0.000000
v -0.236704 2.479054 0.000000
v -0.236704 1.727151 0.000000
v 0.516240 13.142808 -0.000000
v 2.003563 13.142808 -0.000000
v 2.676960 4.561967 -0.000000
v 2.676960 4.197836 -0.000000
v 2.676960 2.479054 -0.000000
v 2.676960 1.891271 -0.000000
v -1.639923 10.952084 0.000000
v 4.178310 10.952084 -0.000000
v 4.497604 10.950237 -0.000000
v -1.959310 10.952084 0.000000
v 12.588175 0.000950 -0.000001
v 12.588175 6.487949 -0.000001
v 14.280035 1.677614 -0.000001
v 14.280035 4.801496 -0.000001
v 0.516239 2.479054 -0.000000
v 0.516239 4.197837 -0.000000
v 2.003563 4.197837 -0.000000
v 2.003563 2.479054 -0.000000
v -6.127061 6.487949 0.000000
v -6.127061 -0.458513 0.000000
v -6.127060 6.959890 0.000000
v -6.127060 0.000951 0.000000
v -3.538448 6.487949 0.000000
v -3.538448 6.959890 0.000000
v -3.538448 -0.458513 0.000000
v -3.538448 0.000951 0.000000
v -3.538448 -4.928789 0.000000
v -3.538448 11.356500 0.000000
v -4.641364 -4.928789 0.000000
v -4.641364 11.356500 0.000000
v 2.003563 -5.209778 -0.000000
v 0.516239 -5.209778 -0.000000
v 7.522186 -5.209778 -0.000001
v 6.182686 -5.209778 -0.000000
v 0.286729 -6.406253 -0.000000
v 0.286729 -7.699028 -0.000000
v 7.522186 -0.458513 -0.000001
v 7.522186 6.487949 -0.000001
v 7.522186 0.000950 -0.000001
v 7.522186 11.693382 -0.000001
v 7.522186 11.356500 -0.000001
v 7.522186 -4.928789 -0.000001
v 7.522186 6.959890 -0.000001
v 6.182686 -0.458513 -0.000000
v 6.182686 -4.928789 -0.000000
v 6.182686 6.487949 -0.000000
v 6.182686 0.000950 -0.000000
v 6.182686 6.959890 -0.000000
v 6.182686 11.693382 -0.000000
v 6.182686 11.356500 -0.000000
v 4.497604 13.394125 -0.000000
v -4.695820 11.693382 0.000000
v -3.505549 11.693382 0.000000
v -1.959310 16.679245 0.000000
v -1.959310 12.984167 0.000000
v 2.003563 18.741804 -0.000000
v 0.516240 18.741804 -0.000000
v -1.577724 21.941124 0.000000
v 5.434333 21.941124 -0.000000
v 2.985128 12.758956 -0.000000
v -0.446740 12.758956 0.000000
v 3.867863 11.844486 -0.000000
v -1.329476 11.844486 0.000000
v -1.959310 12.032170 0.000000
v -1.670803 12.032170 0.000000
v 0.516240 13.474504 -0.000000
v 2.003563 13.474504 -0.000000
v 0.516240 16.687757 -0.000000
v 2.003563 16.687757 -0.000000
v 2.572726 13.474504 -0.000000
v 2.572726 16.687757 -0.000000
v -0.081743 13.474504 0.000000
v -0.081743 16.687757 0.000000
v 0.516240 17.029930 -0.000000
v 0.516240 18.182152 -0.000000
v -0.391281 13.212752 0.000000
v -0.668785 12.984167 0.000000
v -0.391281 17.029930 0.000000
v -1.677333 16.679245 0.000000
v -1.677333 12.984167 0.000000
v 4.154991 12.163081 -0.000000
v 4.497604 12.163081 -0.000000
v 2.985128 13.382598 -0.000000
v 5.434333 18.741804 -0.000000
v -1.577724 18.741804 0.000000
v -0.921202 -4.928789 0.000000
v -0.034380 -4.928789 0.000000
v -8.584578 2.479054 0.000001
v -8.584578 4.197836 0.000001
v -8.584578 7.221593 0.000001
v -8.584578 -0.753008 0.000001
l 9 123
l 120 129
l 20 120
l 2 20
l 32 123
l 38 128
l 38 3
l 13 138
l 1 13
l 153 159
l 159 160
l 77 127
l 9 34
l 35 36
l 28 34
l 31 37
l 28 31
l 37 116
l 35 114
l 36 173
l 21 174
l 16 134
l 49 50
l 49 53
l 52 54
l 50 54
l 51 53
l 176 177
l 55 177
l 52 55
l 106 108
l 78 140
l 78 151
l 99 101
l 92 93
l 90 91
l 14 90
l 16 93
l 99 125
l 25 75
l 25 132
l 44 174
l 60 106
l 18 79
l 30 79
l 26 45
l 26 72
l 17 71
l 17 131
l 15 67
l 15 135
l 72 75
l 71 73
l 19 46
l 19 83
l 59 64
l 59 109
l 30 104
l 40 94
l 47 147
l 47 89
l 10 66
l 8 70
l 8 112
l 124 126
l 83 73
l 69 74
l 70 76
l 84 85
l 11 43
l 7 87
l 5 84
l 86 87
l 29 103
l 48 88
l 48 148
l 29 81
l 10 81
l 18 68
l 43 102
l 46 105
l 91 104
l 92 105
l 86 102
l 85 103
l 42 95
l 41 137
l 41 96
l 95 96
l 67 68
l 39 97
l 39 115
l 94 97
l 65 66
l 107 109
l 112 113
l 62 107
l 62 61
l 60 63
l 23 114
l 23 74
l 5 110
l 6 111
l 6 65
l 58 117
l 7 113
l 61 116
l 110 111
l 98 126
l 98 100
l 100 101
l 32 2
l 44 119
l 45 118
l 118 121
l 33 119
l 33 122
l 21 122
l 22 129
l 3 130
l 4 124
l 57 58
l 57 108
l 4 22
l 163 165
l 127 128
l 136 137
l 125 130
l 133 135
l 14 133
l 131 134
l 121 132
l 82 139
l 141 142
l 115 140
l 117 139
l 144 162
l 146 171
l 143 171
l 154 157
l 157 158
l 156 158
l 42 149
l 40 150
l 150 152
l 148 164
l 27 82
l 142 167
l 151 152
l 88 153
l 89 154
l 155 161
l 143 156
l 163 164
l 166 167
l 161 165
l 141 166
l 27 162
l 80 136
l 80 169
l 1 77
l 168 169
l 149 168
l 147 170
l 138 170
l 145 146
l 145 172
l 144 172
l 155 160
l 12 11
l 12 76
l 24 69
l 24 173
l 63 176
l 64 175
l 51 56
l 56 178
l 175 178

View File

@ -1,12 +0,0 @@
#pragma once
#include <stdint.h>
#include "model/material.h"
enum material {
female_Body_Torso
};
const struct material_descriptor female_material[] = {
};

32121
model/haunted_mansion/model.h Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,2 @@
# Blender 4.2.1 LTS MTL File: 'hauntedMansion.blend'
# www.blender.org

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -43,12 +43,10 @@ using vec4 = vec<4, float>;
using mat4x4 = mat<4, 4, float>; using mat4x4 = mat<4, 4, float>;
#include "model/model.h" #include "model/model.h"
#include "model/haunted_mansion/material.h" #include "model/cone/model.h"
#include "model/haunted_mansion/model_female.h" #include "model/cube/model.h"
#include "model/haunted_mansion/model_mansion.h" #include "model/haunted_mansion/model.h"
#include "model/haunted_mansion/model_cone.h" #include "model/haunted_mansion/collision.h"
#include "model/haunted_mansion/model_cube.h"
#include "model/haunted_mansion/model_collision.h"
#define _fsrra(n) (1.0f / (__builtin_sqrtf(n))) #define _fsrra(n) (1.0f / (__builtin_sqrtf(n)))
@ -780,7 +778,7 @@ bool line_has_collision(vec3 a1, vec3 a2, const mat4x4& model_trans, const mat4x
mat4x4 trans = screen * model_trans; mat4x4 trans = screen * model_trans;
const struct model * model = &haunted_mansion_collision_model; const struct model * model = &haunted_mansion_collision_model;
const struct object * object = &haunted_mansion_collision_house_coll_display; const struct object * object = model->object[0];
for (int i = 0; i < object->line_count; i++) { for (int i = 0; i < object->line_count; i++) {
@ -812,7 +810,7 @@ void render_collision(ta_parameter_writer& writer, const mat4x4& model_trans, co
const uint32_t base_color = 0xffffffff; const uint32_t base_color = 0xffffffff;
const struct model * model = &haunted_mansion_collision_model; const struct model * model = &haunted_mansion_collision_model;
const struct object * object = &haunted_mansion_collision_house_coll_display; const struct object * object = model->object[0];
int line_count = object->line_count; int line_count = object->line_count;
for (int i = 0; i < line_count; i++) { for (int i = 0; i < line_count; i++) {
@ -823,13 +821,13 @@ void render_collision(ta_parameter_writer& writer, const mat4x4& model_trans, co
vec3 b = trans * model->position[line->b]; vec3 b = trans * model->position[line->b];
render_line(writer, render_line(writer,
screen_transform((vec3){a.x, a.z, 4.f}), screen_transform((vec3){a.x, -a.z, 4.f}),
screen_transform((vec3){b.x, b.z, 4.f}), screen_transform((vec3){b.x, -b.z, 4.f}),
collided[i] ? 0xffff0000 : base_color); collided[i] ? 0xffff0000 : base_color);
} }
vec3 a = {last_dx * -4, last_dy * -4, 4}; vec3 a = {last_dx * -4, -last_dy * -4, 4};
vec3 b = {last_dx * 0.5f, last_dy * 0.5f, 4}; vec3 b = {last_dx * 0.5f, -last_dy * 0.5f, 4};
//if (a.z > 0) { //if (a.z > 0) {
render_line(writer, render_line(writer,
screen_transform(a), screen_transform(a),
@ -846,7 +844,7 @@ void transfer_scene(ta_parameter_writer& writer, const mat4x4& mansion_model_tra
texture_memory_alloc.texture.start, texture_memory_alloc.texture.start,
para_control::list_type::opaque, para_control::list_type::opaque,
isp_tsp_instruction_word::culling_mode::no_culling); isp_tsp_instruction_word::culling_mode::no_culling);
render_model(writer, mansion_model_trans, screen, &mansion_model); render_model(writer, mansion_model_trans, screen, &haunted_mansion_model);
global_polygon_type_0(writer); global_polygon_type_0(writer);
render_collision(writer, mansion_model_trans, screen); render_collision(writer, mansion_model_trans, screen);
@ -1031,8 +1029,6 @@ void main()
{ {
serial::init(0); serial::init(0);
serial::integer<uint32_t>((sizeof (female_position)) / (sizeof (female_position[0])));
interrupt_init(); interrupt_init();
constexpr uint32_t ta_alloc = 0 constexpr uint32_t ta_alloc = 0